首页
关于
留言
壁纸
更多
直播
统计
友链
Search
1
好用的软件分享
573 阅读
2
最新Navicat 15 for MySQL破解+教程 正确破解步骤
294 阅读
3
面试常见问题100问
268 阅读
4
一个人要走的时候,千万别问原因
203 阅读
5
直击心灵的唯美句子
171 阅读
日常记录
后端
PHP
NodeJs
Python
Java
前端
JavaScript
数据库
MySQL
服务器
美文
微信开发
微信公众号
微信小程序
编程
登录
Search
标签搜索
mysql
面试
python
django
express
axios
thinkphp
PHP
励志
哲理
九九乘法表
node
cors
跨域
唯美句子
美文
文件上传
ajax
算法
jwt
公子初心
累计撰写
80
篇文章
累计收到
12
条评论
首页
栏目
日常记录
后端
PHP
NodeJs
Python
Java
前端
JavaScript
数据库
MySQL
服务器
美文
微信开发
微信公众号
微信小程序
编程
页面
关于
留言
壁纸
直播
统计
友链
搜索到
2
篇与
的结果
2023-12-11
JDBC
1. JDBC 概念JDBC 就是使用 Java 语言操作关系型数据库的一套 API全称:(Java DataBase Connectivity) Java 数据库连接2. JDBC 本质官方 (sun 公司) 定义的一套操作所有关系型数据库的规则,即接口各个数据库厂商去实现这套接口,提供数据库驱动 iar 包我们可以使用这套接口 (JDBC) 编程,真正执行的代码是驱动 iar 包中的实现类 同一套 Java 代码,操作不同的关系型数据库 3.JDBC 好处各数据库厂商使用相同的接口,Java 代码不需要针对不同数据库分别开发可随时替换底层数据库,访问数据库的 Java 代码基本不变4. 使用过程4.1 创建工程,导入驱动 jar 包创建项目创建目录命名 lib 用于存放驱动 jar 包当前工程识别 jar 包 右键 add as Library4.src 右键新建类文件import java.sql.*; /** * JDBC 实现 MySQL 增删改查示例 */ public class JdbcDemo { // 数据库连接信息(根据你的实际环境修改) private static final String URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC&characterEncoding=utf8"; private static final String USER = "root"; // 你的数据库用户名 private static final String PASSWORD = "root"; // 你的数据库密码 // 获取数据库连接 private static Connection getConnection() { Connection conn = null; try { // 1. 加载驱动(MySQL 8.0+ 可省略,自动加载) Class.forName("com.mysql.cj.jdbc.Driver"); // 2. 获取连接 conn = DriverManager.getConnection(URL, USER, PASSWORD); } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } return conn; } // 新增数据(Create) public static void insertUser(String name, int age, String email) { String sql = "INSERT INTO user(name, age, email) VALUES (?, ?, ?)"; try (Connection conn = getConnection(); // 使用 PreparedStatement 防止 SQL 注入 PreparedStatement pstmt = conn.prepareStatement(sql)) { // 设置参数(? 占位符从 1 开始) pstmt.setString(1, name); pstmt.setInt(2, age); pstmt.setString(3, email); // 执行增删改操作使用 executeUpdate(),返回受影响的行数 int affectedRows = pstmt.executeUpdate(); System.out.println("新增成功,受影响行数:" + affectedRows); } catch (SQLException e) { e.printStackTrace(); } } // 查询数据(Read) public static void queryUsers() { String sql = "SELECT id, name, age, email FROM user"; try (Connection conn = getConnection(); PreparedStatement pstmt = conn.prepareStatement(sql); // 执行查询操作使用 executeQuery(),返回 ResultSet 结果集 ResultSet rs = pstmt.executeQuery()) { System.out.println("===== 查询结果 ====="); // 遍历结果集 while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); int age = rs.getInt("age"); String email = rs.getString("email"); System.out.printf("id: %d, 姓名: %s, 年龄: %d, 邮箱: %s%n", id, name, age, email); } } catch (SQLException e) { e.printStackTrace(); } } // 修改数据(Update) public static void updateUser(int id, int newAge) { String sql = "UPDATE user SET age = ? WHERE id = ?"; try (Connection conn = getConnection(); PreparedStatement pstmt = conn.prepareStatement(sql)) { pstmt.setInt(1, newAge); pstmt.setInt(2, id); int affectedRows = pstmt.executeUpdate(); System.out.println("修改成功,受影响行数:" + affectedRows); } catch (SQLException e) { e.printStackTrace(); } } // 删除数据(Delete) public static void deleteUser(int id) { String sql = "DELETE FROM user WHERE id = ?"; try (Connection conn = getConnection(); PreparedStatement pstmt = conn.prepareStatement(sql)) { pstmt.setInt(1, id); int affectedRows = pstmt.executeUpdate(); System.out.println("删除成功,受影响行数:" + affectedRows); } catch (SQLException e) { e.printStackTrace(); } } // 主方法测试 public static void main(String[] args) { // 1. 新增一条数据 insertUser("李思", 26, "zhangsan@test.com"); // 2. 查询所有数据 queryUsers(); // 3. 修改 id=1 的用户年龄为 26 updateUser(1, 26); // 4. 再次查询验证修改结果 queryUsers(); // 5. 删除 id=1 的用户 deleteUser(1); // 6. 最终查询验证删除结果 queryUsers(); } }
2023年12月11日
77 阅读
0 评论
0 点赞
2023-09-30
Java学习之~ArrayList实现学生管理系统
1.Student类文件 Student.javapackage cc.itnan.study; public class Student { private String stuNum; private String stuName; private int age; private String brithDay; public Student() { } public Student(String stuNum, String stuName, int age, String brithDay) { this.stuNum = stuNum; this.stuName = stuName; this.age = age; this.brithDay = brithDay; } /** * 获取 * @return stuNum */ public String getStuNum() { return stuNum; } /** * 设置 * @param stuNum */ public void setStuNum(String stuNum) { this.stuNum = stuNum; } /** * 获取 * @return stuName */ public String getStuName() { return stuName; } /** * 设置 * @param stuName */ public void setStuName(String stuName) { this.stuName = stuName; } /** * 获取 * @return age */ public int getAge() { return age; } /** * 设置 * @param age */ public void setAge(int age) { this.age = age; } /** * 获取 * @return brithDay */ public String getBrithDay() { return brithDay; } /** * 设置 * @param brithDay */ public void setBrithDay(String brithDay) { this.brithDay = brithDay; } } 2.StudentTest类文件 StudentTest.javapackage cc.itnan.study; import java.util.ArrayList; import java.util.Scanner; public class StudentTest { public static void main(String[] args) { ArrayList<Student> list = new ArrayList<>(); // list.add(new Student("1001","小明",18,"2000")); // list.add(new Student("1002","大明",19,"2001")); // list.add(new Student("1003","老明",20,"2002")); while (true) { System.out.println("---------------------欢迎来到学生管理系统---------------------"); System.out.println("1.添加学生"); System.out.println("2.删除学生"); System.out.println("3.修改学生"); System.out.println("4.查看学生"); System.out.println("5.退出"); Scanner sc = new Scanner(System.in); int chioce = sc.nextInt(); switch (chioce){ case 1: System.out.println("添加学生"); addStudent(list); break; case 2: System.out.println("删除学生"); deleteStudent(list); break; case 3: System.out.println("修改学生"); updateStudent(list); break; case 4: System.out.println("查看学生"); queryStudentInfo(list); break; case 5: System.out.println("再见!"); System.exit(0); break; default: System.out.println("输入有误,请检查!"); } } } private static void addStudent(ArrayList<Student> list) { Scanner sc = new Scanner(System.in); String stuNum; while (true){ System.out.println("请输入学生学号:"); stuNum = sc.next(); if(getIndexById(stuNum,list) == -1){ break; } } System.out.println("请输入学生姓名:"); String stuName = sc.next(); System.out.println("请输入学生年龄:"); int age = sc.nextInt(); System.out.println("请输入学生生日:"); String birthDay = sc.next(); list.add(new Student(stuNum,stuName,age,birthDay)); System.out.println("添加成功!"); } private static void updateStudent(ArrayList<Student> list) { Scanner sc = new Scanner(System.in); System.out.println("请输入您要修改的学生id:"); String stuNum = sc.next(); int indexById = getIndexById(stuNum, list); System.out.println(indexById); if(indexById>=0){ // 修改 System.out.println("请输入学生姓名:"); String stuName = sc.next(); System.out.println("请输入学生年龄:"); int age = sc.nextInt(); System.out.println("请输入学生生日:"); String birthDay = sc.next(); list.set(indexById,new Student(stuNum,stuName,age,birthDay)); System.out.println("修改成功"); }else{ // 查无此人 System.out.println("查无此人,无法修改"); } } private static void deleteStudent(ArrayList<Student> list) { Scanner sc = new Scanner(System.in); System.out.println("请输入您要删除到底学生学号:"); String stuNum = sc.next(); int indexById = getIndexById(stuNum, list); System.out.println(indexById); if(indexById>=0){ // 删除 list.remove(indexById); System.out.println("删除成功"); }else{ // 查无此人 System.out.println("查无此人,无法删除"); } } private static int getIndexById(String id, ArrayList<Student> list) { for (int i = 0; i < list.size(); i++) { Student stu = list.get(i); if(id.equals(stu.getStuNum())){ return i; } } return -1; } private static void queryStudentInfo(ArrayList<Student> list) { if(list.size()==0){ System.out.println("没有学生信息,请添加!"); }else{ System.out.println("学号:\t姓名\t年龄\t出生日期\t"); for (int i = 0; i < list.size(); i++) { Student stu = list.get(i); System.out.println(stu.getStuNum()+"\t"+stu.getStuName()+"\t"+stu.getAge()+"\t"+stu.getBrithDay()); } } } }
2023年09月30日
66 阅读
0 评论
0 点赞