Tải bản đầy đủ (.pdf) (6 trang)

Trang JSP gọi hàm xử lý truy vấn dữ liệu MySQL từ class Java

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (517.86 KB, 6 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

<b> Trang JSP gọi hàm xử lý truy vấn dữ liệu MySQL từ class Java </b>


<i> </i>
<b>Dữ liệu: </b>


 Tạo database db_news
 Tạo table categories


<b>Class Java: </b>
Database.java


<b>package</b> nguyenhuuthe;
<b>import</b> java.sql.Connection;
<b>import</b> java.sql.DriverManager;
<b>import</b> java.sql.ResultSet;
<b>import</b> java.sql.Statement;
<b>import</b> java.util.ArrayList;
<b>import</b> java.util.List;


<b>import</b> java.util.logging.Level;
<b>import</b> java.util.logging.Logger;
<b>public</b> <b>class</b> Database {


<b>static</b> <b>final</b> String url =


"jdbc:mysql://localhost:3306/db_news?useUnicode=true&characterEncoding=UTF-8";
<b>static</b> <b>final</b> String username = "root";


<b>static</b> <b>final</b> String password = "123456";
<b>public</b> <b>static</b> Connection conn(){


<b>try</b>{



<i>Class.forName(</i>"com.mysql.jdbc.Driver");


<i>Connection con =DriverManager.getConnection(url, username, password); </i>
<b>return</b> con;


}


</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

<b>return</b> <b>null</b>;
}


}


<b>public</b> <b>static</b> String toUTF8(String isoString)
{


String utf8String = <b>null</b>;
<b>try</b>


{


<b>byte</b>[] stringBytesISO = isoString.getBytes("ISO-8859-1");
utf8String = <b>new</b> String(stringBytesISO, "UTF-8");


}<b>catch</b>(Exception e) {


System.out.println("Unsupported Encoding Exception is: " + e.getMessage());
utf8String = isoString;


}



<b>return</b> utf8String;
}


<b>public</b> <b>static</b> <b>void</b> insertCate(String id, String name) {
<b>try</b> {


<i> Connection con = conn(); </i>


Statement st = con.createStatement();


String sql="insert into categories values ("+ id +", '"+ name +"')";
st.executeUpdate(sql);


st.close();
con.close();
} <b>catch</b> (Exception ex) {


<i> Logger.getLogger(Database.</i><b>class</b>.getName()).log(
Level.SEVERE, <b>null</b>, ex);
}


}


<b>public</b> <b>static</b> List<String> selectCate() {


List<String> list = <b>new</b> ArrayList<String>();
<b>try</b> {


String sql = "select * from categories";


<i> Connection con = conn(); </i>


Statement stmt = con.createStatement();
ResultSet result = stmt.executeQuery(sql);
<b>while</b>(result.next())


{


list.add(result.getString(1));
list.add(result.getString(2));
}


con.close();


} <b>catch</b> (Exception ex) {


<i> Logger.getLogger(Database.</i><b>class</b>.getName()).log(
Level.SEVERE, <b>null</b>, ex);


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

<b>return</b> list;
}


<b>public</b> <b>static</b> <b>void</b> deleteCate(String id) {
<b>try</b> {


String sql = "delete from categories where category_id = "+ id;
<i> Connection con = conn(); </i>


Statement st = con.createStatement();
st.executeUpdate(sql);





st.close();
con.close();


} <b>catch</b> (Exception ex) {


<i> Logger.getLogger(Database.</i><b>class</b>.getName()).log(
Level.SEVERE, <b>null</b>, ex);


}
}
}


add_categories.jsp


<%@page import=<i>"nguyenhuuthe.Database"%></i>


<%@ page contentType=<i>"text/html; charset=UTF-8"</i> pageEncoding=<i>"UTF-8"%></i>
<%@ page import=<i>"java.sql.*"</i> %>


<html>
<head>


<meta http-equiv=<i>"Content-Type"</i> content=<i>"text/html; charset=UTF-8"></i>
<title>Books database</title>


<link rel=<i>"stylesheet"</i> href=<i>"style.css" type</i>=<i>"text/css"></i>


</head>


<body>
<br>


<div class=<i>"navigator"></i>


<a id=<i>"currenttab"</i> href=<i>"add_categories.jsp"></i>Add</a>
<a href=<i>"delete_categories.jsp"></i>Delete</a>


</div>
<%


String id = request.getParameter("id");
String name = request.getParameter("name");
<b>if</b> (id != <b>null</b> && name != <b>null</b>) {


name = nguyenhuuthe.Database.toUTF8(name);
nguyenhuuthe.Database.insertCate(id, name);
}


%>


<br> <br> <br>


<form method=<i>"post"</i> action=<i>"add_categories.jsp"></i>
<table>


<tr>



</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

<td>ID</td><td><input type=<i>"text"</i> name=<i>"id"></td></i>
</tr>


<tr>


<td>Name</td><td><input type=<i>"text"</i> name=<i>"name"></td></i>
</tr>


</table>
<br>


<input type=<i>"submit"</i> value=<i>"submit"></i>
</form>


</body>
</html>


delete_categories.jsp


<%@page contentType=<i>"text/html"</i> pageEncoding=<i>"UTF-8"%></i>
<%@page import=<i>"java.util.*"</i> %>


<html>
<head>


<title>Manager Categories</title>


<link rel=<i>"stylesheet"</i> href=<i>"style.css"</i> type=<i>"text/css"></i>



</head>
<body>
<%


Enumeration<String> names = request.getParameterNames();
<b>while</b> (names.hasMoreElements()) {


String name = (String) names.nextElement();
StringBuffer sb = <b>new</b> StringBuffer(name);
sb.deleteCharAt(0);


nguyenhuuthe.Database.deleteCate(sb.toString());
}


%>
<br>


<div class=<i>"navigator"></i>


<a href=<i>"add_categories.jsp"></i>Add</a>


<a id=<i>"currenttab"</i> href=<i>"delete_categories.jsp"></i>Delete</a>
</div>


<br> <br> <br>


<form action=<i>"delete_categories.jsp"</i> method=<i>"post"></i>
<table>


<tr>



<th>ID</th>
<th>Name</th>
<th>Delete</th>
</tr>


<%


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>int</b> id = 0;


String box = <b>null</b>;


Iterator<String> it = list.iterator();
<b>while</b> (it.hasNext()) {


out.print("<tr>");
out.print("<td>");


id = Integer.parseInt(it.next());
out.print(id);


out.print("</td>");
out.print("<td>");
out.print(it.next());
out.print("</td>");


out.print("<td>");


box = "<input name=r" + id + " type='checkbox'>";
out.print(box);



out.print("</td>");
out.print("</tr>");
}


%>
</table>

<br>


<input type=<i>"submit"</i> value=<i>"Delete"></i>
</form>


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6></div>

<!--links-->

×