java界面访问数据库_java访问数据库 - CarlDing的个人页面 - OSCHINA - 中文开源技术交流社区...

该博客展示了如何使用Java进行数据库操作,包括查询、插入、删除和更新数据,并结合JUnit进行单元测试。通过 ConnUtils 工具类连接数据库,读取jdbc.properties配置文件,实现与MySQL数据库的交互。此外,还提供了用户输入交互,实现了CRUD操作。
摘要由CSDN通过智能技术生成

程序测试代码: package cn.demo;

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.util.Scanner;

import org.junit.Test;

import cn.utils.ConnUtils;

public class Demo01 { @Test public void testQuery() throws Exception { Statement st = ConnUtils.getCon().createStatement(); System.err.println("数据操作对象:" + st);// oracle.jdbc.driver.OracleStatementWrapper@3884b2 // 4:执行SQL语句 String sql = "select * from stud"; ResultSet rs = st.executeQuery(sql); // 遍历结果集 while (rs.next()) { // 获取里面的数据 int id = rs.getInt(1);//数据库的查询,下标从1开始1=id String name = rs.getString(2); System.err.println(id + "," + name); } rs.close(); st.close(); // 最后使用完成,就关闭连接

}

@Test

public void testInsert() throws Exception {

Statement st = ConnUtils.getCon().createStatement();

Scanner sc = new Scanner(System.in);

String id = sc.nextLine();

String name = sc.nextLine();

// 声明Sql insert

String sql = "insert into stud(id,name) values(" + id + ",'" + name + "')";

// 写入数据

int rows = st.executeUpdate(sql);

System.err.println("影响行数 :" + rows);

st.close();

}

@Test

public void testDelete() throws Exception {

Statement st = ConnUtils.getCon().createStatement();

Scanner sc = new Scanner(System.in);

String id = sc.nextLine();

// 声明Sql insert

String sql = "delete from stud where id=" + id;

// 写入数据

int rows = st.executeUpdate(sql);

System.err.println("影响行数 :" + rows);

st.close();

}

@Test

public void testUpdate() throws Exception {

Statement st = ConnUtils.getCon().createStatement();

Scanner sc = new Scanner(System.in);

String id = sc.nextLine();

String name = sc.nextLine();

// 声明Sql insert

String sql = "update stud set name='" + name + "' where id=" + id;

// 写入数据

int rows = st.executeUpdate(sql);

System.err.println("影响行数 :" + rows);

st.close();

}

public static void main(String[] args) throws Exception {

new Demo01();

}

public Demo01() throws Exception {

Scanner sc = new Scanner(System.in);

one: while (true) {

String op = sc.nextLine();

switch (op) {

case "query":

testQuery();

break;

case "delete":

testDelete();

break;

case "update":

testUpdate();

break;

case "insert":

testInsert();

break;

case "exit":

break one;

default:

break;

}

}

}

}

工具类:

package cn.utils;

import java.sql.Connection; import java.sql.DriverManager; import java.util.Properties;

public class ConnUtils { // 1:声明一个唯一的连接 private static Connection con; // 2:在静态的代码块中只连接数据库一次 static { try { // 声明资源文件类 Properties prop = new Properties(); // 加载配置的文件 bin/jdbc.properties prop.load(ClassLoader.getSystemResourceAsStream("jdbc.properties")); // 获取里面的配置 String driver = prop.getProperty("qdq"); String url = prop.getProperty("url"); String name = prop.getProperty("name"); String pwd = prop.getProperty("pwd"); // 连接 Class.forName(driver); con = DriverManager.getConnection(url, name, pwd); } catch (Exception e) { throw new RuntimeException(e); } }

// 提供一个工厂方法,返回ocn

public static Connection getCon() {

return con;

}

}

property配置文件: #qdq=oracle.jdbc.driver.OracleDriver #url=jdbc:oracle:thin:@192.168.56.1:1521/xe #name=scott #pwd=tiger

qdq=com.mysql.jdbc.Driver url=jdbc:mysql:///qlu?characterEncoding=UTF-8 name=root pwd=*****************

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值