获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession
获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession...获取 sqlSession 数据库连接会话 MyBatisUtil myBatisUtil = new MyBatisUtil(); SqlSession sqlSession = myBatisUtil.getSqlSession
Integer id); } 2.2 测试 2.2.1 测试查询所有 findAll() @Test public void test16(){ SqlSession sqlSession = MyBatisUtil.getSqlSession...users = mapper.findAll(); for (User user : users) { System.out.println(user); } MyBatisUtil.commitAndClose...image-20210406082307312 2.2.3 测试 新增用户 save() @Test public void test18(){ SqlSession sqlSession = MyBatisUtil.getSqlSession...user = new User(); user.setUsername("李大四"); user.setSex("男"); mapper.save(user); MyBatisUtil.commitAndClose...49); // 设置修改的用户ID user.setUsername("张大三"); user.setSex("男"); mapper.update(user); MyBatisUtil.commitAndClose
package me.gacl.test; 2 3 import java.util.List; 4 import me.gacl.domain.User; 5 import me.gacl.util.MyBatisUtil...(false); 14 SqlSession sqlSession = MyBatisUtil.getSqlSession(true); 15 /** 16...; 31 } 32 33 @Test 34 public void testUpdate(){ 35 SqlSession sqlSession = MyBatisUtil.getSqlSession...java.util.List; 4 import me.gacl.domain.User; 5 import me.gacl.mapping.UserMapperI; 6 import me.gacl.util.MyBatisUtil...SqlSession 74 sqlSession.close(); 75 System.out.println(lstUsers); 76 } 77 } 用到的MyBatisUtil
org.apache.ibatis.session.SqlSessionFactoryBuilder; /** * 工具类 * @author AdminTC */ public class MybatisUtil...throw new RuntimeException(e); } } /** * 禁止外界通过new方法创建 */ private MybatisUtil.../** * 测试 */ public static void main(String[] args) { Connection conn = MybatisUtil.getSqlSession...public void add(Student student) throws Exception { //得到连接对象 SqlSession sqlSession = MybatisUtil.getSqlSession...public void add(Student student) throws Exception { //得到连接对象 SqlSession sqlSession = MybatisUtil.getSqlSession
-- --> MybatisUtil.java import...= null) { sqlSession.close(); MybatisUtil.tol.remove(); } } public static void commit() {...final SqlSession session = MybatisUtil.openSession(); session.commit(); MybatisUtil.close(); }...(); if (session == null) { // 创建sqlSession session = MybatisUtil.sqlSessionFactory.openSession...() { final SqlSession session = MybatisUtil.openSession(); session.rollback(); MybatisUtil.close
java.util.List; import org.apache.ibatis.session.SqlSession; import me.gacl.domain.User; import me.gacl.util.MyBatisUtil...; public class TestCRUDByXmlMapper { public static void testAdd() { SqlSession sqlSession=MyBatisUtil.getSqlSession...(); System.out.println(retResult); } public static void testUpdate() { SqlSession sqlSession=MyBatisUtil.getSqlSession...(); System.out.println(retResult); } public static void testDelete() { SqlSession sqlSession=MyBatisUtil.getSqlSession...(); System.out.println(retResult); } public static void testGetAll() { SqlSession sqlSession=MyBatisUtil.getSqlSession
id); } TestMybatis测试类: @Test public void findAllById() throws IOException { SqlSession session = MybatisUtil.openSession...session.getMapper(UserMapper.class); User user = mapper.findAllById(11); System.out.println(user); } 注意这里的MybatisUtil...类是单独的把session对象提取出来了 MybatisUtil类: public class MybatisUtil { public static SqlSession openSession...在测试类中测试一级缓存 不清除session @Test public void findAllById() throws IOException { SqlSession session = MybatisUtil.openSession...=1000.0} 强制清除掉session @Test public void findAllById() throws IOException { SqlSession session = MybatisUtil.openSession
/** * mybatis的一级缓存 */ @Test public void testSelectBlogCacheOne1() { SqlSession session = MyBatisUtil.getSqlSession...* mybatis的一级缓存,中间有增删改会刷新 */ @Test public void testSelectBlogCacheOne2() { SqlSession session = MyBatisUtil.getSqlSession...** * mybatis的二级缓存 */ @Test public void testSelectBlogCacheLevelTwo1() { SqlSession session1 = MyBatisUtil.getSqlSession...** * mybatis的二级缓存 */ @Test public void testSelectBlogCacheLevelTwo1() { SqlSession session1 = MyBatisUtil.getSqlSession...); session1.close(); // Cache Hit Ratio [mapper.BlogMapper]: 0.5 SqlSession session2 = MyBatisUtil.getSqlSession
中查询方式有3种 //查询单个值 @Test public void testFindOne()throws IOException{ SqlSession session = MybatisUtil.getSqlSession...//查询list @Test public void testFindAll() throws IOException{ SqlSession session = MybatisUtil.getSqlSession...//查询map @Test public void testFindMap()throws IOException{ SqlSession session = MybatisUtil.getSqlSession...语句进行分页,参数传入的是对象 @Test public void testPage() throws IOException{ SqlSession session = MybatisUtil.getSqlSession...RowBounds来实现分页 @Test public void testPage2() throws IOException{ SqlSession session = MybatisUtil.getSqlSession
/r.cha(); //r.upd(); //r.chain(); r.choose(); } public void cha(){ SqlSession session = MyBatisUtil.create...(session); } public void choose(){ SqlSession session = MyBatisUtil.create(); UserMapper um =... 示例demo //根据编号查部门及 部门员工; public void cha(){ SqlSession session = MyBatisUtil.create();...useCache="true/false" 开启/关闭; //即使是SqlSession 关闭对于查过的数据也会保存起来 SqlSession sessionr = MyBatisUtil.create...(sessionr); //关闭SqlSession //上面关闭了,才用二级缓存;所以不在需要Sql 数据库操作; SqlSession sessionr1 = MyBatisUtil.create
package com.bit.mapper; import com.bit.pojo.User; import com.bit.util.MybatisUtil; import org.apache.ibatis.session.SqlSession...public class UserMapperTest { @Test public void selectAll(){ SqlSession sqlSession = MybatisUtil.getSqlSession...sqlSession.close(); } @Test public void insertUser(){ SqlSession sqlSession = MybatisUtil.getSqlSession...@Test public void updateUser(){ // 先拿到sqlSession对象 SqlSession sqlSession = MybatisUtil.getSqlSession...map); 2.在测试方法里面自定义map的键值对 @Test public void insertUser2(){ SqlSession sqlSession = MybatisUtil.getSqlSession
(); UserMapper um = session.getMapper(UserMapper.class); User u = um.login(name, pwd); MyBatisUtil.closeSqlSession...@Param("id")int id); 运行类 Run.Java //根据编号查部门及 部门员工; public void bmcha(){ SqlSession session = MyBatisUtil.createSqlSession...所以在 MyBatisUtil 类中 SqlSessionFactory.openSession(false); // 参数false表是开启事务控制,不传参数表示默认为true(为自动提交事务) 如果是...catch (Exception e) { e.printStackTrace(); session.rollback(); //出现异常,事务回滚; }finally{ MyBatisUtil.closeSqlSession..."失败"); } } catch (Exception e) { e.printStackTrace(); session.rollback(); }finally{ MyBatisUtil.closeSqlSession
@Test public void testFind() throws IOException{ SqlSession session = MybatisUtil.getSqlSession...readOnly="true"/> 代码 @Test public void testFind() throws IOException{ SqlSession session = MybatisUtil.getSqlSession...session.close(); System.out.println("==========================="); session = MybatisUtil.getSqlSession
MyBatisUtil.java public finalclass MybatisUtil { private MybatisUtil(){} private static final String...SqlSession sqlSession = null; @Override public User load(Integer user_id ) { try{ sqlSession = MybatisUtil.getSqlSession...e.printStackTrace(); throw new RuntimeException("查询失败"+e.getMessage()); }finally{ MybatisUtil.closeSqlSession...sqlSession); } } @Override public User login(Map map ) { try{ sqlSession = MybatisUtil.getSqlSession...(sqlSession); } } @Override public User loginByUser(User user ) { try{ sqlSession = MybatisUtil.getSqlSession
1.1、Mybatis一级缓存测试 1 package me.gacl.test; 2 3 import me.gacl.domain.User; 4 import me.gacl.util.MyBatisUtil...级的缓存(默认开启) 16 */ 17 @Test 18 public void testCache1() { 19 SqlSession session = MyBatisUtil.getSqlSession...必须是同一个Session,如果session对象已经close()过了就不可能用了 32 */ 33 session = MyBatisUtil.getSqlSession...cache/> 2、测试二级缓存 1 package me.gacl.test; 2 3 import me.gacl.domain.User; 4 import me.gacl.util.MyBatisUtil...String statement = "me.gacl.mapping.userMapper.getUser"; 22 SqlSessionFactory factory = MyBatisUtil.getSqlSessionFactory
同一个sqlsession (同一用户) SqlSession session = MyBatisUtil.getSqlSession(); //2....41的用户以及拥有的订单 User user2 = mapper.findUserByIdWithOrders(41); System.out.println(user); MyBatisUtil.commitAndClose...同一个sqlsession (同一用户) SqlSession session = MyBatisUtil.getSqlSession(); //2....模拟第一个用户查询 SqlSession session = MyBatisUtil.getSqlSession(); OrdersMapper mapper = session.getMapper...模拟第二个用户查询(不同的SqlSession) SqlSession session2 = MyBatisUtil.getSqlSession(); OrdersMapper
queryUserById(@Param("id") int id); 测试 @Test public void testQueryUserById() { SqlSession sqlSession = MybatisUtil.getSqlSession...@Test public void testQueryUserById() { SqlSession sqlSession1 = MybatisUtil.getSqlSession();...UserDao mapper1 = sqlSession1.getMapper(UserDao.class); SqlSession sqlSession2 = MybatisUtil.getSqlSession...当第二次查询进行时,就会重新执行 SQL 语句,导致缓存失效; @Test public void testQueryUserById() { SqlSession sqlSession = MybatisUtil.getSqlSession...@Test public void testQueryUserById1() { SqlSession sqlSession = MybatisUtil.getSqlSession();
领取专属 10元无门槛券
手把手带您无忧上云