package com.tiangang;
import com.tiangang.dao.MyBatisManager;
import com.tiangang.dao.mapper.UserMapper;
import com.tiangang.dao.po.User;
import org.apache.ibatis.session.SqlSession;
import org.junit.Test;
import java.util.List;
/**
* Mybatis由浅入深 - 02 增删改查CRUD:原文链接:https://blog.csdn.net/scm_2008/article/details/126574504
* @author 天罡gg
*/
public class UserMapperTest02 {
@Test
public void insertTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行insert
User user = new User();
user.setName("天罡666");
user.setAge(28);
int rows = mapper.insert(user);
System.out.println("受影响行数:" + rows);
System.out.println("新插入User:" + user);
sqlSession.commit();
} catch (Exception e) {
e.printStackTrace();
sqlSession.rollback();
} finally {
sqlSession.close();
}
}
@Test
public void updateByIdTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行update
User user = new User();
user.setId(2L);
user.setName("天罡666");
user.setAge(38);
int rows = mapper.updateById(user);
System.out.println("受影响行数:" + rows);
System.out.println("修改后的User:" + user);
sqlSession.commit();
} catch (Exception e) {
e.printStackTrace();
sqlSession.rollback();
} finally {
sqlSession.close();
}
}
@Test
public void deleteByIdTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行delete
int rows = mapper.deleteById(2L);
System.out.println("受影响行数:" + rows);
sqlSession.commit();
} catch (Exception e) {
e.printStackTrace();
sqlSession.rollback();
} finally {
sqlSession.close();
}
}
@Test
public void selectByIdTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行select
User user = mapper.selectById(1);
System.out.println(user);
} catch (Exception e) {
e.printStackTrace();
} finally {
sqlSession.close();
}
}
@Test
public void selectListByNameTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行select
List<User> userList = mapper.selectListByName("天罡");
System.out.println(userList);
} catch (Exception e) {
e.printStackTrace();
} finally {
sqlSession.close();
}
}
@Test
public void selectListByNameAgeTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行select
List<User> userList = mapper.selectListByNameAge("天罡", 1);
System.out.println(userList);
} catch (Exception e) {
e.printStackTrace();
} finally {
sqlSession.close();
}
}
@Test
public void selectByAnyOneColumnTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行select
List<User> userList = mapper.selectByAnyOneColumn("name", "=", "天罡666");
System.out.println(userList);
} catch (Exception e) {
e.printStackTrace();
} finally {
sqlSession.close();
}
}
@Test
public void selectAllTest() {
// 1. 打开SqlSession
SqlSession sqlSession = MyBatisManager.openSession();
try {
// 2. 得到UserMapper
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
// 3. 执行select
List<User> userList = mapper.selectAll("age");
System.out.println(userList);
} catch (Exception e) {
e.printStackTrace();
} finally {
sqlSession.close();
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
博文地址:https://blog.csdn.net/scm_2008/article/details/126765963 这是Mybatis由浅入深的第3节源码。 动态SQL是Mybatis的亮点功能之一,解决了根据不同条件拼接SQL的繁琐痛苦问题,避免了java代码和sql混在一起,是非常常用的功能,也是本人非常喜欢的功能,点赞! 通过本源码您将掌握xml映射文件的常用元素: 1. if 2. choose (when, otherwise) 3. trim(where, set) 4. foreach
资源详情
资源评论
资源推荐
收起资源包目录
tiangang-mybatis-03.zip (28个子文件)
tiangang-mybatis-03
pom.xml 1KB
target
test-classes
com
tiangang
UserMapperTest02.class 5KB
UserMapperTest02Better.class 6KB
UserDynamicSqlMapper03.class 4KB
generated-test-sources
test-annotations
classes
mybatis-config.xml 961B
com
tiangang
dao
po
User.class 1KB
MyBatisManager.class 2KB
mapper
UserDynamicSqlMapper.xml 2KB
UserDynamicSqlMapper.class 935B
UserMapper.class 1001B
UserMapper.xml 2KB
MybatisApplication.class 2KB
generated-sources
annotations
src
test
java
com
tiangang
UserMapperTest02Better.java 4KB
UserMapperTest02.java 5KB
UserDynamicSqlMapper03.java 3KB
main
resources
mybatis-config.xml 961B
com
tiangang
dao
mapper
UserDynamicSqlMapper.xml 2KB
UserMapper.xml 2KB
java
com
tiangang
dao
po
User.java 736B
MyBatisManager.java 2KB
mapper
UserDynamicSqlMapper.java 913B
UserMapper.java 980B
MybatisApplication.java 1KB
.idea
misc.xml 541B
jarRepositories.xml 2KB
compiler.xml 748B
workspace.xml 15KB
.gitignore 50B
共 28 条
- 1
天罡gg
- 粉丝: 5w+
- 资源: 20
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0