In this tutorial you will learn how can timestamp() function of mysql be used in java servlet
Mysql TIMESTAMP() Function example using java servlet
In this tutorial you will learn how can timestamp() function of mysql be used in java servlet
TIMESTAMP function of mysql takes date/datetime expression as argument in its parameter and gives back a datetime value. If this function uses the single date argument then it returns a datetime value (as I give the example with first query) and if it uses the two arguments then at first it adds the second argument with the first argument and then gives back a datetime value (as I give the example with second query).
Syntax :
1. timestamp(expr);
Here the 'expr' is a date/datetime.
2. timestamp(expr1, expr2);
Here the 'expr1' is a time/datetime and 'expr2' is a time expression.
NOTE : If the argument of the function type 1. is only date then it simply returns a datetime value
Now, since I have to use this function in java servlet program, therefore I have created a java servlet class named MysqlTimestampServlet 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 two queries 1. "SELECT TIMESTAMP('2011-08-23') AS TIMESTAMP" (This query will return the output as 2011-08-23 00:00:00.0 ) and 2. "SELECT TIMESTAMP('2011-08-23 12:28:30', '00:31:30') AS TIMESTAMP" (This query will return the output as 2011-08-23 13:00:00) 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 :
MysqlTimestampServlet.java
import java.io.IOException; import java.io.PrintWriter; import java.sql.SQLException; import java.sql.DriverManager; 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 MysqlTimestampServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html"); PrintWriter out = response.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 TIMESTAMP('2011-08-23') AS TIMESTAMP"; String sql1 = "SELECT TIMESTAMP('2011-08-23 12:28:30', '00:31:30') AS TIMESTAMP"; Connection con; PreparedStatement ps, ps1; ResultSet rs, rs1; try { Class.forName(className); con = DriverManager.getConnection(url, user, password); ps = con.prepareStatement(sql); rs = ps.executeQuery(); ps1 = con.prepareStatement(sql1); rs1 = ps1.executeQuery(); out.println("<table>"); out.println("<tr>"); out.println("<td><b>TIMESTAMP</b></td>"); out.println("</tr>"); while(rs.next()) { String timeStamp = rs.getString(1); out.println("<tr>"); out.println("<td>"+timeStamp+"</td>"); out.println("</tr>"); } out.println("<tr>"); out.println("<td><b>TIMESTAMP</b></td>"); out.println("</tr>"); while(rs1.next()) { String timeStamp1 = rs1.getString(1); out.println("<tr>"); out.println("<td>"+timeStamp1+"</td>"); out.println("</tr>"); } out.println("</table>"); } catch(SQLException sx) { out.println(sx); } catch(ClassNotFoundException cx) { out.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>MysqlTimestampServlet</servlet-name> <servlet-class>MysqlTimestampServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MysqlTimestampServlet</servlet-name> <url-pattern>/MysqlTimestampServlet</url-pattern> </servlet-mapping> </web-app>
Output :
When you will execute the above example you will get the output as :
[ 0 ] Comments