本文目录导读:
实验背景
随着互联网技术的飞速发展,数据库技术在各行各业中的应用越来越广泛,Java作为一种跨平台、功能强大的编程语言,在数据库开发领域具有很高的应用价值,本实验旨在通过Java编程语言,结合JDBC技术,实现数据库的连接、查询、插入、更新和删除等操作,从而提高对数据库操作的理解和掌握。
实验目的
1、掌握JDBC技术的应用方法,了解其原理和操作流程;
图片来源于网络,如有侵权联系删除
2、学会使用Java编程语言操作数据库,实现数据的增删改查;
3、提高数据库编程能力,为以后在实际项目中应用数据库技术打下基础。
实验环境
1、操作系统:Windows 10
2、开发工具:IntelliJ IDEA
3、数据库:MySQL 5.7
4、驱动包:mysql-connector-java
1、数据库连接
图片来源于网络,如有侵权联系删除
在Java中,要操作数据库,首先需要建立与数据库的连接,以下是使用JDBC连接MySQL数据库的示例代码:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class JDBCConnect { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String user = "root"; String password = "root"; Connection conn = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(url, user, password); System.out.println("连接成功!"); } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } finally { try { if (conn != null) { conn.close(); } } catch (SQLException e) { e.printStackTrace(); } } } }
2、数据查询
在连接数据库后,可以使用SQL语句查询数据,以下是一个查询示例:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class JDBCSQL { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String user = "root"; String password = "root"; Connection conn = null; PreparedStatement ps = null; ResultSet rs = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(url, user, password); String sql = "SELECT * FROM students WHERE age > ?"; ps = conn.prepareStatement(sql); ps.setInt(1, 18); rs = ps.executeQuery(); while (rs.next()) { System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name") + ", Age: " + rs.getInt("age")); } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } finally { try { if (rs != null) { rs.close(); } if (ps != null) { ps.close(); } if (conn != null) { conn.close(); } } catch (SQLException e) { e.printStackTrace(); } } } }
3、数据插入
以下是一个数据插入示例:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class JDBCEntity { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String user = "root"; String password = "root"; Connection conn = null; PreparedStatement ps = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(url, user, password); String sql = "INSERT INTO students (name, age) VALUES (?, ?)"; ps = conn.prepareStatement(sql); ps.setString(1, "张三"); ps.setInt(2, 20); int result = ps.executeUpdate(); if (result > 0) { System.out.println("插入成功!"); } else { System.out.println("插入失败!"); } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } finally { try { if (ps != null) { ps.close(); } if (conn != null) { conn.close(); } } catch (SQLException e) { e.printStackTrace(); } } } }
4、数据更新
以下是一个数据更新示例:
图片来源于网络,如有侵权联系删除
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class JDBCEntityUpdate { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String user = "root"; String password = "root"; Connection conn = null; PreparedStatement ps = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(url, user, password); String sql = "UPDATE students SET age = ? WHERE id = ?"; ps = conn.prepareStatement(sql); ps.setInt(1, 21); ps.setInt(2, 1); int result = ps.executeUpdate(); if (result > 0) { System.out.println("更新成功!"); } else { System.out.println("更新失败!"); } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } finally { try { if (ps != null) { ps.close(); } if (conn != null) { conn.close(); } } catch (SQLException e) { e.printStackTrace(); } } } }
5、数据删除
以下是一个数据删除示例:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class JDBCEntityDelete { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String user = "root"; String password = "root"; Connection conn = null; PreparedStatement ps = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(url, user, password); String sql = "DELETE FROM students WHERE id = ?"; ps = conn.prepareStatement(sql); ps.setInt(1, 1); int result = ps.executeUpdate(); if (result > 0) { System.out.println("删除成功!"); } else { System.out.println("删除失败!"); } } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } finally { try { if (ps != null) { ps.close(); } if (conn != null) { conn.close(); } } catch (SQLException e) { e.printStackTrace(); } } } }
通过本次实验,我们学习了使用Java编程语言结合JDBC技术操作数据库的方法,通过连接、查询、插入、更新和删除等操作,我们对数据库编程有了更深入的了解,在实际项目中,我们需要根据实际需求灵活运用这些技术,以提高项目开发效率。
在实验过程中,我们遇到了一些问题,如数据库连接失败、SQL语句错误等,通过查阅资料和请教他人,我们逐步解决了这些问题,这使我们认识到,在数据库编程中,良好的问题解决能力和团队协作精神至关重要。
本次实验使我们受益匪浅,为今后在实际项目中应用数据库技术打下了坚实的基础,在今后的学习和工作中,我们将继续努力,不断提高自己的数据库编程能力。
标签: #java数据库编辑的实验报告
评论列表