Noo*_*oor 2 java hibernate hql
我有类拍卖
public class Auction extends LightEntity implements IsSerializable
{
private long AuctionId;
private Date StartTime;
private Date EndTime;
}
Run Code Online (Sandbox Code Playgroud)
我需要使用限制执行写一个hql,选择所有结束时间尚未完成的拍卖.
我的拍卖类的xml映射文件是
<hibernate-mapping>
<class name="com.BiddingSystem.Models.Auction" table="AUCTION">
<id name="AuctionId" type="long">
<column name="AUCTIONID" />
<generator class="native" />
</id>
<property name="StartTime" type="java.util.Date">
<column name="STARTTIME" />
</property>
<property name="EndTime" type="java.util.Date">
<column name="ENDTIME" />
</property>
..
.
.
.
>
Run Code Online (Sandbox Code Playgroud)
首先,您应该尊重Java命名约定:变量和字段以Java中的小写字母开头(auctionId,startTime,endTime).
现在您的问题是:要么计算当前时间,要么将其作为参数传递给查询:
Date now = new Date();
Query q = session.createQuery("select a from Auction a where a.endTime > :now");
q.setTimeStamp("now", now);
return q.list();
Run Code Online (Sandbox Code Playgroud)
或者您使用HQL支持的表达式:
Query q = session.createQuery("select a from Auction a where a.endTime > current_timestamp()");
return q.list();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4810 次 |
| 最近记录: |