- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在 JPA 中设置日期和字符。 Hibernate中有一些特殊的方法如下:
Query q = session.getNamedQuery(namedQuery);
q.setDate(0, (Date) (params[i]));
q.setCharacter(1, params[i]);
q.executeUpdate();
JPA 中是否有 setCharacter()
之类的内容?
我知道有setParameter()
与Date
,但我不知道如何用Character
来做到这一点。我想将其转换为 JPA 查询参数,例如:
Query q = getEntityManager().createNamedQuery(namedQuery);
// How to set Date and Character in JPA ?
...
q.executeUpdate();
最佳答案
您的评论:
Ya but i have to differentiate it in to string,Date or Char using condition..
不,您不必区分。假设您正在使用 jpa命名查询只需使用setParam(..)
。假设您已将查询命名为:
@NamedQuery(name="DateCharacter.findOlderByChar",
query="SELECT dc FROM DateCharacter dc "
+"WHERE dc.date<:date AND dc.character=:character")
设置参数如下:
Query query = em.createNamedQuery("DateCharacter.findOlderByChar");
query.setParameter("date", new Date());
query.setParameter("character", 'a');
如果您需要强制转换,请在 setParam(..)
上执行此操作,如下所示:
query.setParameter("character", (char)97); // ascii code for 'a'
如果您需要任何条件来确定如何转换,请在设置参数之前执行此操作。
但是如果您尝试输入错误类型的参数,例如字符的字符串:
query.setParameter("character", "a string");
你最终会遇到如下异常:
Caused by: java.lang.ClassCastException: Cannot convert object "a string" of type "class java.lang.String" into an instance of "class java.lang.Character".
关于java - JPA 相当于 Hibernate NamedQuery 的 setCharacter(..)、setDate(..) 等...?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48765662/
我想在 JPA 中设置日期和字符。 Hibernate中有一些特殊的方法如下: Query q = session.getNamedQuery(namedQuery); q.setDate(0, (D
我是一名优秀的程序员,十分优秀!