Java知识点总结框架篇21-25

Java知识点总结框架篇21-25_第1张图片

二十一、hibernate缓存概述

hibernate分为一级缓存即session缓存也叫事务级别的缓存以及

二级缓存sessionFactory即应用级别的缓存,还有查询缓存即三级缓存.

一级缓存的生命周期和session的生命周期保持一致,

hibernate默认就启用了一级缓存,

不能将其关闭,可以通过session.clear()和session.evict(object)来管理一级缓存。其中get,load,iterate都会使用一级缓存,一级缓存缓存的是对象。

二级缓存的生命周期和sessionFactory的生命周期保持一致,可以跨session,被多个session共享,hibernate3默认开启二级缓存,也可以手动开启并指定缓存插件如ehcache,oscache

等。二级缓存也只能缓存对象。

三级缓存也叫查询缓存,查询缓存是针对普通属性结果集的缓存,

对实体对象的结果集只缓存id。对query.list()起作用,query.iterate不起作用,也就是query.iterate不使用查询缓存

二十二、SSH的概述:

ssh是web开发中常见的一种框架

s-struts

s-spring

h-hibernate

其中struts在框架中充当控制器,实现MVC,主要用来处理用户的请求,和跳转页面。使项目结构清晰,开发者只需要关注业务逻辑的实现即可。

spring在ssh充当粘合剂,粘合struts-sping-hibernate,主要用来进行事物的控制,

hibernate-充当数据库持久层,主要用它来与数据库交互,提高开发效率,减轻程序员sql控制要求,而且hibernate通过反射机制,有灵活的映射性,还支持各种关系,一对一,一对多,多对多。

在进行ssh整合的时候,我们应该注意:

1. Action继承于ActionSupport

引入struts-spring-plugin.jar包,从而完成struts和spring的整合

在struts2的action中注入service,保证service的名字和配置文件中的一致,并生成get,set方法

Dao层继承于hibernateDaoSupport

在dao层的配置文件中注入sessionFactory

二十三、防止表单重复提交

针对于重复提交的整体解决方案:

1.用redirect来解决重复提交的问题

2.点击一次之后,按钮失效

3.通过loading

4.自定义重复提交过滤器

5.解决struts2重复提交

可以结合s:token标签来解决重复提交问题

利用token的原理:

1.在前端的jsp页面中加入s:token标签,在访问该页面时就会生成

隐藏域,该隐藏域中包含一个随机生成的字符串,并把该字符串

存入session中

2.在struts2的配置文件中加入token拦截器后,当正常访问action

的时候,会从session中取出该字符串,然后和页面隐藏域中提交

字符串做对比,如果一致则正常执行并删除session中存储的字符串。

二十四、JSP标签:

1.JSP include动作

jsp:include 动作

以“ ” 结束

比如:

2.JSP指令:

以“ ” 结束。比如:

3.JSP输出表达式:

输出变量的值,后边不能加

4.JSP Scriptlet【脚本】:

例子:

5.JSP声明:

例子:

String getHello(String name) {

return "Hi," + name + "!";

}

6.迭代标签:

Jstl中的核心标签(core)

7.JSP注释:

8.el表达式:${}

9.jsp:include动作是在运行时动态包含。

@include指令是在编译时包含。

它们两个都只能包含本项目的相关文件,不能包含其他项目的。

如果要包含其他项目的文件可以使用c:import

二十五、过滤器

filter的概述:

filter是一个过滤器,用来在请求前和响应后进行数据的处理。

filter的生命周期是:

实例化--->初始化(init)-->进行过滤(doFilter)--->销毁(destroy)-->释放资源

一个Filter必须实现javax.servlet.Filter接口

在项目中我们通常通过filter进行编码转换,

进行安全验证,进行重复提交的判断。

了解(不需要主动说)

filter相当于 拦截器 相当于Spring AOP

servlet+jsp+javabean+jdbc+filter

encodingFilter

encode

utf-8

encodingFilter

*

你可能感兴趣的:(Java知识点总结框架篇21-25)