对 Service中sqlsession对象的优化
在本线程中添加object数据,必须在本线程中才能获取出来。。其他线程获取不到。
public class Test {
public static void main(String[] args) {
final ThreadLocal<String> thread=new ThreadLocal<>();
thread.set("助兴"); new Thread(){
@Override
public void run() {
String temp=thread.get();
System.out.println("结果是:"+temp);
};
}.start(); 这样是获取不到结果的!!!!!
}
}
Filter过滤器和Servlet在一个线程中,并且在servlet前面执行,这就可以在Filter过滤器中添加数据,让Servlet使用。。
service中的sqlsessionFactory 实例化的过程是一个比较耗费性能的过程
public class mybtaisutil { 通过这种方式可以保证只有一个factory
private static SqlSessionFactory factory;
static{
try {
InputStream is = Resources.getResourceAsStream("mybatis.xml");
factory = new SqlSessionFactoryBuilder().build(is);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 获取sqlsession对象
*/
public static SqlSession getsession(){
SqlSession session = tl.get();
if(session==null){
tl.set(factory.openSession());
}
return tl.get();
}
关闭sqlsession对象
public static void closesession(){
SqlSession session = tl.get();
if(session!=null){
session.close();
}
tl.set(null);
}
}
对 Service中sqlsession对象的优化的更多相关文章
- 使用ThreadLocal管理Mybatis中SqlSession对象
转自http://blog.csdn.net/qq_29227939/article/details/52029065 public class MybatisUtil { private stati ...
- [转] C++中临时对象及返回值优化
http://www.cnblogs.com/xkfz007/articles/2506022.html 什么是临时对象? C++真正的临时对象是不可见的匿名对象,不会出现在你的源码中,但是程序在运行 ...
- 转:C++中临时对象及返回值优化
http://www.cnblogs.com/xkfz007/articles/2506022.html 什么是临时对象? C++真正的临时对象是不可见的匿名对象,不会出现在你的源码中,但是程序在运行 ...
- 【性能优化】面试官:Java中的对象都是在堆上分配的吗?
写在前面 从开始学习Java的时候,我们就接触了这样一种观点:Java中的对象是在堆上创建的,对象的引用是放在栈里的,那这个观点就真的是正确的吗?如果是正确的,那么,面试官为啥会问:"Jav ...
- Web Service 中返回DataSet结果大小改进
http://www.cnblogs.com/scottckt/archive/2012/11/10/2764496.html Web Service 中返回DataSet结果方法: 1)直接返回Da ...
- Web Service 中返回DataSet结果的几种方法
Web Service 中返回DataSet结果的几种方法: 1)直接返回DataSet对象 特点:通常组件化的处理机制,不加任何修饰及处理: 优点:代码精减.易于处理,小数据量处理较快: ...
- Windows Service中使用Threading.Timer需注意回收
在Windows Service中使用Threading.Timer时需要注意回收池问题 Threading.Timer是基于线程池的,系统会对其进行垃圾回收. 当Threading.Timer定义在 ...
- oracle中sql语句的优化
oracle中sql语句的优化 一.执行顺序及优化细则 1.表名顺序优化 (1) 基础表放下面,当两表进行关联时数据量少的表的表名放右边表或视图: Student_info (30000条数据)D ...
- (转)C++中返回对象的情形及RVO
http://www.cnblogs.com/xkfz007/archive/2012/07/21/2602110.html 之前有文章介绍过临时对象和返回值优化RVO方面的问题.见此处. 在C++中 ...
随机推荐
- pta l2-10(排座位)
题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805066135879680 题意:给宴席排座位,有n个人,m个 ...
- CentOS Find命令
find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进 ...
- HDU5532 Almost Sorted Array(最长上升子序列 or 瞎搞个做差的数组)
题目链接:点我 题意:给定一个序列,询问是否能删除一个数让它成为非递减或者非递增的序列. 比如说 删除后的序列是1 3 3 5 或者5 3 3 1 或者1 3 5 或者5 3 1 都可以.只要满足删掉 ...
- 100-days: Three
Title: Singapore(新加坡) set to raise retirement ages as seniors stay healthier be set to do sth. 准备做某 ...
- 微信小程序开发之获取用户手机号码——使用简单php接口demo进行加密数据解密
后边要做一个微信小程序,并要能获取用户微信绑定的手机号码.而小程序开发文档上边提供的获取手机号码的接口(getPhoneNumber())返回的是密文,需要服务器端进行解密,但是官方提供的开发文档一如 ...
- checkbox控制text是否可以填写和radio是否可选
代码: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" con ...
- jdk与eclipse位数不一致出现的问题
今天运行eclipse时出现了如下问题: 后来去网上查了一下,如果jdk版本的位数和eclipse安装版本所需要的版本位数不相同,就会出现如图所示的问题,导致eclipse打不开. 1.查询jdk版本 ...
- 自定义进度条渐变色View
package com.jianke.stepCounter.Activity; import android.annotation.SuppressLint; import android.cont ...
- Bootstrap(3) 表格与按钮
1.表格 基本格式,实现基本的表格样式 <table class="table"> <thead> <tr> <th>编号</ ...
- mysql怎么查看是否支持分区
mysql从5.1开始支持分区功能 查询命令如下: mysql> show plugins like '%partiotion%'; mysql> show variables like ...