by Dinesh Thakur Category: Servlet with MySql Database

The Function 'DATE_SUB' will subtract the date with required Interval.

Here in first instance i made a table in database named 'dbase' within the reference of mySql (php myAdmin). I import all the required java packages from java library. I use to make a class named 'MySqlDateSub' which extends the 'HttpServlet'. I use here service()Method which will use to get request from the doGet()Method. Then i loaded all the required drivers for database accessing. Then after i declare the variables like first i declare 'connection' this variable will be responsible for the creating link between the database and the java code. The other variable will be 'resultSet' this will does the job to fetching value from the desired column and rows as required. Then other one I declare 'preparedStatement' that will be responsible for executing the selected query like executeQuery() as (Select DATE_SUB(NOW(),INTERVAL 1 DAY)). After declaring all the variables i use doGet()Method which will use to get output on the web Browser.

I Use 'HTML' code and some tags which will show the output in tabular form on the web browser. 

EXAMLPE

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 MySqlDateSub 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 DATE_SUB(NOW(),INTERVAL 1 DAY)");
                 rs = ps.executeQuery();
              String title = "Date Subtraction";
                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>Date & Time After Subtraction </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>MySqlDateSub</servlet-name>
   <servlet-class>MySqlDateSub</servlet-class>
</servlet>
<!-- servlet mapping -->
<servlet-mapping>
   <servlet-name>MySqlDateSub</servlet-name>
   <url-pattern>/MySqlDateSub</url-pattern>
</servlet-mapping>




About Dinesh Thakur

Dinesh ThakurDinesh Thakur holds an B.SC (Computer Science), MCSE, MCDBA, CCNA, CCNP, A+, SCJP certifications. Dinesh authors the hugely popular blog. Where he writes how-to guides around Computer fundamental , computer software, Computer programming, and web apps. For any type of query or something that you think is missing, please feel free to Contact us.



Related Articles