1.三层架构
表现层 web层 (MVC是一个表现层的设计模型)
业务层 service层
持久层 dao层
2.三大框架和三层架构的关系
hibernate框架:他是一个持久层框架
struts2框架:他是一个表现层框架
spring框架:他是一个综合类的框架
明确:hibernate只能操作数据库 只能跟数据库打交道
3.我们已经掌握的持久层技术
JDBC:他是操作数据库最底层的方式、
优势:底层 效率高
弊端:编写代码时,比较的繁琐,尤其是封装结果集。
DBUtils:他是基于JDBC,对JDBC进行了简单的封装。
优势:封装结果集的操作变得简单,并且仍然是自己编写sql语句,相对效率并没有太大影响,
它用了池的思想管理连接。
弊端:要求实体类中属性名称和数据库表的字段名必须一致。
需要我们记得东西比较多。
他们的共同点:都要我们自己写sql语句。
4.使用JDBC和DBUtils操作产品表时遇到的问题:
JDBC的问题:
查询封装结果集时,写的太多。
DBUtils的问题:
保存或者更新时,给参数赋值写的太多。
5.建立实体类和表之间的关系:
使用配置文件:
配置文件的种类:
properties :只能以key:value的形式存在
xml:使用xml不仅可以以key:value的形式存在 也可以描述层级关系。
6.ORM
对象关系映射
就是建立实体类和数据库表的对应关系。
实现操作实体类对象就相当于操作数据库表。
7.hibernate
他是一个轻量级,企业级,开源的ORM持久层框架,是可以操作数据库的框架。
框架:就是一个架构。
通常情况下,软件工程的持久层解决方案,一个为主一个为辅,两者并存
轻量级:指的是使用是依赖的资源很少,目前我们使用的阶段只依赖log4j,c3p0连接池。
企业级:指的是在企业级应用中使用的比较多。
开源的:开放源代码。
操作数据库的时候,可以以面向对象的方式来完成.不需要书写SQL语句
ORM的操作方式:建立对象关系映射,实现操作实体类就相当于操作数据库表。
使用配置,将对象的信息与数据库中的表进行对应,完成操作,这种性质就称之为orm.
orm分四级:
hibernate属于4级,完全面向对象操作数据库。
mybatis属于2级。
dbutils属于1级。