Ibatis的SQL语句有哪些写法,下面这个写法错在哪里?不能从数据库中查到数据。。。

<sqlMap><typeAliasalias="User"type="com.name.demo.pojo.User"/><selectid="queryAll"res... <sqlMap>
<typeAlias alias="User" type="com.name.demo.pojo.User"/>
<select id="queryAll" resultClass="User">
<![CDATA[
select * from huser order by u_id
]]>
</select>
<select id="selectUserByNameAndPwd" parameterClass="String" resultClass="User">
select *
from huser
where
<isNotEmpty prepend=" AND " property="name">
LOGIN_NAME = #name# </isNotEmpty>
<isNotEmpty prepend=" AND " property="password">
PASS_WORD = #password# </isNotEmpty>
</select>
</sqlMap>
展开
 我来答
zhouxyx
2013-07-24 · TA获得超过192个赞
知道小有建树答主
回答量:150
采纳率:80%
帮助的人:70.7万
展开全部
<select id="queryAll" resultClass="User">
     <![CDATA[
         select * from huser order by u_id
     ]]>
</select>


resultClass是User,如果你sql语句查询出来的结果集合大于1,那岂不是会有问题(可以返回一个Map,你自己必须要定义)


parameterClass="String"极端情况下,你的name和password都有值的话,你该咋办?如果说name和password都为空呢 ,最后的sql=select *  from huser where 这又该怎么执行呢?

所以 如luoting2762所说,where 1=1 比较稳妥。

id=selectUserByNameAndPwd的标签,你可以传递一个Map参数过来(默认不用写) ,或者传递一个对象过来也可以。

wgp701
2013-07-22 · TA获得超过380个赞
知道小有建树答主
回答量:477
采纳率:100%
帮助的人:230万
展开全部
parameterClass="hasMap" 换成 hasMap 后台 把 值 放到 HasMap hasMap =new HasMap

hasMap.put("name",huser.name);
hasMap.put("password",huser.password);

你的查询条件是并且的关系 select * from huser where LOGIN_NAME='admin' and PASS_WORD ='123456'

如果你这用 parameterClass="String" 类型 只能传过来一个参数 select * from huser where LOGIN_NAME='admin'
追问
恩,这个上面的我已经解决了,另外再问一个:parameterClass=”输入参数类型”,如果输入参数类型是一个User对象,比如我想插入一条记录,怎么写sql(直接写我知道insert into huser(属性1,属性2.....) into values(值1,值2.....)),但是有些用到了dynamic,cdata这些,有什么不同呢,什么情况下用到。。。
追答
动态标签 主要是验证有些字段 不能为空的时候用到的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
luoting2762
2013-07-24 · TA获得超过643个赞
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:235万
展开全部
像你这样,where后面想做动态语句的,那么稳妥些,先写个where 1= 1,然后再写动态语句部分。

如果有多个参数,parameterClass可以写User。只要保证使用的参数的名称和传入中名称一致就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式