JavaBean & MVC & 三层架构【JAVAEE基础】

- JavaBean(Java类)

定义:(满足以下两点)
1.public修饰的类,含有public无参构造函数
2.所有属性都是private,并提供set/get。

作用:
1.减轻jsp的复杂度
2.提高代码的复用度

使用层面分为两大类:
1.封装业务逻辑的JavaBean(登录逻辑 LoginDao.java 等) 可以将jsp中的JDBC代码,封装起来。
2.封装数据的JavaBean(实体类,Student.java Person.java) 对应于数据库中的一张表。

- BeanUtils 工具类,简化数据封装
  • 用于封装JavaBean的

  • 属性的概念 setter和getter方法截取之后的产物
    例如:getUsername()—>Username->username

  • 方法:
    1.setProperty(Object,属性名,value)
    2.getProperty(Object,属性名)
    3.populate(Object,Map) 将map集合的键值对信息,封装到对应的JavaBean对象中

- 通过MVC设计模式了解JavaBean

M: Model 模型 (负责各个功能) javaBean
V: View 视图 (负责页面的显示,以及与用户的交互) html/css/js/jsp
C: Controller 控制器 (接受请求,将请求跳转到模型进行处理,模型处理完毕后,再将处理的结果返回给请求处) Servlet/jsp

JavaBean & MVC & 三层架构【JAVAEE基础】

- 三层架构

JavaBean & MVC & 三层架构【JAVAEE基础】

与MVC设计模式的目标一致:都是为了解耦合、提高代码复用;
区别,二者对项目的理解的角度不同。
1.三层组成
表示层(USL):视图层

  • 前台:对应于MVC中的View,用于和用户交互、界面的显示(html/css/js/jsp)

  • 后台:对应于MVC中的Controller,用于控制跳转、调用业务逻辑层(Servlet/SpringMVC/Struts2 位于servlet包)

  • 业务逻辑层(BLL):service层

  • 组装数据访问层,逻辑性的操作(增删改查 位于service包) eg:删:查+删

  • 数据访问层(DAL):dao层

  • 直接访问数据库的操作,原子性的操作(增删改查 位于dao包)

2.三层间的关系

  • 上层将请求传递给下层,下层处理后返回给上层。
  • 上层依赖于下层(上层持有下层成员变量,有上层的前提必须有下层)

3.三层优化

  • 加入接口
    建议面向接口开发:先接口-再实现类

  • service、dao加入接口

  • 接口与实现类的 命名规范
    接口:interface IXxxService、IXxxDao

    实现类:implements XxxServiceImpl、 XxxDaoImpl

    使用接口/实现类时。推荐写法
    接口 x=new 实现类();

    • DBUtil 通用的数据库帮助类,可以简化Dao层的代码量
    • BeanUtils