java实验七——jdbc数据库使用(代码片段)

ALAN_CF ALAN_CF     2023-01-13     705

关键词:

实验结果

1、数据查询

"C:\\Program Files\\Java\\jdk-16.0.2\\bin\\java.exe" "-javaagent:D:\\IDEA\\IntelliJ IDEA 2021.2\\lib\\idea_rt.jar=62520:D:\\IDEA\\IntelliJ IDEA 2021.2\\bin" -Dfile.encoding=UTF-8 -classpath E:\\CODING__ALAN_CF\\JAVA\\Experimet_Java\\out\\production\\Experimet_Java;E:\\CODING__ALAN_CF\\JAVA\\mysql-connector-java-8.0.23\\mysql-connector-java-8.0.23.jar EX7.Main
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
1
*****1、查询全表数据*****
*****2、单个参数查询*****
*****3、输入语句查询*****
1
ALAN	M	15	
friend	m	15	
frank	m	16	
student	m	10	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
1
*****1、查询全表数据*****
*****2、单个参数查询*****
*****3、输入语句查询*****
2
*****1、按姓名查询*****
*****2、按性别查询*****
*****3、按年龄查询*****
1
请输入姓名:
frank
frank	m	16	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
1
*****1、查询全表数据*****
*****2、单个参数查询*****
*****3、输入语句查询*****
2
*****1、按姓名查询*****
*****2、按性别查询*****
*****3、按年龄查询*****
2
请输入性别:
m
friend	m	15	
frank	m	16	
student	m	10	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
1
*****1、查询全表数据*****
*****2、单个参数查询*****
*****3、输入语句查询*****
2
*****1、按姓名查询*****
*****2、按性别查询*****
*****3、按年龄查询*****
3
请输入年龄:
10
student	m	10	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
1
*****1、查询全表数据*****
*****2、单个参数查询*****
*****3、输入语句查询*****
3
请输入SQL语句:
select * from student_x where name='frank';
frank	m	16	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
5

Process finished with exit code 0

2、数据插入

****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
2
*****1、输入具体SQL语句进行数据插入*****
*****2、输入字段参数进行数据插入   *****
2
请输入要插入数据的内容
***Name***Sex***Age***
studentx fm 19
插入新记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
student	m	10	
studentx	fm	19	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
2
*****1、输入具体SQL语句进行数据插入*****
*****2、输入字段参数进行数据插入   *****
1
请输入SQL语句:
insert into student_x values('girlfriend','fm',20);
插入新记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
student	m	10	
studentx	fm	19	
girlfriend	fm	20	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
5

Process finished with exit code 0

3、数据修改

****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
3
*****1、输入具体SQL语句进行数据修改*****
*****2、输入字段参数进行数据修改   *****
2
*****1、只改名字*****
*****2、只改性别*****
*****3、只改年龄*****
1
*****name_new*****name_old*****
输入参数:
wife girlfriend
修改记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
student	m	10	
studentx	fm	19	
wife	fm	20	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
3
*****1、输入具体SQL语句进行数据修改*****
*****2、输入字段参数进行数据修改   *****
2
*****1、只改名字*****
*****2、只改性别*****
*****3、只改年龄*****
2
*****sex_new*****name*****
输入参数:
fm student
修改记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
student	fm	10	
studentx	fm	19	
wife	fm	20	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
3
*****1、输入具体SQL语句进行数据修改*****
*****2、输入字段参数进行数据修改   *****
2
*****1、只改名字*****
*****2、只改性别*****
*****3、只改年龄*****
3
*****age_new*****name*****
输入参数:
21 wife
修改记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
student	fm	10	
studentx	fm	19	
wife	fm	21	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
3
*****1、输入具体SQL语句进行数据修改*****
*****2、输入字段参数进行数据修改   *****
1
请输入SQL语句:
update student_x set name='mywife' where name='wife';
修改记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
student	fm	10	
studentx	fm	19	
mywife	fm	21	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
5

Process finished with exit code 0

4、数据删除

****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
4
*****1、输入具体SQL语句进行数据删除*****
*****2、输入字段参数进行数据删除   *****
2
输入姓名,删除该行
mywife
删除记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
student	fm	10	
studentx	fm	19	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
4
*****1、输入具体SQL语句进行数据删除*****
*****2、输入字段参数进行数据删除   *****
1
请输入SQL语句:
delete from student_x where sex='fm';
删除记录完成,现在该表的数据如下:
ALAN	M	15	
friend	m	15	
frank	m	16	
****************选项****************
********1、数据查询********
********2、数据插入********
********3、数据修改********
********4、数据删除********
********5、退出系统********
5

Process finished with exit code 0

源代码

Main类,程序开始于执行Main类的main方法

package EX7;

import java.util.Scanner;

/**
 * @author 15328
 */
public class Main 

    protected String string_sql;
    protected String forname;
    protected String url;
    protected String user;
    protected String password;

    protected static final String string_sql_x = "select * from student_x";
    protected static final String forname_x = "com.mysql.cj.jdbc.Driver";
    protected static final String url_x = "jdbc:mysql://localhost:3306/test_db";
    protected static final String user_x = "root";
    protected static final String password_x = "123456";

    public Main(String string_sql, String forname, String url, String user, String password) 
        this.string_sql = string_sql;
        this.forname = forname;
        this.url = url;
        this.user = user;
        this.password = password;
    


    public static void main(String[] args) throws Exception 
        /**查询对象,用于查询全表*/
        StatementExcute statementExcute = new StatementExcute(
                "select * from student_x", forname_x,url_x,user_x,password_x);

        PreparedStatementExecuteInsert preparedStatementExecuteInsert = new PreparedStatementExecuteInsert(
                "insert into student_x values(?,?,?);",forname_x, url_x,user_x,password_x);

        StatementExcuteUpdate statementExcuteUpdate = new StatementExcuteUpdate(
                "", forname_x,url_x,user_x,password_x);

        PreparedStatementExecuteDelete preparedStatementExecuteDelete = new PreparedStatementExecuteDelete(
                "delete from student_x where name=?;", forname_x,url_x,user_x,password_x);


        PreparedStatementExcuteUpdate preparedStatementExcuteUpdate1 = new PreparedStatementExcuteUpdate(
                "update student_x set name=? where name=?",forname_x, url_x,user_x,password_x
        );
        PreparedStatementExcuteUpdate preparedStatementExcuteUpdate2 = new PreparedStatementExcuteUpdate(
                "update student_x set sex=? where name=?",forname_x, url_x,user_x,password_x);
        PreparedStatementExcuteUpdate preparedStatementExcuteUpdate3 = new PreparedStatementExcuteUpdate(
                "update student_x set age=? where name=?",forname_x, url_x,user_x,password_x);


        PreparedStatmentExecute preparedStatmentExecute1 = new PreparedStatmentExecute(
                "select * from student_x where name=?;",forname_x, url_x,user_x,password_x);
        PreparedStatmentExecute preparedStatmentExecute2 = new PreparedStatmentExecute(
                "select * from student_x where sex=?;",forname_x, url_x,user_x,password_x);
        PreparedStatmentExecute preparedStatmentExecute3 = new PreparedStatmentExecute(
                "select * from student_x where age=?;",forname_x, url_x,user_x,password_x);

        operate(statementExcute,
                preparedStatementExecuteInsert,
                statementExcuteUpdate,
                preparedStatementExecuteDelete,
                preparedStatementExcuteUpdate1,
                preparedStatementExcuteUpdate2,
                preparedStatementExcuteUpdate3,
                preparedStatmentExecute1,
                preparedStatmentExecute2,
                preparedStatmentExecute3);
    
    public static void show_all_table(StatementExcute statementExcute) throws Exception 
        statementExcute.statementexcute("");
    
    public static void show_one_table(PreparedStatmentExecute preparedStatmentExecute1,
                                      PreparedStatmentExecute preparedStatmentExecute2,
                                      PreparedStatmentExecute preparedStatmentExecute3) throws Exception 
        Scanner input = new Scanner(System.in);
        System.out.println("*****1、按姓名查询*****");
        System.out.println("*****2、按性别查询*****");
        System.out.println("*****3、按年龄查询*****");
        int judge_select = input.nextInt();
        input.nextLine();
        switch (judge_select)
            case 1:
                System.out.println("请输入姓名:");
                String name = input.next();
                input.nextLine();
                preparedStatmentExecute1.preparedstatementexecute1(name);
                break;
            
            case 2:
                System.out.println("请输入性别:");
                String sex = input.next();
                input.nextLine();
                preparedStatmentExecute2.preparedstatementexecute1(sex);
                break;
            
            case 3:
                System.out.println("请输入年龄:");
                int age = input.nextInt();
                input.nextLine();
                preparedStatmentExecute3.preparedstatementexecute2(age);
                break;
            
            default:
                System.out.println("非法输入");
                break;
            
        
    
    public static void show_table(StatementExcute statementExcute,
                                  PreparedStatmentExecute preparedStatmentExecute1,
                                  PreparedStatmentExecute preparedStatmentExecute2,
                                  PreparedStatmentExecute preparedStatmentExecute3) throws Exception 
        Scanner input = new Scanner(System.in);
        System.out.println("*****1、查询全表数据*****");
        System.out.println("*****2、单个参数查询*****");
        System.out.println("*****3、输入语句查询*****");
        int judge_select = input.nextInt();
        input.nextLine();
        switch(judge_select)
            case 1: 
                show_all_table(statementExcute);
                break;
            
            case 2:
                show_one_table(preparedStatmentExecute1,preparedStatmentExecute2,preparedStatmentExecute3);
                break;
            
            case 3:
                show_one_table_inSQL(statementExcute);
                break;
            
            default:
                System.out.println("非法输入");
                break;
            
        
    

    public static void show_one_table_inSQL(StatementExcute statementExcute) throws Exception
        Scanner input = new Scanner(System.in);
        System.out.println("请输入SQL语句:");
        String sql = input.nextLine();
        statementExcute.string_sql = "";
        statementExcute.statementexcute(sql);
        statementExcute.string_sql = string_sql_x;
    

    public static void insert_one(PreparedStatementExecuteInsert preparedStatementExecuteInsert) throws Exception 
        Scanner input = new Scanner(System.in);
        System.out.println("请输入要插入数据的内容");
        System.out.println("***Name***Sex***Age***");
        String name = input.next();
        String sex = input.next();
        int age = input.nextInt();
        input.nextLine();
        preparedStatementExecuteInsert.preparedstatementexecuteinsert(name,sex,age);
    

    public static void do_one_in_SQL(StatementExcuteUpdate statementExcuteUpdate) throws Exception
        Scanner input = new Scanner(System.in);
        System.out.println("请输入SQL语句:");
        String sql = input.nextLine();
        statementExcuteUpdate.statementexcuteupdate(sql);
    

    public static void update_one(PreparedStatementExcuteUpdate preparedStatementExcuteUpdate1,
                                  PreparedStatementExcuteUpdate preparedStatementExcuteUpdate2,
                                  PreparedStatementExcuteUpdate preparedStatementExcuteUpdate3) throws Exception
        Scanner input = new Scanner(System.in);
        System.out.println("*****1、只改名字*****");
        System.out.println("*****2、只改性别*****");
        System.out.println("*****3、只改年龄*****");
        int judge_u = input.nextInt();
        input.nextLine();
        switch (judge_u)
            case 1:
                System.out.println("*****name_new*****name_old*****");
                System.out.println("输入参数:");
                String name_new = input.next();
                String name_old = input.next();
                input.nextLine();
                preparedStatementExcuteUpdate1.preparedstatementexecuteupdate(name_new,name_old);
                break;
            
            case 2:
                System.out.println("*****sex_new*****name*****");
                System.out.println("输入参数:");
                String sex_new = input.next();
                String name_s = input.next();
                input.nextLine();
                preparedStatementExcuteUpdate2.preparedstatementexecuteupdate(sex_new,name_s);
                break;
            
            case 3:
                System.out.println("*****age_new*****name*****");
                System.out.println("输入参数:");
                int age_new = input.nextInt();
                String name_a = input.next();
                input.nextLine();
                preparedStatementExcuteUpdate3.prepreparedstatementexecuteupdate2(age_new,name_a);
                break;
            
            default:
                System.out.println("非法输入");
                break;
            
        
    

    public static void delete_one(PreparedStatementExecuteDelete preparedStatementExecuteDelete) throws Exception 
        Scanner input = new Scanner(System.in);
        System.out.println("输入姓名,删除该行");
        String name = input.next();
        input.nextLine();
        preparedStatementExecuteDelete.preparedstatementexecutedelete(name);
    

    public static void operate(StatementExcute statementExcute,
                               PreparedStatementExecuteInsert preparedStatementExecuteInsert,
                               StatementExcuteUpdate statementExcuteUpdate,
                               PreparedStatementExecuteDelete preparedStatementExecuteDelete,
                               PreparedStatementExcuteUpdate preparedStatementExcuteUpdate1,
                               PreparedStatementExcuteUpdate preparedStatementExcuteUpdate2,
                               PreparedStatementExcuteUpdate preparedStatementExcuteUpdate3,
                               PreparedStatmentExecute preparedStatmentExecute1,
                               PreparedStatmentExecute preparedStatmentExecute2,
                               PreparedStatmentExecute preparedStatmentExecute3) throws Exception 
        Scanner input = new Scanner(System.in);
        while(true)
            System.out.println("****************选项****************");
            System.out.println("********1、数据查询********");
          

2021软件创新实验室暑假集训jdbc(原理使用以及实现简单的数据库连接池)(代码片段)

...#xff08;二)应用篇【2021软件创新实验室暑假集训】mysql数据库与简单sql语句的使用19级Java后端开发【2021软件创新实验室暑假集训】Spring框架【20 查看详情

2021软件创新实验室暑假集训jdbc(原理使用以及实现简单的数据库连接池)(代码片段)

系列文章目录20级Java篇【2021软件创新实验室暑假集训】计算机的起源与大致原理【2021软件创新实验室暑假集训】Java基础(一)【2021软件创新实验室暑假集训】Java基础(二)【2021软件创新实验室暑假集训】Java基... 查看详情

实验七继承附加实验(代码片段)

 实验七继承附加实验实验时间2018-10-111、实验目的与要求(1)进一步理解4个成员访问权限修饰符的用途;(2)掌握Object类的常用API用法;(3)掌握ArrayList类用法与常用API;(4)掌握枚举类使用方法;(5)结合本章知识,... 查看详情

汇编语言——实验七(代码片段)

算法实现1:从键盘输入一位十六进制数,并将其转换为十进制数输出显示。注意数据区的定义和使用,存储自己所使用的数据以及如何存储访问代码:codesegmentassumecs:codestart:movah,1int21hcmpal,30hjlexitcmpal,39hjledigcmpal,41... 查看详情

java实验五正式报告(代码片段)

...实现用户图形化应用程序的开发  2.进一步巩固JDBC连接数据库以及文件读写操作二、实验目标  1.能够掌握常用GUI控制组件的使用方法,通过java.awt包以及Javax.swing包中的类和接口实现用户图形界面的开发;  2.能够... 查看详情

实验七(代码片段)

实验任务三  屏幕上有正确输出,生成了file3.dat,打开后数据直观可读。实验任务四子任务一:屏幕上有正确输出,生成了二进制文件file4.dat,打开后数据直观可读。子任务二:#include<stdio.h>#include<stdlib.h>#include&l... 查看详情

实验七(代码片段)

实验任务31、运行后,屏幕上正确输出了按分数从高到低排序的信息,同时在当前路径下生成了文本文件file3.dat 2、数据信息正确,直观可读。实验任务4正确输出,二进制文件file4.dat已生成,打开后里面的数据信息直观可读#i... 查看详情

实验七(代码片段)

实验结论:Part1:验证性实验*验证性实验2代码未作出修改之前://从文本文件file1.dat中读取数据,找出最高分和最低分学生信息,并输出在屏幕上#include<stdio.h>#include<stdlib.h>#defineN10Part1:验证性实验//定义一个结构体类型STU... 查看详情

实验七(代码片段)

//从文本数据文件file1.dat中读入数据,按成绩从高到低排序,将排序结果输出到屏幕上,同时以文本方式存入文件file3.dat中。#include<stdio.h>#include<stdlib.h>#defineN10//定义一个结构体类型STUtypedefstructstudentintnum;charname[20];intscor... 查看详情

实验七(代码片段)

//从文本数据文件file1.dat中读入数据,按成绩从高到低排序,将排序结果输出到屏幕上,同时以文本方式存入文件file3.dat中。#include<stdio.h>#include<stdlib.h>#defineN10//定义一个结构体类型STUtypedefstructstudentintnum;charname[20];intscor... 查看详情

就够了—jdbc保姆级教程(代码片段)

目录一、JDBC概述基本介绍JDBC相关API二、连接mysql数据库准备工作JDBC程序编写步骤五种连接数据库的方式 三、ResultSet(结果集)基本介绍四、Statement和PreparedStatementStatementPreparedStatement 五、事务基本介绍六、批处理基本... 查看详情

实验七信号(代码片段)

...作业属于哪个课程Linux系统与应用这个作业的要求在哪里实验七信号学号-姓名18043224-向康宁作业学习目标了解信号的概念,掌握信号处理的方法1、编写一个简单的程序并运行,然后向该进程发送不同的信号以观察该进程对接收... 查看详情

java使用jdbc测试数据库连通性(代码片段)

查看详情

实验七(代码片段)

实验三<br>正确输出且生成了文件三且直观可读<br>实验四<br>正确输出,但数据不直观可读<br>实验4.2<br><br><br><br><br><br><br><br><br>#include<stdio.h>#includ 查看详情

实验十七线程同步控制(代码片段)

 实验十七  线程同步控制实验时间 2018-12-10一、理论知识部分:?线程同步(1)多线程并发运行不确定性问题解决方案:引入线程同步机制,使得另一线程要使用该方法,就只能等待(2)在Java中解决多线程同步问... 查看详情

第十四周学习总结&课程实验报告(代码片段)

...总结一、相关概念1.什么是JDBCJDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的... 查看详情

java_jdbc连接数据库(代码片段)

文章目录Java_JDBC简介Java_JDBC连接数据库Java_导入JDBC的包Java_JDBC的驱动程序Java_使用Class.forName注册驱动程序Java_使用DriverManager.registerDriver()注册驱动程序Java_JDBC数据库配置Java_关闭JDBC连接Java_JDBC简介JDBC代表Java数据库连接(JavaDataBaseC... 查看详情

2021软件创新实验室暑假集训springmvc框架(设计原理简单使用源码探究)(代码片段)

...#xff08;二)应用篇【2021软件创新实验室暑假集训】mysql数据库与简单sql语句的使用【2021软件创新实验室暑假集训】JDBC(原理、使用以及实现简 查看详情