Java数据库操作实战:属性文件、工具类与预处理语句

本文将以水果信息管理为例,介绍如何使用Java进行数据库操作,涵盖创建数据表、使用属性文件配置连接信息、构建数据库连接工具类以及利用预处理语句插入数据等方面,旨在帮助读者掌握安全、高效的数据库操作技巧。

1. 创建水果信息表

首先,我们需要在数据库中创建一个用于存储水果信息的表。以下是一个简单的示例,您可以根据实际需求进行修改:sqlcreate table fruit( number varchar(10) primary key, fruitname varchar(20), price double, unit varchar(4));

该表包含四个字段:

  • number: 水果编号,主键,类型为varchar(10)- fruitname: 水果名称,类型为varchar(20)- price: 水果价格,类型为double- unit: 水果单位,类型为varchar(4)

2. 使用属性文件配置数据库连接

为了提高代码的可维护性和安全性,我们将数据库连接信息存储在属性文件中。创建一个名为fruit.properties的文件,并在其中添加以下内容:

url=jdbc:mysql://localhost:3306/db_nameusername=usernamepassword=password

请将db_nameusernamepassword替换为您的实际数据库连接信息。

3. 构建数据库连接工具类

为了方便地进行数据库操作,我们创建一个数据库连接工具类DBUtil.java,用于读取属性文件中的配置信息,并提供获取数据库连接和关闭连接的方法:javaimport java.io.FileInputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.Properties;

public class DBUtil { private static Connection conn = null;

public static Connection getConnection() {        if (conn != null) {            return conn;        }

    try {            Properties props = new Properties();            props.load(new FileInputStream('fruit.properties'));

        String url = props.getProperty('url');            String username = props.getProperty('username');            String password = props.getProperty('password');

        conn = DriverManager.getConnection(url, username, password);        } catch (Exception e) {            e.printStackTrace();        }

    return conn;    }

public static void closeConnection() {        if (conn != null) {            try {                conn.close();            } catch (Exception e) {                e.printStackTrace();            }        }    }}

4. 创建Fruit类并使用预处理语句插入数据

接下来,我们创建一个Fruit类来表示水果信息,并在其中使用预处理语句将数据插入到数据库中。javaimport java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;

public class Fruit { private String number; private String fruitName; private double price; private String unit;

public Fruit(String number, String fruitName, double price, String unit) {        this.number = number;        this.fruitName = fruitName;        this.price = price;        this.unit = unit;    }

public void insertFruit() {        Connection conn = null;        PreparedStatement pstmt = null;

    try {            conn = DBUtil.getConnection();            String sql = 'INSERT INTO fruit (number, fruitname, price, unit) VALUES (?, ?, ?, ?)';            pstmt = conn.prepareStatement(sql);            pstmt.setString(1, number);            pstmt.setString(2, fruitName);            pstmt.setDouble(3, price);            pstmt.setString(4, unit);            pstmt.executeUpdate();        } catch (Exception e) {            e.printStackTrace();        } finally {            try {                if (pstmt != null) {                    pstmt.close();                }            } catch (Exception e) {                e.printStackTrace();            }        }    }

public static void main(String[] args) {        Fruit fruit = new Fruit('1', '苹果', 8.0, 'kg');        fruit.insertFruit();        DBUtil.closeConnection();    }}

Fruit类中,insertFruit()方法使用预处理语句将水果信息插入到数据库中。预处理语句可以有效防止SQL注入攻击,提高代码的安全性。

总结

本文介绍了如何使用Java进行数据库操作,包括创建数据表、使用属性文件配置连接信息、构建数据库连接工具类以及利用预处理语句插入数据。通过合理地组织代码和使用合适的技术,可以提高代码的可读性、可维护性和安全性。

Java数据库操作:属性文件、工具类与预处理语句实战

原文地址: https://www.cveoy.top/t/topic/mVt 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录