linux 下ibatis的对象获取失败的非常规错误解决方法

在window 7上运行没有问题的java web项目,正确布置到linux 系统上的时候却报了此异常:

java.lang.ClassCastException

而在linux上debug的现象是:一个应该返回List<XXBean> 对象的方法却返回了List<String>,而且此中的String 为地址,为何会如此?
不是JDK的问题
不是Tomcat问题

也不是JAR包的问题

ibatis 的xml映射文件 问题:

   <select id="queryByLikeUserName" resultClass="String">
     select * 
     from T_User
     where T_User.USERNAME =#username#
   </select>


如上:在windows上是没有问题,可以获取到List<T_User> 对象的。

但是在linux上只能获取到:List<String> 

如此只要把此配置文件更正(完善)为:

   <select id="queryByLikeUserName" resultClass="T_User">
     select t.id,t.USERNAME,...,t.email 
     from T_User t
     where t.USERNAME =#username#
   </select>

问题即可解决。

如此便引出了问题:

产生如上问题的原因是:linux 的容错率相较windows低嘛?还是ibatis本身的一个bug?

不知道mybatis是否也有这种情况?


展开阅读全文

没有更多推荐了,返回首页