如何在EJB JPA中合并两个日期

时间:2013-05-09 18:35:49

标签: java jpa ejb-3.0 java-ee-6

我尝试在JPA的帮助下合并EJB中的两个日期,当前日期和另一个日期 这是我的UserBean类 在这个类我准备一个方法setExpireDate。 此方法用于合并两个日期,例如一个CurrentDate {new Date()}和另一个Date {new Date(1,6,0)}

    @Stateless(mappedName = "CMS/UserBean")
public class UserBean implements UserBeanLocal {

    @PersistenceContext(name = "CMS-ejbPU")
    EntityManager em;
@Override
    public boolean setExpireDate(int userId,int planId) 
    {
        try
        {
            EntityBean.User usr = em.find(EntityBean.User.class, userId);


            int day = 20;
            int month = 6;
            int year = 0;

            Date expr = new Date() + new Date(year, month, day);


            usr.setExpireDate(expr);
            return true;
        }
        catch(Exception ex)
        {
            System.out.println("Error are Occure, While Setting the ExpireDate");
            return false;
        }

    }

1 个答案:

答案 0 :(得分:1)

你应该考虑使用joda-time来处理日期,这是一个比JDK更好的API。

要使用标准JDK类操作日期,请使用Calendar类:

Calendar calendar = Calendar.getInstance(); // now
calendar.add(Calendar.MONTH, 1);
calendar.add(Calendar.DATE, 2);
calendar.add(Calendar.YEAR, 3);
Date result = calendar.getTime();