1、首先添加Maven依赖和MySql依赖
部分片段:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.3.0</version>
</dependency>
2、创建MyBatis的配置文件,并在XML中配置Mybatis的核心功能
2.1 XML配置文件中包含了对MyBatis系统的核心配置、包含获取数据库连接实例的数据源(DataSource)和决定事务范围和控制方式的事务管理器(TransactionManager)
-
2.2 在项目的根目录或人意目录下创建一个名为 “mybatis-config.xml” 的文件,文件名可以改变,并引用相关DTD
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYDE configuration
PUBLIC "-//mybatis.org/DTD config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="properies文件的路径"></properties>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" ></transactionManager>
<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>
</configuration> - 2.3 说明:
<property>
标签用于引用properties文件,与数据库连接等的信息可写在properties文件中
3、创建实体类User
-
User.java
public class User {
private int id;
private String userName;
private String password;
private String nickName;
private int type;
......
......
......
}
4、创建User实体类的mapper映射xml文件:用于添加SQL语句的配置
-
4.1. user.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org/DTD Mapper 3.0//EN
"http://mybatis.org/dtd/mybaties-3-mapper.dtd" >
<mapper namespace="model.User" >
<insert id="add" paramterType="model.User" >
insert into t_user(username, nickname, password, type)
value(#{username}, #{nickname}, #{password}, #{type})
</insert>
<select id="select" paramterType="int" resultType="model.User" >
SELECT * FROM t_user WHERE id=#{id}
</select>
</mapper> namespace : 命名空间,通常使用完全限定类名”model.User”,使用命名空间,可以允许你使用完全限定类名”model.User”来调用映射语句
- paramType : 参数类型
5、将user.xml文件的添加到mybatis的配置文件中:
<mappers>
<mapper resource="user.xml" />
</mappers>
6、在代码中使用MyBatis进行执行SQL等数据库的操作:
-
创建Test测试类:
public class Test {
@Test
public void testInsert() {
//mybatis的配置文件的路径,由于使用了Maven,便把mybatis-config.xml放在了src/main/resources中,所以不用加上路径
String resource = "mybatis-config.xml";
try {
//获得配置文件的输入流
InputStream is = Resources.getResourceAsStream(resource);
//从XML配置文件中构建SqlSessionFactory的实例,
//每个基于 MyBatis的应用都是以SqlSessionFactory实例为中心的,该实例可以通过SqlSessionFactoryBuilder获得,
//而SqlSessionFactoryBuilder则可以从XML配置文件或
//一个预定制的Configutation的实例构建出SqlSessionFactory实例
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
SqlSession sqlSession = sessionFactory.openSession();
User user = new User();
user.setUserName("....");
user.setNickName("....");
user.setPassword(".....");
user.setType(...);
sqlSession.insert("model.User.add", user);
sqlSession.commit();
sqlSession.Close();
} catch (Exception e){
........
}
}
@Test
public void testSelect() {
String resource = "mybatis-config.xml";
try {
InputStream is = Resources.getResourceAsStream(resource);
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().builder(is);
SqlSession session = sessionFactory.openSession();
User user = session.selectOne("model.User.select", 1);
System.out.println(user.toStirng());
} catch (Exception e) {
.....
}
}
}
7、