java的MVC开发模式

思想很重要看作模板写java-web项目就看一下

 MVC:

M:model 模型(从数据库里面查出来的数据)

V:View (视图  代表 前端页面)

C:controller控制器

一个java项目必须有这些结构

页面  ----------------- >    前端页面

控制器 --------------->    cotroller   控制器作用仅限于跟前后台交互数据

业务逻辑层 ------------->   所有的业务逻辑都在业务逻辑层进行判断

数据访问层 ------------->  只有一个作用,接受一个来自业务逻辑层传来的请求参数(如用户名和密码),去构造sql语句  访问数据库,并将数据从数据库里面取出来,如果数据库里面有数据,则返回一个非空对象,没有对应数据返回一个空对象,数据访问层不做判断,将结果对象返回给业务逻辑层

数据库    ---------------->  

一次完整的前后端交互

从页面发请求到数据库的过程

页面  发送请求给(登录时发送username,password) ---->   控制器 (控制器作用仅限于跟前后台交互数据,所以控制器只接受来自前端页面的username和password参数,不做任何处理),

控制器把用户名和密码发送到    --------->  业务逻辑层(进行判断)  业务逻辑层把请求参数username和password送到数据访问层 ---------->  数据访问层(接受一个来自业务逻辑层传来的请求参数(如username和password),去访问数据库,使用sql语句查询(eg: select * from user where username=" " and password =" ";),将数据从数据库里面取出来  -------------> 数据库

从数据库返回数据到前端页面的过程

数据库( 查询结果返回一个对象 user,如果数据访问层查询的数据在数据库里面存在,返回一个非空对象,否则返回一个空对象,)  ----------->  数据访问层 (不对返回的对象进行任何处理,送对象user 到业务逻辑层进行判断) ----------->  业务逻辑层 (此时得到一个user对象,对user对象进行判断,如果非空 查询成功 可以登陆界面,如果为空 则查询失败 进行提示 不允许登录   思想:此时可以设一个变量a,如果user非空,a=true,否则 a=false) 把a传给控制器 ----------->控制器 (控制器不做任何处理,仅将数据a发给前端页面)---------->  前端界面   使用js和ajax对a的值进行判断,如果为true则执行登录,否则a=false,则报错提示。

这个思想很重要,只要思想框架有了,剩下的就是填代码。控制器,业务逻辑层,数据访问层(可以使用xml更简单),都是java类,本项目使用的是spring框架,由spring框架统一管理他们三个里面的所有对象

原文地址:https://www.cnblogs.com/nanfengnan/p/14141598.html