Java连接操作Oracle数据库代码详解

 更新时间:2016年06月22日 10:48:01   作者:唐枫  
这篇文章主要介绍了Java连接操作Oracle数据库代码详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下

废话不多说了,直接给大家贴关键代码了,具体代码如下所示:

package com.sp.test;
import java.sql.*;
import java.util.*;
public class Text_lianxi extends Thread {
public void run() {
try {
yunxing();
Thread.sleep(10000);
} catch (InterruptedException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
//输入函数
public String[] shuru() {
System.out.println("请按顺序依次输入考生的详细信息:\n考试等级,身份证号,准考证号,考生姓名,考试地点,考试成绩");
Scanner sc = new Scanner(System.in);
String[] str = new String[6];
for (int i = 0; i < str.length; i++) {
str[i] = sc.nextLine();
}
System.out.println("信息输入完毕");
sc.close();
return str;
}
//查询函数
public String chaxun() {
System.out.println("请选择查询方式:\n a:身份证号 b:准考证号");
Scanner sc = new Scanner(System.in);
String s = sc.nextLine().toLowerCase();
String str = "";
if (s.equals("a")) {
System.out.println("请输入查询号码:");
String st = sc.nextLine();
if (st.length() == 18) {
str = "select * from examstudent where idcard = " + st;
} else {
System.out.println("身份证位数输入有误");
}
} else if (s.equals("b")) {
System.out.println("请输入查询号码:");
String st = sc.nextLine();
if (st.length() == 15) {
str = "select * from examstudent where examcard = " + st;
} else {
System.out.println("准考证位数输入有误");
}
} else {
System.out.println("你输入的查询方式有误,请重新进入程序");
}
sc.close();
return str;
}
//删除函数
public String shanchu() {
Scanner sc = new Scanner(System.in);
System.out.println("请输入考生的准考证号:");
String str = sc.nextLine();
if (str.length() != 15) {
System.out.println("准考证号输入有误,请重新输入");
}
sc.close();
return str;
}
//运行
public void yunxing() {
synchronized ("") {
try {
Connection conn = null;
// 链接数据库
Class.forName("oracle.jdbc.driver.OracleDriver");
String strURL = "jdbc:oracle:thin:@localhost:1521:SP";
conn = DriverManager.getConnection(strURL, "test", "123");
System.out.println(Thread.currentThread().getName()+"数据库连接成功");
Statement st = conn.createStatement();
// 选择功能
Scanner sc = new Scanner(System.in);
System.out.println("请选择功能:\n 1:输入信息 2:查询信息 3:删除信息");
int num = sc.nextInt();
if (num == 1) {
// 输入信息
String[] str = shuru();
if (str[1].length() != 18 && str[2].length() != 15) {
System.out.println("号码位数有误(身份证号18位,准考证号15位),请重新进入系统输入");
} else {
st.execute("insert into examstudent values(fiowid.nextval,to_number(" + str[0] + "),'" + str[1]
+ "','" + str[2] + "','" + str[3] + "','" + str[4] + "'," + "to_number(" + str[5]
+ "))");
System.out.println("信息录入成功");
}
} else if (num == 2) {
// 查询
String str1 = chaxun();
ResultSet r = st.executeQuery(str1);
// 输出查询结果
if (r.next()) {
System.out.println("考试等级:" + r.getString(2) + "\n身份证号:" + r.getString(3) + "\n准考证号:"
+ r.getString(4) + "\n考生姓名:" + r.getString(5) + "\n考试地区:" + r.getString(6) + "\n考试成绩:"
+ r.getString(7));
} else {
System.out.println("查无此人,请重新进入系统");
}
r.close();
} else if (num == 3) {
// 删除
String str2 = shanchu();
int a = st.executeUpdate("delete examstudent where examcard = " + str2);
if (a > 0) {
System.out.println("删除成功");
} else {
System.out.println("查无此人,请重新进入程序");
}
} else {
System.out.println("抱歉,暂未开放此功能");
}
sc.close();
st.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
Text_lianxi lx1 = new Text_lianxi();
// Text_lianxi lx2 = new Text_lianxi();
// Text_lianxi lx3 = new Text_lianxi();
lx1.setName("窗口1");
lx1.start();
// lx2.setName("窗口2");
// lx2.start();
// lx3.setName("窗口3");
// lx3.start();
}
}

开始运行:

信息输入: 身份证号查询:


准考证号查询: 信息删除:

输入错误信息:

以上所述是小编给大家介绍的Java连接操作Oracle数据库代码详解的全部叙述,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • SpringMVC mybatis整合实例代码详解

    SpringMVC mybatis整合实例代码详解

    这篇文章主要介绍了springmvc与mybatis实例详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-04-04
  • SpringBoot如何实现文件下载

    SpringBoot如何实现文件下载

    这篇文章主要介绍了SpringBoot如何实现文件下载问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • java webservice上传下载文件代码分享

    java webservice上传下载文件代码分享

    这篇文章主要为大家详细介绍了java webservice上传下载文件代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • SpringBoot中的PUT和Delete请求使用

    SpringBoot中的PUT和Delete请求使用

    这篇文章主要介绍了SpringBoot中的PUT和Delete请求使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • SpringBoot集成Curator实现Zookeeper基本操作的代码示例

    SpringBoot集成Curator实现Zookeeper基本操作的代码示例

    Zookeeper是一个Apache开源的分布式的应用,为系统架构提供协调服务,ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户,本文给大家介绍了SpringBoot集成Curator实现Zookeeper基本操作,需要的朋友可以参考下
    2024-05-05
  • Java窗体中关于默认布局管理器容易踩的坑及解决

    Java窗体中关于默认布局管理器容易踩的坑及解决

    这篇文章主要介绍了Java窗体中关于默认布局管理器容易踩的坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • SpringBoot application.yml和bootstrap.yml的区别

    SpringBoot application.yml和bootstrap.yml的区别

    本文主要介绍了SpringBoot application.yml和bootstrap.yml的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • 用intellij Idea加载eclipse的maven项目全流程(图文)

    用intellij Idea加载eclipse的maven项目全流程(图文)

    这篇文章主要介绍了用intellij Idea加载eclipse的maven项目全流程(图文),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • Java 正确终止线程的方法

    Java 正确终止线程的方法

    这篇文章主要介绍了Java 正确终止线程的方法,帮助大家更好的理解和学习java 多线程的相关知识,感兴趣的朋友可以了解下
    2020-12-12
  • SpringSecurity自定义成功失败处理器的示例代码

    SpringSecurity自定义成功失败处理器的示例代码

    这篇文章主要介绍了SpringSecurity自定义成功失败处理器,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09

最新评论