ibatis的queryforlist返回值为空
ibatis的queryforlist返回值为空,其实数据库是可以查出数据的,但是通过queryforlist后list为空ibatis中写法如下:
<select id="getAllUser" parameterClass="java.lang.String" resultClass="user">
select username,password,易做图,mobile,email,
area,birthday,hobby,address,introduce from userinfo
where username=#username#
</select>
daoimpl中写法如下:
public List<User> getAllUser2(){
List<User> b = null;
try{
b = this.getSqlMapClientTemplate().queryForList("User.getAllUser", "111");
}catch(Exception e){
e.printStackTrace();
}
return b;
} --------------------编程问答-------------------- 着急啊!!!!! --------------------编程问答-------------------- 我直接用的 mybatis
xml配置文件 参数是这么写的 #{username}
程序没抛异常吧 --------------------编程问答-------------------- 建议你在控制台输出sql语句,看看 --------------------编程问答-------------------- <select id="getAllUser" parameterClass="java.lang.String" resultClass="user">
select username,password,易做图,mobile,email,
area,birthday,hobby,address,introduce from userinfo
where username=#{username}
</select>
这样写试试。 --------------------编程问答-------------------- 没搞懂,我觉得你这个 resultClass="user" 配置没报错的话,这个配置就不会有问题了
一般这里是这样写的:
where username=#value# --------------------编程问答-------------------- resultClass="java.util.List"时才会得到数据 --------------------编程问答-------------------- 写错了,resultClass="java.util.List"时才不会得到数据,得到的为空,但是数据库中是可以查出数据的 --------------------编程问答-------------------- 你返回的不是User实体对象么?
resultClass="com.**.User" 这里直接写你的User类的全路径 --------------------编程问答-------------------- 但是我需要的是list的,不是user --------------------编程问答--------------------
我想说呵呵... 你试验下嘛 --------------------编程问答-------------------- user是可以的,我试过了 --------------------编程问答-------------------- 第一步: where username=#username# 改为where 1=1
仍然空说明是最低级的错误,自己从连库信息用户名等地方找
不空继续
第二步: where username=#username# 改为where username='111'
仍然空说明是最低级的错误,自己从数据类型开始找比如char varchar
不空继续
第三步: where username=#username# 改为where trim(username)=trim(#username#)
补充:Java , Web 开发