Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
package transaction;
import com.Config.AppConfig1;
import com.Domain.Context;
import com.Domain.User;
import com.Mapper.UserMapper;
import com.Service.UserService;
import com.StartUp;
import org.apache.ibatis.session.ExecutorType;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.TransactionIsolationLevel;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.List;
/**
* Created by hcj on 18-7-16
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {StartUp.class})
public class MybatisTest {
private static final AnnotationConfigApplicationContext context =
new AnnotationConfigApplicationContext(AppConfig1.class);
@Autowired
UserService userService;
/**
* 1. 自定义TypeHandler类
*
* @param
* @return void
* @author houchunjian
* @date 2019/12/1 0001 14:01
*/
@Test
public void test() {
List<User> user = userService.findUser();
System.out.println(user);
}
/**
* 1. Mybatis 批量插入数据库代码
*
* @param
* @return void
* @author houchunjian
* @date 2019/12/1 0001 14:01
*/
@Test
public void insertOptimistic() {
SqlSessionFactory sqlSessionFactory = context
.getBean("sqlSessionFactory", SqlSessionFactory.class);
// sqlSession 开启事务。 ExecutorType.REUSE 保证batch 事务的合理使用,
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, TransactionIsolationLevel.READ_COMMITTED);
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
for (int i = 10; i < 20; i++) {
User user = new User();
user.setUsername("pop" + i);
user.setPassword(i + "");
user.setEnabled(true);
if (i % 2 == 0) {
Context build = Context.builder().username("hcj").password("123")
.context("hello world").enabled(true).build();
build.setContext("hello world: " + i);
user.setContext(build);
} else {
Context build = Context.builder().username("hcj").password("123")
.context("hello world").enabled(true).build();
build.setContext("world: " + i);
user.setContext(build);
}
mapper.insert(user);
}
// 刷新
sqlSession.flushStatements();
}
}