栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JDBC笔记9

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JDBC笔记9

思维图:

 

一、查询:DBUtils+数据库连接池(德鲁伊)方式,完成对表s的select操作

1.多行多列

package com.JDBC.datasource;


import com.JDBC.TEST.s;
import com.JDBC.utils.JDBCUtils_BY_Druid;

import org.apache.commons.dbutils.QueryRunner;

import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.junit.Test;


import java.sql.Connection;

import java.sql.SQLException;
import java.util.List;


//测试Druid的使用
public class Druid_aptch_ues {

    @Test
    public  void TestSelect() throws SQLException {
        //1.得到连接(druid)
        Connection connection = new JDBCUtils_BY_Druid().connection();
        //2.使用DBUtils 类和接口,先引入 commons-dbutils  jar包,到本project中
        //3.创建QueryRunner
        QueryRunner queryRunner = new QueryRunner();
        //4.就可以执行相关的方法,返回ArrayList 结果集(31行);
        String sql="select * from s where Sage =?";
        List list =queryRunner.query(connection,sql,new BeanListHandler<>(s.class),19);
        

        for (s jieguo : list){
            System.out.println(jieguo);
        }

        //释放
        JDBCUtils_BY_Druid.close(null,connection,null);
        //没必要关闭结果集  因为底层已经帮我实现了一次close(resultset);
        //statement也是如此
    }
}

 2.单行的数据

@Test
    public  void TestSelectSingle() throws SQLException {
        //1.得到连接(druid)
        Connection connection = new JDBCUtils_BY_Druid().connection();
        //2.使用DBUtils 类和接口,先引入 commons-dbutils  jar包,到本project中
        //3.创建QueryRunner
        QueryRunner queryRunner = new QueryRunner();
        String sql="select * from s where Sname =?";
        //因为要的到单行的数据<------->单个对象,,Handler不用List了,用普通的BeanHandler就行
        s single =queryRunner.query(connection,sql,new BeanHandler<>(s.class),"欧健");
        System.out.println(single);

        JDBCUtils_BY_Druid.close(null,connection,null);
    }
3.单行单列
@Test
    public  void TestScalar() throws SQLException {
        //1.得到连接(druid)
        Connection connection = new JDBCUtils_BY_Druid().connection();
        //2.使用DBUtils 类和接口,先引入 commons-dbutils  jar包,到本project中
        //3.创建QueryRunner
        QueryRunner queryRunner = new QueryRunner();

        //4.就可以执行相关的方法,返回单行单列
        String sql="select Sno from s where Sname =?";
        //因为返回的是一个对象,使用的Handler 就是 Scalar就是 ScalarHandler
        Object object= queryRunner.query(connection,sql,new ScalarHandler(),"欧健");
        System.out.println(object);
        JDBCUtils_BY_Druid.close(null,connection,null);
    }

二、DML

@Test
    public  void TestDML() throws SQLException {
        Connection connection = new JDBCUtils_BY_Druid().connection();
        QueryRunner queryRunner = new QueryRunner();
        String sql="update s set Sno=? where Sname =?";
        //使用queryRunner.update();   方法这个方法可以实现全部dml
        int row =queryRunner.update(connection,sql,"20105302233","欧健");
        System.out.println(row>0?"影响成功":"没有对任何行产生影响");
        JDBCUtils_BY_Druid.close(null,connection,null);
    }

写在最后,数据类型一定要对应好!!!!!!!!

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/881384.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号