您的位置:首页 > 编程语言 > Java开发

Coding中的低级问题总结【开个头先】

2016-03-09 10:34 393 查看
Struts2 <s:param>标签:

写了一个<s:url>,给它附上了两个参数<s:param>,但后台Action始终无法得到第二个参数。写法如下(错误写法):

<a href=

"<s:url action='appAction'>

<s:param name="appId" value="%{#request.appId}" />

<s:param name="appOp" value="delete"/>

</s:url>" 

target="_blank">

删除

</a>

正确的写法:

<a href=

"<s:url action='appAction'>

<s:param name="appId" value="%{#request.appId}" />

<s:param name="appOp">delete</s:param><!-- 参数值如果是常量,应该写为元素的值,而不是attribute。低级错误 -->

</s:url>" 

target="_blank">

删除

</a>

2, 傻爆了的HQL和SQL混写:

写了一个分页查询的HQL:

String hql = "from App as model where model.name = ?"
    + " order by model.operation desc "
    + " limit ?, ?";

用getHibernateTemplate().find(hql,<para1_value>,<para2_value>,<para3_value>)执行查询时,总是报ordinal parameter mismatch

后一类仔细一看,HQL的前两行是HQL的语法,第三行 limit ?, ?是SQL的语法。

回到正确的做法:

Query query = session.createQuery(hql);

query.setParameter(0, <para1_value>);

……

return query.setFirstResult(start).setMaxResults(limit).list();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Struts2 sparam