关于实体为Date类型的字段,如何用model.find(" date>? ",param)方法进行查询?
来源:互联网 发布:桌面美女跳舞软件 编辑:程序博客网 时间:2024/05/16 10:49
假设实体为 Coupon,一个字段为public Date CreateTime;这时,如何通过Coupon.find(" CreateTime>? ",param)来进行查询?
有两种方式解决这一问题,
第一个:主要用在get请求时,这种方式使用时有限制,不能通用,特别是前端通过Json串传到后端时
第二个:这种方式用途更广泛,能解决几乎所有这类问题,目前还未发现它有什么局限性。
(1)在Action方法的参数前面添加修饰符
使用@As注解,我们可以指定日期格式。
例如:
archives?from=21/12/1980
public static void articlesSince(@As("dd/MM/yyyy") Date from) {
List<Article> articles = Article.findBy("date >= ?", from);
render(articles);
}
我们可还以对不同的语种定义不同的格式,例如
public static void articlesSince(@As(lang={"fr,de","*"}, value={"dd-MM-yyyy","MM-dd-yyyy"}) Date from) {
List<Article> articles = Article.findBy("date >= ?", from);
render(articles);
}
在这个例子中,我们将法国和德国的日期定义为 dd-MM-yyyy ,其它都为 MM-dd-yyyy. 注意语种可用逗号分隔。注意参数lang的个数必须与value的个数相等。
如果没有使用@As注解,则Play将使用你的区域对应的默认日期格式。我们可在“conf/application.conf”中使用“date.format”为key来配置该格式.
(2)用在有Post请求、JSON传值到后台的情况,将实体字段前面加上注解,更简单一些
@Entity
@Table(name = "mk_coupon")
public class Coupon extends Model{
@Table(name = "mk_coupon")
public class Coupon extends Model{
@Temporal(TemporalType.DATE)
@As(("yyyy-MM-dd"))
public Date expireStartDate;
public Date expireStartDate;
...
}
在post后台方法中,可以这样格式化时间
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date date=new Date();
String now=df.format(date);
List<Object> param = new ArrayList<Object>();
Date date=new Date();
String now=df.format(date);
List<Object> param = new ArrayList<Object>();
param.add(df.parse(now));
Coupon.find(" and expireStartDate >? ",param)
Coupon.find(" and expireStartDate >? ",param)
这样查询的结果也是正确的。
0 0
- 关于实体为Date类型的字段,如何用model.find(" date>? ",param)方法进行查询?
- play Framework如何通过实体.find查询Date类型字段
- 关于数据库字段为DATE类型的日期处理
- Oracle查询date类型字段
- Oracle Date字段查询方法
- MYSQL查询通过date类型的字段查询一段时间记录
- java 数据库查询Date类型字段 没有了时分秒 全为 00 的解决办法
- java 数据库查询Date类型字段 没有了时分秒 全为 00 的解决办法
- 怎么把一个date型的数据存如sql数据库,对应字段也是date类型。
- date类型字段做分区字段的分区方法。
- oracle数据库对date字段类型存在空值进行排序的处理方法
- 查询Oracle中两个字段间的数据(date类型)
- 如何在Oracle中查询Date类型字段的数据
- 在Oracle中查询Date类型字段的数据
- Date类型字段转换为json时的问题
- 如何用date将时间戳转换为时间格式
- 如何用date将时间戳转换为时间格式
- 如何用shell脚本删除目录结构为日期的目录(date)
- 关于根据陀螺仪获取加速度和重力感应,计算用户行走的步数算法
- 设计模式-开篇:软件的可维护性和可复用性
- 黑马程序员——ios基础---Objective-C:基础语法
- iOS开发-CoreMotion框架(加速计和陀螺仪)
- hive学习笔记-高级查询
- 关于实体为Date类型的字段,如何用model.find(" date>? ",param)方法进行查询?
- hdu 4007 平行矩形包含点数
- 杭电3665Seaside
- 二阶有源低通滤波电路的设计与分析
- Unity换装之合并网格
- hdu5418--Victor and World(floyd+状压dp)
- Wireshark 数据分析(二)
- ChargeSystem——One,Two,Three
- C++ ERROR redefinition of ‘class ***’