Mybatis的使用
- 创建Javabean,创建dao当中的接口用来定义sql文件的返回值类型与参数类型
- 使用对应的配置文件,在resources目录下创建统计目录用/ x/x/分割
- 在resources目录下创建全局配置文件SqlMapConfig.xml
- 在对应的配置文件下编写 dao.xml namespace 命名空间指向dao的文职
- 利用标签选择对应的语句 返回值类形态与接口的方法一致
<?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>
<!--配置连接数据库的环境 default:指定使用哪一个环境-->
<environments default="a">
<environment id="development">
<!--配置事务,MyBatis事务用的是jdbc-->
<transactionManager type="JDBC"/>
<!--配置连接池, POOLED:使用连接池(mybatis内置的); UNPOOLED:不使用连接池-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis_day01?characterEncoding=utf-8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
<environment id="a">
<!--配置事务,MyBatis事务用的是jdbc-->
<transactionManager type="JDBC"/>
<!--配置连接池, POOLED:使用连接池(mybatis内置的); UNPOOLED:不使用连接池-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis_day01?characterEncoding=utf-8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<!--引入映射文件; resource属性: 映射文件的路径-->
<mapper resource="com/wei/dao/userDao.xml"/>
</mappers>
</configuration>```
mybatis的执行
- 将全局配置文件加载为一个输入流进行
2.使用工厂创建类进行工厂的创建
3.使用工厂创建会话对象
4.使用会话对象当中的getMapper(dao.class)创建执行对象
5.执行sql语句
7.得到返回的结果
import com.wei.bean.user;
import com.wei.dao.userDao;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
public class MyTest {
public static void main(String[] args) throws FileNotFoundException {
FileInputStream in=new FileInputStream("day19_mybatis/src/main/resources/SqlMapConfig.xml");
SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
SqlSessionFactory sT = builder.build(in);
SqlSession sqlSession = sT.openSession();
userDao mapper = sqlSession.getMapper(userDao.class);
user s = mapper.select(1);
System.out.println(s.getUid()+s.getAddress()+s.getSex());
}
}