java连接Oracle数据库实现增删改查并在Navicat中显示

时间:2022-09-24 15:15:30

创建TEST表

java连接Oracle数据库实现增删改查并在Navicat中显示

eclipse中的java项目

java连接Oracle数据库实现增删改查并在Navicat中显示

代码

数据库方法类 DBUtil:

package util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; public class DBUtil { // 创建一个数据库连接
public static Connection getConnection()
{
Connection connection = null;
String USERNAMR = "system";
String PASSWORD = "*****";//自己的密码
String DRVIER = "oracle.jdbc.OracleDriver";
String URL = "jdbc:oracle:thin:@localhost:1521:orcl";
try {
Class.forName(DRVIER);
connection = DriverManager.getConnection(URL, USERNAMR, PASSWORD);
System.out.println("成功连接数据库");
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
} catch (SQLException e) {
throw new RuntimeException(e);
} return connection;
}
//关闭资源
public static void close(Connection connection ) {
try {
if (connection != null) {
connection.close();
} } catch (SQLException e) {
e.printStackTrace();
}
}
public static void close(PreparedStatement preparedStatement ) {
try {
if (preparedStatement != null) {
preparedStatement.close();
} } catch (SQLException e) {
e.printStackTrace();
}
}
public static void close(ResultSet resultSet ) {
try {
if (resultSet != null) {
resultSet.close();
} } catch (SQLException e) {
e.printStackTrace();
}
} }

实体类 Model

package test;

public class Model {
private String id; private String username;
private String password;
private String name;
private int age; public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Model()
{ }
public Model(String id, String username, String password, String name, int age) {
super();
this.id = id;
this.username = username;
this.password = password;
this.name = name;
this.age = age;
}
public void update(String username, String password, String name, int age) {
this.username = username;
this.password = password;
this.name = name;
this.age = age;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}

测试类 Test

package test;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; import util.DBUtil; public class Test {
public void add(Model model)//添加数据
{
Connection connection=DBUtil.getConnection();
String sql="insert into test(id,username,password,name,age)values(?,?,?,?,?)";
PreparedStatement preparedStatement = null;
try {
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, model.getId());
preparedStatement.setString(2, model.getUsername());
preparedStatement.setString(3, model.getPassword());
preparedStatement.setString(4, model.getName());
preparedStatement.setInt(5, model.getAge());
preparedStatement.executeUpdate();
System.out.println("插入成功");
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}finally{
DBUtil.close(preparedStatement);
DBUtil.close(connection);
}
}
public void update(Model model)//修改数据
{
Connection connection=DBUtil.getConnection();
String sql="update test set username=?,password=?,name=?,age=?";
PreparedStatement preparedStatement = null;
try {
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, model.getUsername());
preparedStatement.setString(2, model.getPassword());
preparedStatement.setString(3, model.getName());
preparedStatement.setInt(4, model.getAge());
preparedStatement.executeUpdate();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}finally{
DBUtil.close(preparedStatement);
DBUtil.close(connection);
} }
public Model load(String id) //查询数据
{
Connection connection = DBUtil.getConnection();
//准备sql语句
String sql = "select * from test where id = ?";
//创建语句传输对象
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
Model model = null;
try {
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, id);
resultSet = preparedStatement.executeQuery();
while(resultSet.next()) {
model = new Model();
model.setId(id);
model.setUsername(resultSet.getString("username"));
model.setPassword(resultSet.getString("password"));
model.setName(resultSet.getString("name"));
model.setAge(resultSet.getInt("age"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
DBUtil.close(resultSet);
DBUtil.close(preparedStatement);
DBUtil.close(connection);
}
return model;
}
public void delete(String id)//删除数据
{
Connection connection=DBUtil.getConnection();
String sql="delete from test where id=?";
PreparedStatement preparedStatement=null;
try {
preparedStatement=connection.prepareStatement(sql);
preparedStatement.setString(1,id);
preparedStatement.executeQuery();
System.out.println("删除成功");
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}finally {
DBUtil.close(preparedStatement);
DBUtil.close(connection);
} } public static void main(String args[])
{
Test test=new Test();
Model model=new Model("1","123","123","张三",18);
// test.add(model); // model.update("123","123","张三",28);
// test.update(model);
//
// model=test.load("1");
// System.out.println("查询结果————姓名:"+model.getName()+",年龄:"+model.getAge());
//
test.delete("1");
}
}

用Navicat连接Oracle数据库,因为创建的表自动存放在SYSTEM表空间内,在SYSTEM下边可以直接找到。

java连接Oracle数据库实现增删改查并在Navicat中显示

java连接Oracle数据库实现增删改查并在Navicat中显示

Navicat中的数据变化:

插入数据。

java连接Oracle数据库实现增删改查并在Navicat中显示

更改后的数据。

java连接Oracle数据库实现增删改查并在Navicat中显示

删除数据。

java连接Oracle数据库实现增删改查并在Navicat中显示

java连接Oracle数据库实现增删改查并在Navicat中显示的更多相关文章

  1. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  2. 通过jdbc连接MySql数据库的增删改查操作

    一.获取数据库连接 要对MySql数据库内的数据进行增删改查等操作,首先要获取数据库连接 JDBC:Java中连接数据库方式 具体操作如下: 获取数据库连接的步骤: 1.先定义好四个参数 String ...

  3. SSMybatis整合 --详细解读Mybatis对oracle数据库进行增删改查(一)

    Mybatis是现在主流的持久化层框架,与Hibernate不同的是,它鼓励程序员使用原声SQL语句对数据库进行操作.因此提供了非常灵活的功能.特别是当数据库同时访问数过多,需要进行优化时,使用sql ...

  4. sql server连接oracle并实现增删改查

    需要一个软件ODAC112040Xcopy_64bit 我连接的oracle是11g r2  sqlserver 是 2016 软件下载 https://pan.baidu.com/s/1OpYmpR ...

  5. C++ API方式连接mysql数据库实现增删改查

    这里复制的 http://www.bitscn.com/pdb/mysql/201407/226252.html 一.环境配置 1,装好mysql,新建一个C++控制台工程(从最简单的弄起,这个会了, ...

  6. 【C#】使用NHibernate连接MySQL数据库及增删改查

    学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...

  7. c#连接Access数据库及增删改查作

    access:版本2003(后缀.mdb,新版access可另存为2003兼容版) using: using System;using System.Data;using System.Windows ...

  8. 使用nodejs连接mysql数据库实现增删改查

      首先要有数据库 使用xampp 或者 phpstudy 可以傻瓜式安装 新建一个项目文件夹 之后在这个目录下初始化package.json (npm init) 先在项目中安装mysql 和 ex ...

  9. 使用NHibernate连接MySQL数据库及增删改查

    学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...

随机推荐

  1. 简单实现Windows服务 TopShelf

    Nugut安装 log4net 和 topShelf 1)ServiceRunner类 using log4net;using Topshelf; class ServiceRunner : Serv ...

  2. Ajax请求中的async:false/true的作用

    async: false,(默认是true);false为同步,Ajax请求将整个浏览器锁死,只有tet.php执行结束后,才可以执行其它操作. 当async: true 时,ajax请求是异步的.但 ...

  3. JS(去掉前后空格或去掉所有空格)的用法 推荐使用jquery 方法

        说明:     如果使用jQuery直接使用$.trim(str)方法即可,str表示要去掉前后所有空格的字符串. 推荐 1.  去掉字符串前后所有空格: 代码如下: function Tri ...

  4. 服务器环境搭建系列(一)-Apache篇

    一.Apache 1.解压缩tar包httpd-2.2.22.tar.gz,这里默认放在/opt下 tar -zxvf httpd-2.2.22.tar.gz 2.进入解压缩后的文件夹 cd http ...

  5. hdu 2067 兔子板

    兔子板 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  6. Fox And Names

    Description Fox Ciel is going to publish a paper on FOCS (Foxes Operated Computer Systems, pronounce ...

  7. MySql和Oracle数据库区别

    Oracle与mysql区别: 1.Oracle有表空间,mysql没有表空间. 2.mysql的char类型取值范围0-255字节,varchar为0-65535字节 3.oracle的char类型 ...

  8. What is OpenOCD?

    About OpenOCD was created by Dominic Rath as part of a 2005 diploma thesis written at the University ...

  9. GNU

    1983年,理查德.斯托曼提出GNU计划(革奴计划),希望发展出一套完整的开放源代码操作系统来取代Unix,计划中的操作系统,名为GNU. 1989年,发表GNU通用公共许可协议(GPL).GPL条款 ...

  10. CentOS 64位下安装Postfix+Dovecot 配置邮件server笔记

    Postfix 和Dovecot功能确实非常强大,支持各种认证方式, 配置非常灵活, 就由于太过于灵活, 反而安装配置的过程中,easy有各种各样的陷阱,碰到问题了. 日志是最好的解决的方法了.    ...