java中的jsp页面如何计算两个时间的差
<%//Stringstr1=(String)((ServletRequest)session).getAttribute("sign_time");//Stringst...
<%
//String str1=(String) ((ServletRequest) session).getAttribute("sign_time");
//String str2=(String) ((ServletRequest) session).getAttribute("out_time");
String str1="2013-3-6 09:00:00";
String str2="2013-3-6 18:30:00";
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal1=Calendar.getInstance();
cal1.setTime(sdf.parse(str1));
Calendar cal2=Calendar.getInstance();
cal2.setTime(sdf.parse(str2));
long l=cal2.getTimeInMillis()-cal1.getTimeInMillis();
int hours=new Long(l/(1000*60*60)).intValue();
out.print(hours+"小时");
%>
上面的str1和str2能不能从session中获取,怎么获取? 展开
//String str1=(String) ((ServletRequest) session).getAttribute("sign_time");
//String str2=(String) ((ServletRequest) session).getAttribute("out_time");
String str1="2013-3-6 09:00:00";
String str2="2013-3-6 18:30:00";
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal1=Calendar.getInstance();
cal1.setTime(sdf.parse(str1));
Calendar cal2=Calendar.getInstance();
cal2.setTime(sdf.parse(str2));
long l=cal2.getTimeInMillis()-cal1.getTimeInMillis();
int hours=new Long(l/(1000*60*60)).intValue();
out.print(hours+"小时");
%>
上面的str1和str2能不能从session中获取,怎么获取? 展开
4个回答
展开全部
经常看见jsp版里有人问时间操作的问题,这些问题一般包括:取当前时间,把一个指定的字符串时间转化成时间类型,求两个时间之间的天数,求一段时间以前的时间,求一段时间以后的时间,在这里就把这些问题汇总一下。
===========================
另一种
import java.text.DateFormat;
import java.text.ParseException;
import java.util.Date;
class test
{
public static void main(String[] args) throws ParseException
{
DateFormat df=DateFormat.getDateInstance();
String str1="2002-3-4";
String str2="2002-7-12";
long l1=df.parse(str1).getTime(); //把字符串转化为时间
long l2=df.parse(str2).getTime();
long l3=0; //时间间隔
if(l1>l2)//判断时间先后
{
l3=l1-l2;
}else
{
l3=l2-l1;
}
l3=l3/(60*60*24*1000);
System.out.println(str1+"与"+str2+"相隔"+l3+"天!");
}
}
===========================
另一种
import java.text.DateFormat;
import java.text.ParseException;
import java.util.Date;
class test
{
public static void main(String[] args) throws ParseException
{
DateFormat df=DateFormat.getDateInstance();
String str1="2002-3-4";
String str2="2002-7-12";
long l1=df.parse(str1).getTime(); //把字符串转化为时间
long l2=df.parse(str2).getTime();
long l3=0; //时间间隔
if(l1>l2)//判断时间先后
{
l3=l1-l2;
}else
{
l3=l2-l1;
}
l3=l3/(60*60*24*1000);
System.out.println(str1+"与"+str2+"相隔"+l3+"天!");
}
}
展开全部
str1能从session中获取,在登录成功页面中将登录时间放到session
str2能从session中获取,在注销页面中将注销时间放到session
str2能从session中获取,在注销页面中将注销时间放到session
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Map<String, Object> session = ActionContext.getContext().getSession();
String str1= (String) (session.get("sign_time"));
如果是在servlet或者action里面设置了session这样可以获取到值
String str1= (String) (session.get("sign_time"));
如果是在servlet或者action里面设置了session这样可以获取到值
更多追问追答
追问
页面上要引用什么包呢
java.text.SimpleDateFormat
java.util.Calendar
java.util.Map
com.opensymphony.xwork2.ActionContext
这个对吗,还是不行啊,我也不知道是什么错!!
追答
加这个就可以了com.opensymphony.xwork2.ActionContext
不知道你这两个值怎么会设置到session里面去如果只是从servlet或者anction里面传值到页面的话会有很多方法的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在jsp中,直接就session.setAttribute("str1",str1");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询