JAVA实验七——JDBC数据库使用
Posted ALAN_CF
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA实验七——JDBC数据库使用相关的知识,希望对你有一定的参考价值。
实验结果
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、数据查询********");
以上是关于JAVA实验七——JDBC数据库使用的主要内容,如果未能解决你的问题,请参考以下文章
2021软件创新实验室暑假集训JDBC(原理使用以及实现简单的数据库连接池)