博客
关于我
JDBC-ORM封装管理零散数据
阅读量:331 次
发布时间:2019-03-04

本文共 3999 字,大约阅读时间需要 13 分钟。

ORM(Object-Relational Mapping,对象关系映射)是一种用于数据库管理的技术,通过将数据库中的零散数据进行封装管理,提高数据处理效率。传统数据库操作方式可能导致数据丢失或无法调用,这是因为每次查询都直接处理字符串变量,容易被覆盖。

为了解决这一问题,将多个数据封装到一个对象中,再将多个对象存储在集合中,形成一个规范化的数据处理流程。这样既保证了数据的一致性,又方便了数据的复用和管理。

以下是实现这一目标的具体代码和工具类:

  • 数据封装类register.java

    package jdbc;public class register {    private String id;    private String user;    private String password;    public register() {        // 默认构造函数,无参数调用    }    public register(String id, String user, String password) {        super();        this.id = id;        this.user = user;        this.password = password;    }    // getter和setter方法    public String getId() { return id; }    public void setId(String id) { this.id = id; }    public String getUser() { return user; }    public void setUser(String user) { this.user = user; }    public String getPassword() { return password; }    public void setPassword(String password) { this.password = password; }    @Override    public String toString() {        return "register [id=" + id + ", user=" + user + ", password=" + password + "]";    }}
  • 数据库连接工具类dbutils.java

    package jdbc;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.Properties;public class dbutils {    private static final Properties PROPERTIES = new Properties();    static {        InputStream is = dbutils.class.getResourceAsStream("/db.properties");        try {            PROPERTIES.load(is);            Class.forName(PROPERTIES.getProperty("driver"));        } catch (ClassNotFoundException e) {            e.printStackTrace();        } catch (IOException e1) {            e1.printStackTrace();        }    }    public static Connection GetConnection() {        Connection connection = null;        try {            connection = DriverManager.getConnection(                PROPERTIES.getProperty("url"),                PROPERTIES.getProperty("user"),                PROPERTIES.getProperty("password")            );        } catch (SQLException e) {            e.printStackTrace();        }        return connection;    }    public static void CloseAll(Connection connection, Statement statement, ResultSet resultSet) {        try {            if (resultSet != null) {                resultSet.close();            }            if (statement != null) {                statement.close();            }            if (connection != null) {                connection.close();            }        } catch (SQLException e) {            e.printStackTrace();        }    }}
  • 主程序testORM.java

    package jdbc;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;public class testORM {    public static void main(String[] args) {        Connection connection = null;        PreparedStatement statement = null;        ResultSet resultSet = null;        List
    list = new ArrayList<>(); try { connection = dbutils.GetConnection(); statement = connection.prepareStatement("select * from register"); resultSet = statement.executeQuery(); while (resultSet.next()) { String id = resultSet.getString(1); String user = resultSet.getString(2); String password = resultSet.getString(3); register register1 = new register(id, user, password); list.add(register1); } } catch (SQLException e) { e.printStackTrace(); } for (register register2 : list) { System.out.println(register2); } dbutils.CloseAll(connection, statement, resultSet); }}
  • 数据库配置文件db.properties

    driver=com.mysql.cj.jdbc.Driverurl=jdbc:mysql://localhost:3306/loginuser=rootpassword=981002
  • 通过上述实现,可以完成从数据库中提取零散数据的封装管理。代码采用了重用性方案,通过工具类dbutils完成数据库连接和资源管理,确保了代码的可维护性和复用性。封装类register通过将数据库字段一一对应到类属性,实现了对象化的数据管理。

    转载地址:http://jgbe.baihongyu.com/

    你可能感兴趣的文章
    博客园上海俱乐部4月份活动通知邀请函已经发出!
    查看>>
    上周热点回顾(5.24-5.30)
    查看>>
    Internet Explorer 10 专题上线
    查看>>
    云计算之路-阿里云上:0:25~0:40网络存储故障造成网站不能正常访问
    查看>>
    网站故障公告1:使用阿里云RDS之后一个让人欲哭无泪的下午
    查看>>
    上周热点回顾(12.31-1.6)
    查看>>
    上周热点回顾(1.21-1.27)
    查看>>
    上周热点回顾(6.3-6.9)
    查看>>
    上周热点回顾(8.12-8.18)
    查看>>
    【故障公告】升级阿里云 RDS SQL Server 实例故障经过
    查看>>
    蹒跚来迟:新版博客后台上线公测
    查看>>
    上周热点回顾(9.16-9.22)
    查看>>
    上周热点回顾(11.4-11.10)
    查看>>
    [网站公告]11月26日00:00-04:00阿里云RDS升级
    查看>>
    [网站公告]又拍云API故障造成图片无法上传(已恢复)
    查看>>
    上周热点回顾(12.16-12.22)
    查看>>
    云计算之路-阿里云上:对“黑色30秒”问题的猜想
    查看>>
    云计算之路-阿里云上:“黑色30秒”走了,“黑色1秒”来了,真相也许大白了
    查看>>
    云计算之路-阿里云上:奇怪的CPU 100%问题
    查看>>
    云计算之路-阿里云上:2014年6月12日12点IIS请求到达量突降
    查看>>