日期:2014-05-17  浏览次数:20831 次

ibatis的sqlmap配置问题!!!
XML code
<!-- 根据用户名和账户搜索用户 -->
    <select id="selectUserByLoginnameAndShowName" parameterClass="java.util.Map" resultMap="resultUsers">
        SELECT
            a.USER_ID
            ,a.LOGIN_NAME
            ,a.PASS_WORD
            ,a.SHOW_NAME
            ,a.PASS_WORD
            ,a.CREATE_TIME
            ,a.GROUP_ID
            ,a.ADMIN_FLG
            ,b.ID
            ,b.GROUP_NAME
            ,b.HIDE_FLG
        FROM
            table_user as a
        LEFT JOIN 
            table_group AS b
        ON
            b.ID = a.GROUP_ID
        <dynamic prepend="WHERE">
            <isNotEmpty prepend="AND" property="loginName">                       
                a.LOGIN_NAME LIKE '%$loginName$%'
            </isNotEmpty>       
            <isNotEmpty prepend="AND" property="showName">
                a.SHOW_NAME LIKE '%$showName$%'
            </isNotEmpty>
            <isNotNull property="fromIndex">
            <isNotNull property="pageSize">
                LIMIT #fromIndex# , #pageSize#
            </isNotNull>
            </isNotNull>
        </dynamic>
        ORDER BY 
            a.USER_ID DESC
    </select>

请问我这哪里错了?
报错如下
XML code
rg.springframework.jdbc.BadSqlGrammarException: SqlMapClient operation; bad SQL grammar []; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:   
--- The error occurred in com/cloudsoaring/dao/sqlmap/Users_SqlMap.xml.  
--- The error occurred while applying a result map.  
--- Check the Users.resultUsers.  
--- Check the result mapping for the 'id' property.  
--- Cause: java.sql.SQLException: Column 'USER_ID' not found.
    org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:111)
    org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.translate(SQLErrorCodeSQLExceptionTranslator.java:322)
    org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:196)
    org.springframework.orm.ibatis.SqlMapClientTemplate.queryForObject(SqlMapClientTemplate.java:241)
    com.cloudsoaring.common.dao.impl.CommonDaoImpl.searchCount(CommonDaoImpl.java:49)
    com.cloudsoaring.dao.impl.user.UsersDaoImpl.searchUserByShownameCount(UsersDaoImpl.java:99)
    com.cloudsoaring.service.impl.user.UserServiceImpl.searchUserByLoginNameAndShowName(UserServiceImpl.java:182)
    com.cloudsoaring.action.user.UserLoginAction.searchUserByLoginNameAndShowName(UserLoginAction.java:219)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    java.lang.reflect.Method.invoke(Unknown Source)


------解决方案--------------------
Column 'USER_ID' not found.数据库有这个字段?
------解决方案--------------------
检查下resultMap="resultUsers">对应的属性是否正确
------解决方案--------------------
感觉没有什么问题,请楼主加下log4j配置
log4j.logger.java.sql.Connection = DEBUG
log4j.logger.java.sql.Statement = DEBUG
log4j.logger.java.sql.PreparedStatem