JDBC操作

JDBC操作


常用API

DriverManager(类):加载管理驱动
Connection:建立连接
Statement:执行命令并返回结果
ResultSet:结果集

连接数据库四大件

驱动类:Driver
用户名 :user
密码: password
MySQL服务器地址:url

 	static Connection conn;
    static String user = "用户名";
    static String psw = "密码";
    static String url = "jdbc:mysql://localhost:3306/数据库名?characterEncoding=utf-8";
    
    //驱动类,通过反射的方式加载
 	Class.forName("com.mysql.jdbc.Driver");
 	//使用驱动管理类,调用mysql的驱动类,创建数据库连接
	conn = DriverManager.getConnection(url,user,password);

使用Statement实现数据库操作

通过连接对象获取Statement对象

Statement stat = conn.createStatement();

在这里插入图片描述步骤:

  1. 添加jar包
  2. 加载驱动类
  3. 获取连接对象(Connection)
  4. 创建命令执行对象(Statement)
  5. 定义sql
  6. 执行命令
  7. 关闭数据库对象

使用PreparedStatement操作数据库

  1. PreparedStatement继承自Statement接口
  2. 预编译的sql语句对象
  3. 对sql语进行预编译,存储到PreparedStatement对象中,执行效率高
  4. 避免sql注入式攻击,安全性高。使用的参数式sql命令
insert into table (id,name,sex) value(?,?,?);

在这里插入图片描述

获取自增列的值

 //创建预编译命令对象时,要提供获取自增值的参数
 pst = conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
 //获取自增返回的结果集对象
 rs = pst.getGeneratedKeys();
 while (rs.next()){
    int id = rs.getInt(1);
    if(id!=0){
       co = id;
   }
}
 System.out.println("主键自增至:"+co);

事务

原子性:事务作为整体执行,要么都成功,要么都回滚
一致性:表示事务失败时,所有被该事务影响的数据都会恢复到事务执行前的状态
隔离性:多个事务在并发状态下,是相互独立,操作过程中的数据不能跟其他事务共享
持久性:事务对数据库的改变是永久的

java.sql.Connection //提供了以下控制事务的方法:

public void setAutoCommit(boolean) //设置事务的提交方式
public boolean getAutoCommit() //获取自动提交的状态
public void commit() //提交事务
public void rollback() //回滚事务


//具体代码
//获取链接
conn = getConn();
//改为手动提交事务
conn.setAutoCommit(false);
//提交事务
conn.commit();
//回滚事务
conn.rollback();

Junit测试类

juint:测试工具类,可以在一个类中定义多个方法,批量执行

  1. 添加jar包
  2. 在类中定义测试方法
  3. 在普通方法上添加@Test注解
  4. 选中方法执行

测试类测试增删改查

	//添加注解
    @org.junit.Test
    public void test() {
        String sql = "select * from books";
        //注意中文拼接时要加单引号
        String addsql = "insert into books(id,bookName,author,price,inDate) value (default,?,?,?,?)";
        String delsql = "delete from book_cate where cateId = 12";
        String updsql = "update book_cate set cateName ="+"'政治'"+"where cateId = 7";
        //查
        JdbcUtil.getBook(sql);
        //增
        JdbcUtil.BookCate(addsql);
        //删
        JdbcUtil.BookCate(delsql);
        //改
        JdbcUtil.BookCate(updsql);
        
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
JDBCJava Database Connectivity)是Java语言访问数据库的标准接口,通过JDBC可以实现与各种数据库的连接和操作。高斯数据库是一种分布式数据库系统,支持高性能、高可靠性的数据存储和查询。下面是使用JDBC操作高斯数据库的一般步骤: 1. 导入JDBC驱动:首先需要将高斯数据库JDBC驱动导入到项目中,可以从高斯数据库官方网站下载相应的驱动。 2. 加载驱动:使用`Class.forName()`方法加载驱动类,例如: ```java Class.forName("com.gauss.jdbc.Driver"); ``` 3. 建立连接:使用`DriverManager.getConnection()`方法建立与数据库的连接,需要提供数据库的URL、用户名和密码,例如: ```java String url = "jdbc:gauss://localhost:5432/mydb"; String username = "myuser"; String password = "mypassword"; Connection conn = DriverManager.getConnection(url, username, password); ``` 4. 创建Statement或PreparedStatement对象:通过连接对象创建Statement或PreparedStatement对象,用于执行SQL语句,例如: ```java Statement stmt = conn.createStatement(); ``` 5. 执行SQL语句:使用Statement或PreparedStatement对象执行SQL语句,例如: ```java String sql = "SELECT * FROM mytable"; ResultSet rs = stmt.executeQuery(sql); ``` 6. 处理结果集:通过ResultSet对象获取查询结果,进行相应的处理,例如: ```java while (rs.next()) { // 处理每一行数据 String column1 = rs.getString("column1"); int column2 = rs.getInt("column2"); // ... } ``` 7. 关闭资源:在使用完毕后,需要关闭ResultSet、Statement、Connection等资源,例如: ```java rs.close(); stmt.close(); conn.close(); ``` 这是一个简单的JDBC操作高斯数据库的示例,具体的操作还可以根据实际需求进行扩展和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

总有一天你会出现在我身边

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值