封裝類實現增刪改查


上一篇博客,可以看出每一個jsp頁面都存在數據庫訪問代碼;將連接代碼和SQL語句暴露在頁面中,不利於數據庫安全;連接代碼需要重復書寫,不利於代碼重用,影響程序復用性和軟件的靈活性。因此,將數據庫訪問代碼利用類封裝起來,可以很好的避免這些問題。

在Java Resources/src目錄db_admin包下新建DBCon.java類,用於封裝數據庫的連接。

DBCon類:

package db_admin;

import java.sql.*;

public class DBCon {
    private String dbDriver = "com.mysql.jdbc.Driver";//定義連接數據庫相關變量
    private String dbUrl = "jdbc:mysql://localhost:3306/book?useUnicode=true&characterEncoding=utf-8";
    private String dbUser = "root";
    private String dbPwd = "123456";
    private Connection conn = null;
    public Connection getConnection() {//完成Mysql數據庫驅動的加載后進行數據庫連接
        try {
            Class.forName(dbDriver);
            conn = DriverManager.getConnection(dbUrl,dbUser,dbPwd);
        }catch(ClassNotFoundException e) {
            e.printStackTrace();
        }catch(SQLException e) {
            e.printStackTrace();
        }
        return conn;
    }
    public ResultSet doQurey(String sql) {//實現查詢操作
        ResultSet rs = null;
        conn = this.getConnection();
        try {
            Statement stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
        }catch(Exception e) {
            e.printStackTrace();
        }
        return rs;
    }
    public int doUpdate(String sql) {//實現更新操作
        int res = 0;
        conn = this.getConnection();
        try {
            Statement stmt = conn.createStatement();
            res = stmt.executeUpdate(sql);    
        }catch(Exception e) {
            e.printStackTrace();
        }
        return res;
    }
    public void close() throws SQLException{
        try {
            conn.close();//關閉相關對象,釋放內存
        }catch(Exception e) {
            e.printStackTrace();
        }
    }
}

相應的查詢代碼更改為:

<%@page import="java.sql.*,db_admin.*"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!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=UTF-8">
<title>查看數據庫表中信息</title>
</head>
<body>
<%
DBCon dbc = new DBCon();//創建DBCon對象dbc,調用DBCon的構造函數進行數據庫連接
String sql = "select * from admin order by id";
ResultSet rs = dbc.doQurey(sql);
%>
<table border="1">
<%while(rs.next()){ %>
<tr>
<td><%= rs.getInt("id") %></td>
<td><%= rs.getString("username") %></td>
<td><%= rs.getString("password") %></td>
<td><a href="do_delete.jsp?id=<%= rs.getInt("id")%>">刪除</a></td>
<td><a href="do_edit.jsp?id=<%= rs.getInt("id")%>">編輯</a></td>
</tr>
<%} %>
</table>
<a href="addAdmin.jsp">增加用戶</a>
</body>
</html>

其余的增刪改查代碼(上篇:腳本方式實現數據庫的增刪改查)做相應的改動,大大提高了性能和效率。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM