04 2016 档案
摘要:MyBatis 缓存 MyBatis缓存分为一级缓存和二级缓存 一级缓存 MyBatis的一级缓存指的是在一个Session域内,session为关闭的时候执行的查询会根据SQL为key被缓存(跟mysql缓存一样,修改任何参数的值都会导致缓存失效) 1)单独使用MyBatis而不继承Spring,
阅读全文
摘要:1 查询缓存 1.1 什么是查询缓存 mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。 mybaits提供一级缓存,和二级缓存。 一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存
阅读全文
摘要:一、MyBatis缓存介绍 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持 2. 二级缓存与一级缓存其机制相同,默认也是采用 PerpetualCache,HashMap存储,不同在于其存储作用域为 Mapper(Namespace),并且可自定义存储源,如 Ehcac
阅读全文
摘要:JDK1.5中引入了强大的concurrent包,其中最常用的莫过了线程池的实现ThreadPoolExecutor,它给我们带来了极大的方便,但同时,对于该线程池不恰当的设置也可能使其效率并不能达到预期的效果,甚至仅相当于或低于单线程的效率。 ThreadPoolExecutor类可设置的参数主要
阅读全文
摘要:实现并启动线程有两种方法1、写一个类继承自Thread类,重写run方法。用start方法启动线程2、写一个类实现Runnable接口,实现run方法。用new Thread(Runnable target).start()方法来启动多线程原理:相当于玩游戏机,只有一个游戏机(cpu),可是有很多人
阅读全文
摘要:从Java5开始,Java提供了自己的线程池。每次只执行指定数量的线程,java.util.concurrent.ThreadPoolExecutor 就是这样的线程池。以下是我的学习过程。 首先是构造函数签名如下: [java] view plain copy print ? public Thr
阅读全文
摘要:一、定义 二、分类 三、多线程实现方式 1、继承Thread类 2、实现Runnable接口 3、带返回结果的多线程 四、New Thread() 的弊端 五、线程池 六、线程池的作用 七、为什么用线程池
阅读全文
摘要:Web Service 是一种可以接收Internet或Internet上其它的系统传递过来的请求,轻量级的独立的通讯技术。 方式:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。 转: http://blog.csdn.net/zhuizhuziwo/art
阅读全文
摘要:一、配置 二、SpringMVC常用注解 三、包含功能:1、自动匹配参数 2、自动装箱 四、使用@InitBinderl来处理Date类型的参数 五、文件上传配置 六、使用@RequestParam注解指定参数的name 七、RESTFul风格 八、异常处理 九、自定义拦截器 十、表单验证和国际化
阅读全文
摘要:Spring MVC Controller默认是单例模式的。 因为:1、单例不需要实例化new,性能好 2、不需要多例,具体原因主要看开发者怎么用了,如果你给controller中定义很多的属性,那么单例肯定会出现竞争访问了。 从此可见,单例是不安全的,会导致属性重复使用。 最佳实践: 1、不要在c
阅读全文

浙公网安备 33010602011771号