今天在做项目的时候,由于自己的疏忽,导致了一些错误。
以下分享下。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd" >
<sqlMap namespace="sys_user" >
<resultMap id="user" class="org.zs.zt.sysUser" >
<result column="ID" property="id" jdbcType="DOUBLE" />
<result column="username" property="username" jdbcType="VARCHAR" />
<result column="password" property="password" jdbcType="VARCHAR" />
<result column="nicename" property="nicename" jdbcType="VARCHAR" />
</resultMap>
<select id="querySysUser" resultMap="user" parameterClass="map" >
select ID, username, password, nicename
from sys_user limit #start#,#end#
</select>
<select id="findSysUserAccount" resultClass="Integer" parameterClass="String" >
select count(1) from sys_user where username = #username#
</select>
</sqlMap>
第二个方法中,返回Integer时候,我误copy成了resultMap。导致了错误,但是一堆错误细细的看,很容易发现。
1、resultMap属性:可以让你控制从数据库查询结果与java对象映射。直接映射,性能会比较高。
2、resultMap属性:没有指定的情况下,可以采用resultClass方式,resultClass的属性值可采用类型别名或者类型(Class)全称的方式。指定的类将根据数据库的元数据自动的映射到查询结果的字段值中。