封装类实现增删改查

上一篇博客,可以看出每一个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>

其余的增删改查代码(上篇:脚本方式实现数据库的增删改查)做相应的改动,大大提高了性能和效率。

转载于:https://www.cnblogs.com/Lia-633/p/7804295.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值