JSP使用javabean計算兩個天數的差值

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="getminus.jsp" method="post">
請輸入第一個日期:<input type="date" name="date1" value="2020-05-15"/><br>
請輸入第二個日期:<input type="date" name="date2" value="2020-05-15"/><br>
<input type="submit" value="提交">
</form>
</body>
</html>

getminus.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
	request.setCharacterEncoding("UTF-8");
%>
<%
	String datestr1=request.getParameter("date1");
	String datestr2=request.getParameter("date2");

%>
<jsp:useBean id="strBean" class="com.StringUtil"></jsp:useBean>
<jsp:setProperty property="datestr1" name="strBean" value="<%=datestr1 %>"/>
<jsp:setProperty property="datestr2" name="strBean" value="<%=datestr2 %>"/>
<p>第一個日期爲:<jsp:getProperty property="datestr1" name="strBean"/></p>
<p>第二個日期爲:<jsp:getProperty property="datestr2" name="strBean"/></p>
<p>兩個日期時間差爲::<jsp:getProperty property="minus" name="strBean"/></p>
</body>
</html>

package com;

import java.util.Calendar;
import java.util.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;

public class StringUtil {
	private String datestr1;
	private String datestr2;
	private int minus;
	public int getMinus() {
		Calendar c1=this.getCalendar(datestr1);
		Calendar c2=this.getCalendar(datestr2);
		long t1=c1.getTimeInMillis();
		long t2=c2.getTimeInMillis();
		long t=1000*60*60*24;
		minus=(int)((t2-t1)/t); 
		return minus;
	}
	public String getDatestr1() {
		return datestr1;
	}
	public void setDatestr1(String datestr1) {
		this.datestr1=datestr1;
	}
	public String getDatestr2() {
		return datestr2;
	}
	public void setDatestr2(String datestr2) {
		this.datestr2=datestr2;
	}
	public void setMinus(int minus) {
		this.minus=minus;
	}
	private Calendar getCalendar(String datestr) {
		SimpleDateFormat shijian = new SimpleDateFormat("yyyyy-MM-dd");
		Date date=null;
		try {
			date=shijian.parse(datestr);
		}catch (ParseException e) {
			e.printStackTrace();
		}
		Calendar c=Calendar.getInstance();
		c.setTime(date);
		return c;
	}
}

運行截圖

在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章