软件的三层架构
-
web项目开发的三层架构
mvc:web开发中,使用mvc架构模式。
- c控制层:接收请求,调用service对象,显示请求的的处理结果。当前使用service作为控制器。
- v试图层:现在使用jsp,html,css,js。显示请求的处理结果,把m中的数据显示出来。
- m数据层:来自数据库mysql,来自文件,来自网络
mvc的作用:
- 实现解耦合
- 让mvc各负其责
- 使系统的扩展性更好
-
非web项目开发的三层架构
- 界面层(视图层):接收用户的请求,调用service,显示请求的处理结果。包含jsp,html,servlet等对象。对应的包controller
- 业务逻辑层:处理业务逻辑,使用算法处理数据的。把数据返回给界面层。对应的是service包和包中很多的xxxService类。例如:StudentService,OrderService,ShopService
- 持久层(数据库访问层):访问数据库或读取文件,访问网络。对应的包是dao。dao包中很多StudentDao,OrderDao,ShopDao等等。
三层之间的关系:
用户: 界面层<=>业务逻辑层<=>数据库访问层<===>数据库
为什么要使用三层?
- 结构清晰,耦合度低,分工明确
- 维护性高,扩展性高
- 有利于标准化
- 可以使开发人员只关注整个结构中的其中某一层的功能实现
- 有利于各层逻辑的复用
三层架构模式和框架
每一层对应一个框架
- 界面层—>SpringMvc框架
- 业务层—>Spring框架
- 持久层—>MyBatis框架
框架
-
什么是框架?
就是一个软件,完成了部分的功能。软件中的类和类之间的方法调用都已经固定好了。通过这些可以完成某些功能。框架看作是模版。
-
框架解决的问题
- 框架的实现技术的整合
- 提高开发的效率,降低难度。
jdbc访问数据库的优缺点
- 优点
- 直观,好理解
- 缺点
- 创建很多对象Connection,Statement,ResultSet
- 注册驱动
- 执行sql语句
- 把ResultSet转化为Student,List集合
- 关闭资源
- sql语句和业务逻辑代码混在一起
MyBatis框架
-
什么是MyBatis?
是一个持久层框架,原名ibatis,2013年改名MyBatis,MyBatis可以操作数据库,对数据库执行增删改查操作。看作是高级的jdbc。解决jdbc的缺点。
-
MyBatis能做什么?
- 注册驱动
- 创建jdbc中的使用的Connection,Statement,ResultSet
- 执行sql语句,得到ResultSet
- 处理ResultSet,把记录集中的数据转位java对象,同时把java对象放入到List集合中
- 关闭资源
- 实现sql语句和java代码的解耦合
官网:https://mybatis.org/mybatis-3/