Mybatis中的resultType和resultMap查询操作实例详解
作者:YEN_CSDN
resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题。这篇文章主要介绍了Mybatis中的resultType和resultMap查询操作实例详解,需要的朋友可以参考下
resultType和resultMap只能有一个成立,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,resultMap解决复杂查询是的映射问题。比如:列名和对象属性名不一致时可以使用resultMap来配置;还有查询的对象中包含其他的对象等。
MyBatisConfig.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> <!--定义别名 注意typeAliases一定要在environments之前--> <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 class="jike.book.Impl.InterfaceJikeUserMap"/> </mappers> </configuration>
jikeUser.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="/"> <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查询操作实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
- 三分钟读懂mybatis中resultMap和resultType区别
- Java MyBatis传出参数resultType和resultMap解读
- MyBatis中resultType和parameterType和resultMap使用总结
- MyBatis标签之Select resultType和resultMap详解
- Mybatis开发要点-resultType和resultMap有什么区别详解
- 详解MyBatis resultType与resultMap中的几种返回类型
- MyBatis中resultMap和resultType的区别详解
- MyBatis中关于resultType和resultMap的区别介绍
- 深入理解Mybatis中的resultType和resultMap
- Mybatis返回值(resultType&resultMap)的具体使用