MyBatis配置文件

  1. 基本步骤
  2. 注意事项
  3. 编写User.class文件
  4. 编写userMapper.xml配置文件
  5. 编写测试类 UserTest.class

基本步骤

第一步:编写核心配置文件mybatisConfig.xml文件
第二步:编写实体类User.class
第三步:编写Mapper配置文件userMappaer.xml文件
第四步:编写测试类userTest.class

注意事项

  1. (.xml文件)配置文件里尽量不要编写汉字注释,极有可能报错
  2. maven尽量配置自己的maven,自带的可能会发生某些错误
  3. 核心配置文件中的usermapper.xml文件文件路径一定要写对,否者会报查找不到文件错误
  4. 实体类User.class类中的属性名一定要和数据表中的字段名一致
  5. 实体类中不要忘记编写toSting()方法,否者程序运行成功后打印出来得是地址而不是数据值
  6. 事务代码块编写完毕后要提交事务,否则程序运行成功但实际数据表中的数据不受实际操作影响

##.编写mybatis核心配置文件
https://mybatis.org/mybatis-3/zh/getting-started.html

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"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper.xml配置文件路径‘/0’"/>
</mappers>
</configuration>
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"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="mysql">
<environment id="mysql">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true&amp;useUnicode=true&amp;characterEncoding=utf-8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/guolu/dao/userMapper.xml"/>
</mappers>
</configuration>

编写User.class文件

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
package com.guolu;

public class User {
int id;
String name;
String pwd;

public int getId() {
return id;
}

public String getName() {
return name;
}

public String getPwd() {
return pwd;
}

public void setId(int id) {
this.id = id;
}

public void setName(String name) {
this.name = name;
}

public void setPwd(String pwd) {
this.pwd = pwd;
}

public String toString(){
return ("User="+"{"
+ "id="+id+"\t"
+"name="+name+"\t"
+"pwd="+pwd+"\t"
+"}");
}
}

编写userMapper.xml配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="userMapper">
<select id="selectTable" resultType="com.guolu.User">
select *from user
</select>
<insert id="insertTable" parameterType="com.guolu.User">
insert into user values(#{id},#{name},#{pwd})
</insert>
<delete id="deleteTable" parameterType="com.guolu.User" >
delete from user where id=#{id}
</delete>
</mapper>

编写测试类 UserTest.class

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
package com.guolu.model;
import com.guolu.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class SelectTest {

public static void main(String[] args) {

try {
InputStream resourceAsStream = Resources.getResourceAsStream("mybatisConfig.xml");
//获得sqlSession工厂对象
SqlSessionFactory sqlSessionFactory = new
SqlSessionFactoryBuilder().build(resourceAsStream);
//获得sqlSession对象
SqlSession sqlSession = sqlSessionFactory.openSession();
//执行sql语句
List<User> userList = sqlSession.selectList("userMapper.selectTable");
//打印结果
for (User users : userList) {
System.out.println(users);
}
//提交事务
sqlSession.commit()
//释放资源
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 jaytp@qq.com

×

喜欢就点赞,疼爱就打赏