用QueryTranslatorImpl把HQL转换成SQL之后,参数占位符变问号了 20
fromBbwhereb.name=:name经过queryTranslator.getSQLString()之后select*from_bbwhereb.name=?那...
from B b where b.name = :name
经过queryTranslator.getSQLString()之后
select * from _b b where b.name=?
那之前的条件Map就没法用了
有没有碰到过的,帮一下忙! 展开
经过queryTranslator.getSQLString()之后
select * from _b b where b.name=?
那之前的条件Map就没法用了
有没有碰到过的,帮一下忙! 展开
2个回答
展开全部
因为HQL传参数就是?作为参数传入位置的。如
Query query = session.createQuery("from _b b where b.name=?").setParameter(0, name)
//这里0表示第一个?的位置,name表示具体传入的值。
也可以这样
Object[] values = {"name"};//这里可以根据参数的个数自己调整。
String hql = "from _b b where b.name=?";
this.getHibernateTemplate().find(hql,vlaues);
//这样也能传入参数。
Query query = session.createQuery("from _b b where b.name=?").setParameter(0, name)
//这里0表示第一个?的位置,name表示具体传入的值。
也可以这样
Object[] values = {"name"};//这里可以根据参数的个数自己调整。
String hql = "from _b b where b.name=?";
this.getHibernateTemplate().find(hql,vlaues);
//这样也能传入参数。
追问
你可能没接触过这个queryTranslator
问的不是这个意思,不过谢谢啊!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询