标签:vat for 机制 现在 数据库 空间 str 并且 实现
入门
MyBatis基于动态代理机制,让我们无需再编写Dao的实现。
传统Dao接口,现在名称统一以Mapper结尾,还有我们映射器配置文件要和映射器在同一个包.:
IDeptDao---->DeptMapper.java---DeptMapper.xml(namespace直接写DeptMapper.java的全限定名)
1.创建个User类(首先得有个数据库中的表是User,并且还有对应的字段)
public class User { private Long id; private String name; get和set和tostring此处省略。。。。(get和set和tostring是要的,太长了没复制)
}
2.个上面的类建个接口UserMapper
import java.util.List;
/**
* 查询数据库中所有数据
* @return
*/
public interface UserMapper {
List<User> queryAll();
}
3.建个UserMapper.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"> <!-- orm框架 sql的映射 namespace:命名空间 namespace路径+ id值 namespace怎么配置 包名.接口名 + queryAll --> <mapper namespace="cn.itsource._02mapper.UserMapper">
<!-- 查询 queryAll()
resultType 返回类型
注意下面id的值必须和你接口中的方法名一致,如果有其他方法也要一一对应,否则会报错找不到方法
下面resultType的值就是你执行了下面sql语句返回的数据类型
-->
<select id="queryAll" resultType="User"> select * from t_user </select>
</mapper>
4.写一个测试类进行测试
import org.apache.ibatis.session.SqlSession; import org.junit.Test; import util.MyBataisUtil; import java.util.List; public class UserImplTest { @Test public void querAll() { //MyBataisUtil.MYBATAIS.getSqlSession();通过单例模式封装好sqlSession SqlSession sqlSession = MyBataisUtil.MYBATAIS.getSqlSession(); //sqlSession.getMapper(要动态代理的接口)返回动态代理类 UserMapper mapper = sqlSession.getMapper(UserMapper.class); //用动态代理类来调用查询全部数据的方法 List<User> users = mapper.queryAll(); for (User user : users) { System.out.println(user); } } }
标签:vat for 机制 现在 数据库 空间 str 并且 实现
原文地址:https://www.cnblogs.com/bigbigxiao/p/11946534.html