读取和解析配置文件
读取和解析映射信息,创建 sessionFactory
创建交易交易
耐力操作
提交事务
关闭会话
关闭会话工厂
为什么使用:
对JDBC访问数据库的代码进行了封装,大大简化了数据访问层繁琐重复的代码。
是基于jdbc的主流持久化框架,优秀的ORM实现,大大简化了DAO层的编码
使用 Java 反射机制而不是字节码增强器的透明度
它是一个轻量级框架,具有出色的映射灵活性,支持各种关系数据库,从一对一到多对多的复杂关系
hibernate2 延迟加载实现:实体对象 B. 收藏
hibernate3 提供属性的延迟加载
hibernate在查询数据时,内存中不存在数据。当程序实际对数据进行操作时,对象存在于内存中,实现了延迟加载,节省了服务器的内存开销,提高了服务器的性能。
类之间的关系主要体现在表与表之间的关系上。它们都对对象进行操作。在我们的程序中,所有表和类都映射在一起。他们在配置文件中传递多对。-一个,一对多,多对多
内存缓存存在于hibernate中,也叫一级缓存,属于应用事务级缓存
二级缓存:a) 应用和缓存 b) 分布式缓存 c) 第三方缓存的实现
工作流程:Web 应用程序启动时,会加载并初始化 ActionServlet。ActionServlet 从 struts-config.xml 文件中读取配置信息并将它们存储在各种配置对象中。
当 ActionServlet 接收到客户端请求时,会执行如下流程:
检索与用户请求匹配的 ActionMapping 实例。如果不存在,则返回请求路径无效信息;
如果ActionForm实例不存在,则创建一个ActionForm对象,并将客户提交的表单数据保存在ActionForm对象中;
根据配置信息判断是否需要表单验证。如果需要验证,调用ActionForm的validate()方法;
如果ActionForm的validate方法返回null或者返回一个不包含ActionMessage的ActionErrors对象,则表示表单验证成功;
ActionServlet 根据 ActionMapping 中包含的映射信息决定将请求转发到哪个 Action。如果对应的Action实例不存在,会先创建这个实例,然后调用Action的execute方法;
Action的execute方法返回一个ActionForward对象,ActionServlet将客户端请求转发给ActionForward对象指向的JSP组件;
ActionForward对象指向JSP组件生成动态网页返回给客户端;
为什么使用struts:
JSP、Servlet、JavaBean技术的出现,为我们构建强大的企业应用系统提供了可能。但是用这些技术构建的系统是非常复杂的,所以在这之上,我们需要一个规则,一个规则来组织这些技术,这就是框架,Struts就应运而生了
基于Struts开发的应用程序由三种组件组成:控制器组件、模型组件和视图组件
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习