- 博客(11)
- 收藏
- 关注
原创 Hibernate缓存
Hibernate的Session提供了一级缓存的功能,默认总是有效的,当应用程序保存持久化实体、修改持久化实体时,Session并不会立即把这种改变提交到数据库,而是缓存在当前的Session中,除非显示调用了Session的flush()方法或通过close()方法关闭Session。通过一级缓存,可以减少程序与数据库的交互,从而提高数据库访问性能。SessionFactory级别的二级缓存...
2019-01-04 10:18:04
158
原创 Spring中Bean的作用域有哪些?
singleton:单例模式,在整个Spring IoC容器中,使用singleton定义的Bean将只有一个实例prototype:原型模式,每次通过容器的getBean方法获取prototype定义的Bean时,都将产生一个新的Bean实例request:对于每次HTTP请求,使用request定义的Bean都将产生一个新实例,即每次HTTP请求将会产生不同的Bean实例。只有在Web应用...
2018-12-29 13:57:48
1234
1
原创 Spring-mvc执行流程
用户向服务器发送请求,请求被SpringMVC 前端控制器DispatcherServlet捕获;DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI,调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChain对象的形式返...
2018-12-22 18:10:57
171
原创 JSP 的运行生命周期
第一步:请求进入Web容器,如果第一次访问jsp页面,JSP Parser将JSP页面翻译成Servlet代码;如果不是第一次访问执行第四步。第二步:编译Servlet代码,并将编译过的类文件装入Web容器(JVM)环境第三步:Web容器为JSP页面创建一个Servlet类实例,并执行jspInit方法第四步:Web容器为该JSP页面调用Servlet实例的_jspService方...
2018-11-29 12:54:01
194
原创 Servlet 的运行生命周期
Servlet 生命周期分为三个阶段:1:初始化阶段,调用 init()方法2:响应客户请求阶段,调用 service()方法3:终止阶段,调用 destory()方法Web 服务器加载 Servlet:Web 服务器启动后,它会根据每个工程的 web.xml 文件去查找该工程的 Servlet,并且找到这些 Servlet 的 Class 文件所在的地址,将它们载入到 Web 容器中...
2018-11-28 13:00:31
306
原创 JSP 的九种内置对象及作用
JSP 中一共预先定义了 9 个这样的对象,分别为: request、response、session、application、out、pagecontext、config、page、exception1、request 对象 request 对象是 javax.servlet.httpServletRequest 类型的对象。 该对象代表了客户端的请求信息,主要用于 接受通过 HTTP 协议传...
2018-11-27 13:04:38
345
原创 集合
TreeMap和TreeSet在排序时如何比较元素?Collections工具类中的sort()方法如何比较元素?TreeSet要求存放的对象所属的类必须实现Comparable接口,该接口提供了比较元素的compareTo()方法,当插入元素时会回调该方法比较元素的大小。TreeMap要求存放的键值对映射的键必须实现Comparable接口从而根据键对元素进行排序。Collections工具类...
2018-11-24 13:29:40
157
原创 Hibernate
Hibernate如何实现分页查询?通过Hibernate实现分页查询,开发人员只需要提供HQL语句(调用Session的createQuery()方法)或查询条件(调用Session的createCriteria()方法)、设置查询起始行数(调用Query或Criteria接口的setFirstResult()方法)和最大查询行数(调用Query或Criteria接口的setMaxResult...
2018-11-23 15:57:52
229
原创 Hibernate优缺
Hibernate的优/缺点:优点:1、更加对象化以对象化的思维操作数据库,我们只需要操作对象就可以了,开发更加对象化。2、移植性因为Hibernate做了持久层的封装,你就不知道数据库,你写的所有的代码都具有可复用性。3、Hibernate是一个没有侵入性的框架,没有侵入性的框架我们称为轻量级框架。对比Struts的Action和ActionForm,都需要继承,离不开Struts...
2018-11-22 13:01:15
181
原创 悲观锁与乐观
悲观锁(Pessimistic Lock): 每次获取数据的时候,都会担心数据被修改,所以每次获取数据的时候都会进行加锁,确保在自己使用的过程中数据不会被别人修改,使用完成后进行数据解锁。由于数据进行加锁,期间对该数据进行读写的其他线程都会进行等待。乐观锁(Optimistic Lock): 每次获取数据的时候,都不会担心数据被修改,所以每次获取数据的时候都不会进行加锁,但是在更新数据的时候需要...
2018-11-21 10:09:35
127
原创 ioc
spring会把对象控制权交给容器,容器创建了一个又一个的对象,通过DI呢,又确定了各个对象之间的关系。但是你们会不会好奇,spring是怎么把容器里的对象给到我们的呢?今天我们就来聊一聊spring的应用上下文。1、容器在spring里面是如何存在的? spring的容器,我们一般称之为ioc容器,其实就是项目中的一个xml配置文件,通过配置这个xml,我们来控制各个对象之间的关系。 ...
2018-08-01 17:37:29
123
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅