如何编写 JPQL 以按日、月或年获取数据列表

发布于 2024-11-17 10:10:59 字数 1541 浏览 1 评论 0原文

在这里,我在 Eclipse 中按日、月或年获取数据列表时遇到问题。我正在使用实体管理器从 mySQL 数据库中提取信息。

我正在创建一个网络表单,我可以在其中输入我想要查看的日期的值。 这是我的批准表的批准日期。

@Temporal( TemporalType.DATE)
private Date approvedate;

当我添加批准信息时,它是在 Eclipse 中自动创建的。

     approvedate = new Date();

在实体管理器中,我放置了这个:

@SuppressWarnings("unchecked")
public List<Approval> date(Date fromDate, Date toDate){


    try {
        Query query = entityManager
                .createQuery("SELECT e from Approval e WHERE e.approvedate >= :startdate AND e.approvedate < :enddate");
        query.setParameter("startdate", from);
        query.setParameter( "enddate", to);
        List<Approval> list = query.getResultList();

        return list; 
} catch (Exception e) {
        return null;
    }

}

在 bean 中放置:

   import java.text.ParseException;
   import java.text.SimpleDateFormat;

private String start;
private String end;
private List<Approval> approvedate;

    public String reportfrom() throws ParseException{
         DateFormat df = new SimpleDateFormat("MM/dd/yyyy");            
    Date startDate = df.parse(start);
    Date endDate = df.parse(end);
   approvedate= tsm.date(startDate, endDate);

return "success";

}

在我的网络表单中,我有一个框供用户输入值:

    View report of Approval from #{bean.start} and #{bean.end}

这是 fromDate 和 toDate 值的输入值。 --> 01/01/2011、08/08/2011

但我无法从 mySQL 中的批准表中提取数据。

here i'm having trouble getting list of data by either day , month or year in eclipse. i'm using entity manager to pull info from mySQL database.

i'm creating a web form whereby i can put in the value of the days that i want to view.
this is my Approval table's approval date.

@Temporal( TemporalType.DATE)
private Date approvedate;

it is auto created in eclipse when i add approval info.

     approvedate = new Date();

in entity manager i put this:

@SuppressWarnings("unchecked")
public List<Approval> date(Date fromDate, Date toDate){


    try {
        Query query = entityManager
                .createQuery("SELECT e from Approval e WHERE e.approvedate >= :startdate AND e.approvedate < :enddate");
        query.setParameter("startdate", from);
        query.setParameter( "enddate", to);
        List<Approval> list = query.getResultList();

        return list; 
} catch (Exception e) {
        return null;
    }

}

and in the bean i put :

   import java.text.ParseException;
   import java.text.SimpleDateFormat;

private String start;
private String end;
private List<Approval> approvedate;

    public String reportfrom() throws ParseException{
         DateFormat df = new SimpleDateFormat("MM/dd/yyyy");            
    Date startDate = df.parse(start);
    Date endDate = df.parse(end);
   approvedate= tsm.date(startDate, endDate);

return "success";

}

and in my web form i had a box for user to put in the value:

    View report of Approval from #{bean.start} and #{bean.end}

which is the input value for fromDate and toDate value. --> 01/01/2011, 08/08/2011

but i just could not pull out the data from approval table in mySQL.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文