This function will Subtracts an interval from a date time expression.
First i make a table in database named ‘dbase’ within the reference of mySql(php myAdmin).Then i import all the required java packages from the java library. Then i made a class named ‘MySqlTimeStampDiffFunc’, which extends ‘HttpServlet’. Then after i use service()Mehod which will get the request from the doGet()Method. Then i load all the require drivers for the database accessing. Here I declare the variables like ‘connection’ this variable will take over to create a link between a database and the java code. The other i declare ‘resultSet’ this will use to fetch the value from the columns and the rows from selected table. Then i declare the ‘preparedStatement’ this variable will execute the selected query like executeQuery() as (SELECT TIMESTAMPDIFF(MONTH,’2014-05-31′,’2014-07-20′) AS tsdiff).I here use doGet()Method that will bring the output on the web browser.
On the web Browser I use ‘Html’ tags to print the output in tabular form on the web browser this will present output in a manner way.
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class MySqlTimeStampDiffFunc extends HttpServlet
{
public void service(HttpServletRequest rq, HttpServletResponse rp)throws IOException, ServletException
{
rp.setContentType("text/html");
PrintWriter disp = rp.getWriter();
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost/dbase";
String uid = "root";
String psw = "root";
Connection con=null;
PreparedStatement ps = null;
ResultSet rs;
try
{
Class.forName(driver);
con = DriverManager.getConnection(url,uid,psw);
ps=con.prepareStatement("SELECT TIMESTAMPDIFF(MONTH,'2014-05-31','2014-07-20') AS tsdiff");
rs = ps.executeQuery();
String title = "Using Time Stamp Difference Function";
String docType ="<!doctype html public \"-//w3c//dtd html 4.0 " + "transitional//en\">\n";
disp.println(docType + "<html>\n" + "<head><title>" + title + "</title></head>\n" +
"<body bgcolor=\"#f4efef\">\n" + "<h1 align=\"center\">" + title + "</h1>\n" + "<ul>\n" +
"<table width=\"50%\" border=\"1\" align=\"center\">\n" + "<th>Result</th>\n"+ "</body> </html>");
while(rs.next())
{
String curr = rs.getString(1);
disp.println("<tr><td align=\"center\">" + curr +"</td></tr>" );
}
}
catch(Exception e)
{
e.printStackTrace();
}
disp.close();
}
public void doPost(HttpServletRequest rq,HttpServletResponse rp)throws IOException,ServletException
{
doGet(rq,rp);
}
}
WEB.xml
<servlet>
<servlet-name>MySqlTimeStampDiffFunc</servlet-name>
<servlet-class>MySqlTimeStampDiffFunc</servlet-class>
</servlet>
<!-- servlet mapping -->
<servlet-mapping>
<servlet-name>MySqlTimeStampDiffFunc</servlet-name>
<url-pattern>/MySqlTimeStampDiffFunc</url-pattern>
</servlet-mapping>