In this tutorial you will learn how to use bit_length() function of mysql with java servlet
Mysql BIT_LENGTH() Function Example Using Java Servlet
In this tutorial you will learn how to use bit_length() function of mysql with java servlet
BIT_LENGTH() method of mysql, a string is passed into its parameter and then it gives back the length of that string in bits.
Syntax :
bit_length('expression')
Here expression can be a string, a character, special character or numbers.
Now, since I have to use this function in java servlet program, therefore I have created a java servlet class named MysqlBitLengthServlet 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 Next step I am taking an input using the getParameter() method of ServletRequest with the object of HttpServletRequest. In continue we have to establish 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 BIT_LENGTH("+"'"+bt+"'"+")"; (This query will return the length of string for the value input by the user. In this query bt is a variable name that stores the value that is given by the user. getParameter() method is used to take and store the value of this variable in source/java code.) 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 :
BitLength.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>String's length in bit</title> </head> <body> <form method="get" action="MysqlBitLengthServlet"> <table><tr><td>Enter a String <input type="text" name="txtName"/></td></tr> <tr><td align="center"><input type="submit" value="Find BitLength"/> </table> </form> </body> </html>
MysqlBitLengthServlet.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 MysqlBitLengthServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String bt = request.getParameter("txtName"); String className = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://192.168.10.13"; String user = "root"; String password = "root"; Connection con; PreparedStatement ps; ResultSet rs; try { Class.forName(className); con = DriverManager.getConnection(url, user, password); String sql = "SELECT BIT_LENGTH("+"'"+bt+"'"+")"; ps= con.prepareStatement(sql); rs= ps.executeQuery(); while(rs.next()) { sql = rs.getString(1); out.println(sql); } } 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>mysqlStringFunction</display-name> <servlet> <servlet-name>MysqlBitLengthServlet</servlet-name> <servlet-class>MysqlBitLengthServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MysqlBitLengthServlet</servlet-name> <url-pattern>/MysqlBitLengthServlet</url-pattern> </servlet-mapping> </web-app>
Output
When you will execute the above example you will get the output as :
1.
2.
3.
[ 0 ] Comments