Java日期的加减问题
2014-03-25 09:03
453 查看
日报选择时候,日期类型不一致,存储过程是datetime类型输入,而数据表中deal_time是smalldatetime类型,所以smalldatetime between 输入的那两个类型datetime.
jsp页面可供输入的都是date类型,如2013-11-15,传递到java类中为string类型数据,需要进行时间的相加,则考虑为string字符串相加,形式为jsp传递回的date+空格+hh:mm:ss,这样才能实现date变化为datetime类型数据的目的。
选择起始日期:2013-11-15 2013-11-16
选择月:2013-10-20 2013-11-19
选择周:2013-11-11 2013-11-18
publicsynchronized TimeVO getBEDay(String time, String st, String et){
//time是标志位,标志是哪一种选择
TimeVO tvo= new TimeVO();
if ("1".equals(time)){
//日报
String begindt = st+""+"00:00:00";
String enddt = et+""+"23:59:59";
tvo.setStartday(begindt);
tvo.setEndday(enddt);
}else if("2".equals(time)){
//周报,截止日期等于选定日期加上7天
String begindt = st+""+"00:00:00";
tvo.setStartday(begindt);
Date date=null;
Calendar c =Calendar.getInstance();
try {
date = newSimpleDateFormat("yyyy-MM-dd").parse(st);
} catch (ParseException e) {
e.printStackTrace();
}
c.setTime(date);
int day = c.get(Calendar.DATE);
c.set(Calendar.DATE, day + 7);
String weekday = newSimpleDateFormat("yyyy-MM-dd").format(c.getTime());
String enddt = weekday+""+"00:00:00";
tvo.setEndday(enddt);
}else if("3".equals(time)){
//月报
tvo=dao.getBEDay(st, et);
}else if("4".equals(time)){
String begindt = st+""+"00:00:00";
String enddt = et+""+"00:00:00";
tvo.setStartday(begindt);
tvo.setEndday(enddt);
System.out.println(begindt+enddt);
}
return tvo;
}
jsp页面可供输入的都是date类型,如2013-11-15,传递到java类中为string类型数据,需要进行时间的相加,则考虑为string字符串相加,形式为jsp传递回的date+空格+hh:mm:ss,这样才能实现date变化为datetime类型数据的目的。
选择起始日期:2013-11-15 2013-11-16
选择月:2013-10-20 2013-11-19
选择周:2013-11-11 2013-11-18
publicsynchronized TimeVO getBEDay(String time, String st, String et){
//time是标志位,标志是哪一种选择
TimeVO tvo= new TimeVO();
if ("1".equals(time)){
//日报
String begindt = st+""+"00:00:00";
String enddt = et+""+"23:59:59";
tvo.setStartday(begindt);
tvo.setEndday(enddt);
}else if("2".equals(time)){
//周报,截止日期等于选定日期加上7天
String begindt = st+""+"00:00:00";
tvo.setStartday(begindt);
Date date=null;
Calendar c =Calendar.getInstance();
try {
date = newSimpleDateFormat("yyyy-MM-dd").parse(st);
} catch (ParseException e) {
e.printStackTrace();
}
c.setTime(date);
int day = c.get(Calendar.DATE);
c.set(Calendar.DATE, day + 7);
String weekday = newSimpleDateFormat("yyyy-MM-dd").format(c.getTime());
String enddt = weekday+""+"00:00:00";
tvo.setEndday(enddt);
}else if("3".equals(time)){
//月报
tvo=dao.getBEDay(st, et);
}else if("4".equals(time)){
String begindt = st+""+"00:00:00";
String enddt = et+""+"00:00:00";
tvo.setStartday(begindt);
tvo.setEndday(enddt);
System.out.println(begindt+enddt);
}
return tvo;
}
相关文章推荐
- java 导出EXCEL 日期格式问题 设置日期格式和本机不一样
- java android中日期时间 问题总结
- Java中日期的格式化和加减计算
- Spring Boot和Feign中使用Java 8时间日期API(LocalDate等)的序列化问题
- 完美解决日期天数加减问题
- java中double类型数据加减操作精度丢失问题及解决方法
- java中日期的加减
- 聊聊 Java 中日期的几种常见操作 —— 取值、转换、加减、比较
- Spring3MVC 提交请求参数中的日期问题(java.lang.String cant not convert to java.util.Date)
- JAVA中关于DATE时间日期加减、String与Date类型的转换
- JAVA加减日期
- java日期格式化中ParsePosition问题
- JAVA加减日期
- java 时间日期的判定和时间的加减
- Java 日期工具类(日期,月份加减等)
- java中日期的几种常见操作 取值 转换 加减 比较
- JAVA日期加减运算
- oracle java中常用日期格式转换问题
- Java日期加减
- 聊聊 Java 中日期的几种常见操作 —— 取值、转换、加减、比较