resultTypeと
使用resultTypeと出力マッピングは、一貫性のあるは、列名のみをチェックアウトして、この列が正常にマッピングすることができ、属性名は、POJO
あなたはすべてのPOJOの矛盾の列名と属性をチェックアウトする場合は、何のPOJOはありませんオブジェクトが作成
一貫ののみをチェックアウト、それはPOJOのうち、オブジェクトを作成します。
また、単純なタイプ印刷することができます
:需要
彼らはクエリの合計数とトップクエリのユーザーのリストでページングを実装することができます前に、ユーザ情報統合クエリのリストの合計数を。
mapper.xml与.java
@Test
public void testFindUserCount() throws Exception{
//创建usermappper对象
SqlSession sqlSession = sqlSessionFactory.openSession();
//创建mapper对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用usermapper方法
UserQueryVo userQueryVo = new UserQueryVo();
UserCustom userCustom = new UserCustom();
userCustom.setSex("1");
userCustom.setUsername("张三丰");
userQueryVo.setUserCustom(userCustom);
int count = userMapper.findUserCount(userQueryVo);
System.out.println(count);
}
<select id="findUserCount" parameterType="cn.itcast.mybatis.pojo.UserQueryVo" resultType="int">
select count(*) from user where user.sex = #{userCustom.sex} and user.username like '%${userCustom.username}%'
</select>
要約
のみ1行分の結果をチェックアウトするか、一方が単純型を使用することができ
POJOおよび出力リストPOJOオブジェクト
POJO単一のオブジェクトまたは複数のオブジェクト出力リスト(POJOを含むリスト)かどうか、resultTypeとのmapper.xmlは、同じタイプで指定された
タイプmapper.java戻り値が同じではない指定
単一のオブジェクト場合、戻り値は、単一のオブジェクトである
オブジェクトリストPOJOを複数、POJOでリストを、返された場合
このresultMap
高度な出力マッピングを満たすresultmapにMyBatisの使用を
私たちは列名と属性名のPOJOの矛盾をチェックアウトすると言うならば、あなたはresultmapには、列名と属性名とのマッピング関係を行う定義することができます
定義resultmapに以下を
出力マッピング型resultmapにとして使用しました
需要
SQLマッピング以下が使用して行われUserCustom
<resultMap type="user" id="userResultMap">
<id column="id_" property="id"></id>
<result column="username_" property="username"></result>
</resultMap>
<select id="findUserByResultMap" parameterType="int" resultMap="userResultMap">
select id id_,username username_ from user where id = #{value}
</select>
テスト
public void testFindUseByResultMap() throws Exception{
//创建usermappper对象
SqlSession sqlSession = sqlSessionFactory.openSession();
//创建mapper对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用usermapper方法
User user = userMapper.findUserByResultMap(1);
System.out.println(user);
}