Mybatis中的resultType和resultMap查询操作实例详解
Mybatis中的resultType和resultMap查询操作实例详解
发布时间:2016-12-28 来源:查字典编辑
摘要:resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部Result...

resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题。比如:列名和对象属性名不一致时可以使用resultMap来配置;还有查询的对象中包含其他的对象等。

MyBatisConfig.xml

<"1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <> <typeAliases> <typeAlias type="jike.book.pojo.JiKeUser" alias="JiKeUser"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"> </transactionManager> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/jikebook"/> <property name="username" value="root"/> <property name="password" value="*****"/> </dataSource> </environment> </environments> <mappers> <mapper resource="jike/book/map/jikeUser.xml"/> <mapper/> </mappers> </configuration>

jikeUser.xml

<"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="/"> <resultMap id="JiKeUserMap" type="JiKeUser"> <id property="id" column="id"/> <result property="userName" column="userName"/> <result property="password" column="password"/> </resultMap> <select id="selectUserMap" resultMap="JiKeUserMap"> select * from jikeUser; </select> <select id="selectUserList" resultType="JiKeUser" parameterType="JiKeUser"> select * from jikebook.jikeuser; </select> </mapper>

TestSelect.java

package jike.book.test; import jike.book.pojo.JiKeUser; 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 java.io.IOException; import java.io.Reader; import java.util.List; /** * DateTime: 2016/9/5 21:45 * 功能: * 思路: */ public class TestSelect { public static void main(String[] args) { // 资源路径 String resource="jike/book/map/MyBatisConfig.xml"; Reader reader=null; SqlSession session; try { reader= Resources.getResourceAsReader(resource); } catch ( IOException e ) { e.printStackTrace(); } SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder().build(reader); session=sqlMapper.openSession(); List<JiKeUser> list=session.selectList("selectUserMap"); // List<JiKeUser> list=session.selectList("selectUserList"); for(JiKeUser jiKeUser:list){ System.out.println(jiKeUser.getUserName()); } session.close(); } }

运行

List<JiKeUser> list=session.selectList("selectUserMap");

或者

List<JiKeUser> list=session.selectList("selectUserList");

结果都是一样的

Mybatis中的resultType和resultMap查询操作实例详解1

以上所述是小编给大家介绍的Mybatis中的resultType和resultMap查询操作实例详解,希望对大家有所帮助,如果大家有任何疑问请给我们留言,小编会及时回复大家的。在此也非常感谢大家对查字典教程网的支持!

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Java学习
热门Java学习
编程开发子分类