博客
关于我
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/

    你可能感兴趣的文章
    Android APK 重签名
    查看>>
    Mybatis【3】-- Mybatis使用工具类读取配置文件以及从属性读取DB信息
    查看>>
    Mybatis【5】-- Mybatis多种增删改查那些你会了么?
    查看>>
    Mybatis【7】-- Mybatis如何知道增删改是否成功执行?
    查看>>
    Mybatis【9】-- Mybatis占位符#{}和拼接符${}有什么区别?
    查看>>
    计算输入的一句英文语句中单词数
    查看>>
    zabbix系列之十——添加短信告警
    查看>>
    docker复制文件到宿主机
    查看>>
    lvs+keepalive构建高可用集群
    查看>>
    Mysql高可用架构(主从同步)
    查看>>
    mysql主从延迟高的原因
    查看>>
    ATS缓存数据结构
    查看>>
    glob模块
    查看>>
    6 个 Linux 运维典型问题
    查看>>
    Failed to get D-Bus connection: Operation not permitted解决
    查看>>
    oracle无法启动asm实例记录
    查看>>
    取消vim打开文件全是黄色方法
    查看>>
    YAML基础教程
    查看>>
    一个系统部署多个tomcat实例
    查看>>
    HP服务器设置iLO
    查看>>