MySql EXTRACT Function Example using Java Servlet

MySql EXTRACT Function Example using Java Servlet


Posted in : Java Posted on : August 11, 2011 at 5:56 PM Comments : [ 0 ]

In this tutorial you will learn how to use mysql extract() function in Java Servlet.

MySql EXTRACT Function Example using Java Servlet

In this tutorial you will learn how to use mysql extract() function in Java Servlet.

EXTRACT() function of mysql returns a part of date or datetime by extracting.

Syntax of extract() function :

EXTRACT(unit FROM date);

Here the argument unit could be unit of time(hour, microsecond, second, minute, etc), date(day, month, year) etc. and the argument 'date' is a date or datetime. The format of date should be 'yyyy-mm-dd'.

Now, since I have to use this function in java servlet program, therefore I have created a java servlet class named MysqlExtractServlet which extends the HttpServlet class. In the body of class I overridden the method doGet() and created an objects of HttpServletRequest and HttpServletResponse into its parameter. Inside the doGet() method first I set the mime type that in which format the browser will show the output. In the next line I used the getWriter() method of ServletResponse interface with the object of HttpServletResponse. HttpServletResponse interface extends this method from the ServletResponse. In continue we have to make a connection between java code and database system. So, since I am using Mysql in the example given below therefore, I am loading the driver of mysql and make a connection by using the getConnection() method of DriverManager class. It returns a Connection. Further I am passing the query "SELECT now(),extract(second from now());" (In this query now() function will return the current system date and time and the extract() function will return the 'second' after extracting from the time displayed by now() function ) into the parameter of prepareStatement() method of Connection interface which gives an object of PreparedStatement interface. In the next line I used the executeQuery() method of PreparedStatement interface which returns a ResultSet object that holds the result of query. At last I have extracted the result from the ResultSet object.

Example :

MysqlExtractServlet.java

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class MysqlExtractServlet extends HttpServlet
{
  public void doGet(HttpServletRequest req, HttpServletResponse res)
   throws IOException, ServletException
   {
	res.setContentType("text/html");
	PrintWriter pw = res.getWriter();
	String className = "com.mysql.jdbc.Driver";
	String url = "jdbc:mysql://192.168.10.13/data";
	String user = "root";
	String password = "root";
	String sql = "SELECT now(),extract(second from now());";
	Connection con;
	PreparedStatement ps;
	ResultSet rs;
	
	try
	{
	  Class.forName(className);
	  con = DriverManager.getConnection(url, user, password);
	  ps = con.prepareStatement(sql);
	  rs = ps.executeQuery();
	  
	  pw.println("<table><tr>");
	  pw.println("<td><b>now()</b></td>");
	  pw.println("<td><b>extract(second from now())</b></td>");
	  pw.println("</tr>");
	  
	  while(rs.next())
	  {
		String now = rs.getString(1);
		String extractNow = rs.getString(2);
		pw.println("<tr>");
		pw.println("<td>"+now+"</td>");
		pw.println("<td width=50%>"+extractNow+"</td>");
		pw.println("</tr>");
	  }
	  pw.println("</table>");
	}
	catch(SQLException sx)
	{
	  pw.println(sx);
	}
	catch(ClassNotFoundException cx)
	{
	  pw.println(cx);
	}
   }
  }  

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>mysqlDate</display-name>

<servlet>
<servlet-name>MysqlExtractServlet</servlet-name>
<servlet-class>MysqlExtractServlet</servlet-class>
</servlet>


<servlet-mapping>
<servlet-name>MysqlExtractServlet</servlet-name>
<url-pattern>/MysqlExtractServlet</url-pattern>
</servlet-mapping>

</web-app>

Output :

When you will execute the above example you will get the output as :

Download Source Code

Go to Topic «PreviousHomeNext»

Your Comment:


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 

 
Tutorial Topics