MyBatis学习笔记
基本入门
1.用maven创建项目,然后打开所创建项目的pom.xml配置文件,在节点中添加MyBatis依赖
<dependencies>
<!--导入MyBatisjar包-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<!--导入数据库驱动包-->
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.45</version>
</dependency>
</dependencies>
2. 建好的maven项目src/main/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="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test/"/>
<property name="username" value="root"/>
<property name="password" value="1234"/>
</dataSource>
</environment>
</environments>
<mappers>
<!--此处是指对应sql查询的映射xml文件,一般和接口放在一起命名规则一般为实体类(对象)名加mapper-->
<!--<mapper resource="org/mybatis/example/BlogMapper.xml"/>-->
</mappers>
</configuration>
3数据库中建立想要查询的表,并编写相应的javabean(此处省略)
4 javabean写好以后在src/main/java/下建一个DAO层文件夹,里面写上实体类接口和接口的实现,impl文件夹,在写好接口后,建一个与接口对应的sql语句映射文件,实体类mapper.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="org.test.dao.IStudentDao">
<insert id="addStudent" parameterType="org.test.domain.Student">
insert into student(stuName,stuSex) values(#{stuName},#{stuSex})
</insert>
编写好映射文件后,需要在mybatis-config.xml文件中注册,就是第一步中配置文件节点为mapper的代码,注册自己的sql映射(此处特别注意,文件目录结构要写成/,而不是.)
5.这时实现数据库dao的接口,具体代码如下:
public void addStudent(Student student) throws IOException {
//加载配置文件
InputStream is = Resources.getResourceAsStream("MyBatis-config.xml");
//创建SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
//获取Sqlsession对象
SqlSession session = sqlSessionFactory.openSession();
//执行sql语句
session.insert("addStudent",student);
//提交事务,此处注意,默认mybatis的事务是不会自己提交的,需要手动提交
session.commit();
//释放资源
if(session != null){
session.close();
}
}
6.准备工作完成,写一个测试类,测试自己刚刚所写的代码吧
用maven构建项目时可能会报找不到映射文件的错误,解决方案在pom.xml文件中,加入如下代码
<bulid>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/dao/*Mapper.xml</include>
</includes>
</resource>
</resources>
</build>
这只是一个简单的入门,一个简单的使用。
上一篇: mybatis源码学习-----property工具包
下一篇: 高斯消元学习笔记&模板&任务