Mybatis Start

Mybatis Start

今天感受了一下mybatis感觉还是挺麻烦的,有两个配置文件,一个配置连接信息,一个是语句信息,目前知道插入是直接调用ID,接下来展示一下两个配置文件

连接配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/jack"/>
<property name="username" value="root"/>
<property name="password" value="casio233."/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper.xml"/>
</mappers>
</configuration>

语句配置

1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jack">
<select id="userselect" resultType="User">
select * from users
</select>
<insert id="jack2">
insert into users values("boy", "34534543")
</insert>
</mapper>

然后是编写java程序调用sqlsession

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
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.FileInputStream;
import java.io.FileNotFoundException;

public class mybatis {
public static void main(String[] args) throws FileNotFoundException {


SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();

FileInputStream fileInputStream = new FileInputStream("src/main/resources/mybatis-config.xml");

//SqlSessionFactoryBuilder创建SqlSessionFactory,将配置文件传上去
SqlSessionFactory build = sqlSessionFactoryBuilder.build(fileInputStream);

//SqlSessionfactory创建SqlSession
SqlSession sqlSession = build.openSession();

//insert方法可以直接用ID
int jack2 = sqlSession.insert("jack2");
System.out.println(jack2);

//mybatis不会自动提交事务,因此解决了事务这个问题
sqlSession.commit();



}
}


Mybatis Start
http://example.com/2024/04/08/Mybatis Start/
作者
Jack Asher
发布于
2024年4月8日
许可协议