下面为你详细讲解“IDEA版最新MyBatis程序配置教程详解”的完整攻略。
一、MyBatis概述
MyBatis是一款支持自定义SQL、存储过程以及高级映射的优秀持久化框架。如果你想更好地使用MyBatis,你需要了解MyBatis的运行原理及配置。
二、IDEA版最新MyBatis程序配置教程详解
2.1 创建Maven工程
首先,在IDEA中创建一个Maven工程,可以根据业务需求添加相关依赖。例如,如果你需要使用MySQL数据库,可以在pom.xml
文件中添加MySQL依赖,具体代码如下:
<dependencies>
<!-- 添加MySQL驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
</dependencies>
2.2 添加MyBatis依赖
在pom.xml
文件中添加MyBatis依赖,具体代码如下:
<dependencies>
<!-- 添加MySQL驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
<!-- 添加MyBatis依赖 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.7</version>
</dependency>
</dependencies>
2.3 创建MyBatis配置文件
在项目的resources文件夹中,创建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>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<!-- 添加Mapper映射文件 -->
<mapper resource="com/example/mapper/StudentMapper.xml"/>
</mappers>
</configuration>
其中需要注意的地方是,${jdbc.driver}
、${jdbc.url}
、${jdbc.username}
、${jdbc.password}
这几个属性需要在项目的application.properties
文件中定义。
例如:
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
jdbc.username=root
jdbc.password=root
2.4 创建Mapper映射文件
在项目的src/main/resources/com/example/mapper
文件夹中,创建对应的Mapper映射文件StudentMapper.xml
,具体代码如下:
<?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="com.example.mapper.StudentMapper">
<select id="findAll" resultType="com.example.entity.Student">
SELECT * FROM student
</select>
<select id="findById" resultType="com.example.entity.Student">
SELECT * FROM student WHERE id = #{id}
</select>
<insert id="insert" parameterType="com.example.entity.Student">
INSERT INTO student(name, age) VALUES(#{name}, #{age})
</insert>
<update id="update" parameterType="com.example.entity.Student">
UPDATE student SET name = #{name}, age = #{age} WHERE id = #{id}
</update>
<delete id="delete" parameterType="int">
DELETE FROM student WHERE id = #{id}
</delete>
</mapper>
2.5 创建实体类
在项目中创建对应的实体类Student.java
,具体代码如下:
public class Student {
private int id;
private String name;
private int age;
// 完整的getter/setter方法
}
2.6 创建DAO层接口
在项目中创建对应的DAO层接口StudentDao.java
,具体代码如下:
public interface StudentDao {
List<Student> findAll();
Student findById(int id);
int insert(Student student);
int update(Student student);
int delete(int id);
}
2.7 创建DAO层实现类
在项目中创建对应的DAO层实现类StudentDaoImpl.java
,具体代码如下:
public class StudentDaoImpl implements StudentDao {
private SqlSession sqlSession;
// 必须有一个构造方法
public StudentDaoImpl(SqlSession sqlSession) {
this.sqlSession = sqlSession;
}
@Override
public List<Student> findAll() {
return sqlSession.selectList("findAll");
}
@Override
public Student findById(int id) {
return sqlSession.selectOne("findById", id);
}
@Override
public int insert(Student student) {
return sqlSession.insert("insert", student);
}
@Override
public int update(Student student) {
return sqlSession.update("update", student);
}
@Override
public int delete(int id) {
return sqlSession.delete("delete", id);
}
}
其中需要注意的地方是,SqlSession
对象需要从SqlSessionFactory
中获取,具体代码如下:
SqlSession sqlSession = sqlSessionFactory.openSession();
StudentDao studentDao = new StudentDaoImpl(sqlSession);
2.8 测试整个项目
在Java测试文件中,进行测试操作,具体代码如下:
@Test
public void findAll() {
SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
try (SqlSession sqlSession = sqlSessionFactory.openSession()) {
StudentDao studentDao = new StudentDaoImpl(sqlSession);
List<Student> students = studentDao.findAll();
for (Student student : students) {
System.out.println(student.toString());
}
}
}
三、示例
下面给出两个示例:
示例1
假设你需要对学生信息进行增、删、改、查等操作,那么你需要完成如下步骤:
- 在MySQL中创建表格
- 在
pom.xml
文件中添加MySQL依赖和MyBatis依赖 - 创建MyBatis配置文件
- 创建Mapper映射文件
- 创建实体类
- 创建DAO层接口
- 创建DAO实现类
- 测试整个项目
示例2
假设你需要对用户信息进行增、删、改、查等操作,但是你使用的是Oracle数据库,那么你需要完成如下步骤:
- 在Oracle中创建表格
- 在
pom.xml
文件中添加Oracle依赖和MyBatis依赖 - 创建MyBatis配置文件
- 创建Mapper映射文件
- 创建实体类
- 创建DAO层接口
- 创建DAO实现类
- 测试整个项目
四、总结
以上就是“IDEA版最新MyBatis程序配置教程详解”的完整攻略。如果你遇到了一些问题或者需要了解更多相关信息,可以查看MyBatis官方文档或者访问MyBatis官方论坛。希望对你有所帮助!
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:IDEA版最新MyBatis程序配置教程详解 - Python技术站