mybatis的配置文件sqlMapperConfig.xml, 当加载了这个配置文件之后, 我们就可以很方便的去获取数据库的数据, 很方便的做持久层的工作
mybatis的官网地址: http://www.mybatis.org/mybatis-3/
1. 导包
导入使用mybatis必要的jar包
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.32</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.6</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
2. 在数据库中做user表用于测试, 并且在项目中写好表实体bean
package com.itdong.domain;
public class User {
private int id;
private String name;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}
3. 对表的实体Bean写映射文件
在resources下, 创建存放对应映射文件的路径
例如: com.itdong.mapper
<?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="findAll" resultType="com.itdong.domain.User">
select * from tb_user
</select>
</mapper>
注意:
这是映射文件的约束头
<?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属性, 也就是对这个mapper进行命名操作
使用时就是, namespace+id锁定对应的配置好的sql语句
4. 编写核心配置文件
也即是mybatis的核心配置文件
放在resources下
也就是根目录下
<?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">
<!--这里是使用的jdbc的原生事务管理-->
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<!--加载映射文件-->
<mappers>
<mapper resource="com/itdong/mapper/UserMapper.xml"></mapper>
</mappers>
</configuration>
注意
这里是核心配置文件的约束头
<?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标签中, 就是我们做mybatis配置的地方
这一篇是入门, 所以简单使用原生JDBC配置作为数据源
以上就是入门mybatis的操作
下面做测试
5. 简单测试
import com.itdong.domain.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 org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class MyBatisTest {
@Test
public void test1() throws IOException {
//加载核心配置文件 Resources就是mybatis框架提供的, 注意是在org.apache.ibatis.io.Resources包下
InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapperConfig.xml"); //就在resources下, 直接写
//获取session工厂对象
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
//获取会话对象
SqlSession sqlSession = sqlSessionFactory.openSession();
//执行操作 参数就是, namespace+id
List<User> userList = sqlSession.selectList("userMapper.findAll");
//测试, 打印出来数据
System.out.println(userList);
//释放资源
sqlSession.close();
}
}
结果如下 :
[User{id=1, name='lisi', age=18}, User{id=2, name='wangwu', age=19}]
以上就是mybatis的简单入门了, mybatis更加详细的操作, 我们下篇继续.