文章目录
Mybatis开发步骤
1.导入依赖和坐标
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok-maven-plugin -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok-maven-plugin</artifactId>
<version>1.18.12.0</version>
<scope>provided</scope>
</dependency>
2.编写mybatis-config.xml
<?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>
<properties resource="db.properties" ></properties>
<!--环境-->
<environments default="development">
<!--环境之一-->
<environment id="development">
<!--使用jdbc的事务管理-->
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<!--
useSSL=true :设置为安全连接
& :&符号在xml文件中需要转义,&相当于一个&符号
useUnicode=true :参照unicode表
characterEncoding=utf8 :使用utf-8编码
MySql8需要配置时区!
-->
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<!--每一个Mapper.xml都需要在Mybatis核心配置文件中注册-->
<mappers>
<mapper resource="com/stu/dao/UserDao.xml"/>
</mappers>
</configuration>
3.编写MybatisUtils
public class MybatisUtils {
private static SqlSessionFactory sqlSessionFactory = null;
static {
try {
String resource = "mybatis-config.xml";
InputStream resourceAsStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
} catch (IOException e) {
e.printStackTrace();
}
}
public static SqlSession getSqlSession() {
return sqlSessionFactory.openSession();
}
}
4.编写实体类,引入lombok
import lombok.Data;
@Data
public class User {
private int id;
private String name;
private String password;
}
5.编写dao层接口
public interface UserDao {
int addUser(User user);
int deleteUser(int id);
int updateUser(User user);
User findUserById(int id);
List<User> findAllUser();
}
6.编写mapper.xml
<select id="findAllUser" resultMap="UserMap">
select id,name,pwd from user;
</select>
<delete id="deleteUser" parameterType="int">
delete from user where id = #{id};
</delete>
7.编写测试
@Test
public void testFindAllUser() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserDao userDao = sqlSession.getMapper(UserDao.class);
List<User> allUser = userDao.findAllUser();
for (User user : allUser) {
System.out.println(user);
}
sqlSession.close();
}
@Test
public void testDeleteUser() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserDao userDao = sqlSession.getMapper(UserDao.class);
int i = userDao.deleteUser(2);
System.out.println(i);
sqlSession.close();
}
总结
该步骤仅为Mybatis开发的入门级步骤,能进行基本的增删改查,数据库采用引用properties的方式,虽然是基础,但是还是容易遗忘,需要熟练掌握。