文章目录

一、JavaBean

JavaBean实践便是一个一般的Java类,为了标准开发,要求JavaBean具有如下标准:

① 具有一个公共的、无参的结构方法;

② 类的特点私有,且必须提供公共的setter和getter方法用于外部对特点赋值和获取特点值;

简而言之:JavaBean = 特点私有 + 公共的setter/getter方法 + 空参结构器

ORM编程思维(object relational mapping,目标联系映射)

① 一个数据表对应一个JavaBean

② 表中的一条记载对应JavaBean的一个目标

③ 表中的一个字段对应JavaBean的一个特点

(在规划实体类和数据库表时尽量做到ORM,即特点名和字段名对应,表名和实体类类名对应,可以方便对数据库表的操作)

实体类(Entity Class):便是Java中的ORM思维形成的映射,将数据库中的一个表映射成对应的一个Java类(便是JavaBean),首要职责是存储和办理系统内部的信息。

POJO(Plain Ordinary Java Object,一般Java目标):实践便是一般JavaBean,是为了防止和EJB混杂所创造的简称。

耐久化类:是指其实例需求被耐久化到数据库中的类。耐久化类符合JavaBean的标准,包含私有特点,以及与之对应的getter()和getter()方法。

耐久化(Persistence):把数据(如内存中的目标)保存到可永久保存的存储设备中。(如磁盘、数据库)

耐久化的首要应用是将内存中的目标存储在数据库中、磁盘文件或XML文件中等等。

在实践开发中,JavaBean、实体类、POJO、耐久类并没有本质的差异,但都必须满意JavaBean的标准。在触及Spring对Bean的办理时,称为JavaBean;在Spring JDBC Template中需求对数据库进行操作,称为实体类(Entity Class);在MyBatis等耐久化结构中触及多个目标之间的联系,称为POJO或耐久化类。

之所以有不同的称号,是因为需求处理的逻辑场合不同,类似在家里爸爸妈妈叫你奶名,在学校老师同学叫你全名,在银行办理事务时工作人员叫你女士/先生,但你还是你,有姓名、性别、身份证号等特点,这是你必须要满意的标准。

二、Java三层系统

Dao层经过操作实体类(Entity Class),然后操作数据库中的表,完成对应数据的CRUD操作。

1.Dao层

Dao全称Data Access Object(数据拜访目标)首要担任拜访数据库,对数据的CRUD,获取结果集回来给Service,不会触及事务。

2.Service层

Service层首要担任事务逻辑的完成,实践便是对Dao层的增修改查操作的进一步封装,触及到事务的操作。

如:获取数据库衔接,封闭数据库衔接,事务回滚或许一些复杂的逻辑事务处理

3.Controller层

Controller层首要用于对事务逻辑进行操控,操控用户输入,接收来自前端的恳求,将需求履行的操作交给Service层进行处理,再将处理后的结果回来给前端。

三者之间的联系

几乎一切的事务逻辑,实践上最终便是对数据库表的操作,Dao层面向数据库中的表,Service进行事务、事务逻辑的详细完成,Controller层对接收到的恳求进行操控,然后担任调用Service层进行事务逻辑完成,Service层将逻辑处理中需求对数据库表的操作交给Dao层进行数据操作,最终将处理结果逐层回来给前端,用户就可以看到最终的处理结果。

JavaBean、MVC设计模式与Java中Dao、Service、Controll三层体系

三、MVC规划形式

MVC是一种软件规划形式,将软件程序分为3个核心模块:模型(Model)、视图(View)、操控器(Controller)

模型(Model):办理数据库,用于数据的封装和传输,完成详细事务功用(事务处理、算法等)。

视图(View):担任与用户交互,从模型中获取数据经过网页向用户展示,将用户恳求传递给操控器进行处理。

3.操控器

操控器(Controller):接收用户恳求,对恳求进行处理和转发,用于事务流程操控,并向模型发送数据。

三者之间的联系

用户经过View操作软件,View将恳求传递给Controller,Model担任数据的办理,View担任与用户交互,Controller担任对用户的恳求进行呼应,同时,当数据更新时会传给View然后更新页面。

JavaBean、MVC设计模式与Java中Dao、Service、Controll三层体系

三层系统与MVC之间的联系

三层系统和MVC之间并不矛盾,三层系统是一种编程思维,目的是为了降低模块之间的耦合,更好的处理事务逻辑;MVC是一种软件规划形式,按照功用对软件进行的模块化的划分,目的是为了更好的完成软件开发。二者之间的联系如下:

JavaBean、MVC设计模式与Java中Dao、Service、Controll三层体系

关于MVC规划形式在Spring MVC结构中会进行详细的阐明,Spring后会说到该种结构。