当前位置: 首页 > wzjs >正文

无锡seo网站推广费用传统企业网站建设

无锡seo网站推广费用,传统企业网站建设,火车头怎么采集wordpress,做动物网站的原因是目录 JDBC和连接池1. JDBC2. 连接池1. 概念2. 分类3. 步骤 3. Apache-dbUtils1. 概念2. 以下是相关类3. 示例 4. BasicDao基础理解 JDBC和连接池 1. JDBC 概念:jdbc是 Java 访问数据库的标准 API,为访问不同的数据库提供了统一接口。以下是常用的API&a…

目录

  • JDBC和连接池
    • 1. JDBC
    • 2. 连接池
      • 1. 概念
      • 2. 分类
      • 3. 步骤
    • 3. Apache-dbUtils
      • 1. 概念
      • 2. 以下是相关类
      • 3. 示例
    • 4. BasicDao
      • 基础理解

JDBC和连接池

1. JDBC

  1. 概念:jdbc是 Java 访问数据库的标准 API,为访问不同的数据库提供了统一接口。
  2. 以下是常用的API:
    在这里插入图片描述
    在这里插入图片描述
  1. 其中因为普通的Statement有SQL注入安全隐患,一般使用PrepareStatement,该接口在sql查询语句中用作占位符,再用setXxx()传入参数。
    String sql = "select name , pwd from admin where name =? and pwd = ?";
    PreparedStatement preparedStatement = connection.prepareStatement(sql);
    preparedStatement.setString(1, admin_name);
    preparedStatement.setString(2, admin_pwd);
    

在这里插入图片描述

  1. 编写步骤:基础的四步骤为注册驱动,获取连接,执行SQL语句,释放资源,因为实际项目一般要用到连接池,这部分就不过多赘述,以下为示例代码:
        Class.forName("com.mysql.cj.jdbc.Driver");
//        String url = "jdbc:mysql://local:3306/test";String url = "jdbc:mysql://localhost:3306/test?serverTimezone=UTC";String user = "root";String password = "12345689";Connection connection = DriverManager.getConnection(url, user, password);System.out.println(connection);Statement statement = connection.createStatement();String sql = "select * from dept";ResultSet resultSet = statement.executeQuery(sql);while(resultSet.next()){int deptno = resultSet.getInt("DEPTNO");String dname = resultSet.getString("DNAME");String loc = resultSet.getString("LOC");System.out.println(deptno+"\t"+dname+"\t"+loc);}resultSet.close();statement.close();connection.close();

2. 连接池

1. 概念

连接池本质就是为了减少频繁连接带来的损耗,维持一定数量的连接,需要连接时从池中取出,用完放回即可。

2. 分类

常见的连接池有C3P0和Druid,Druid得益于其优秀的性能在当下被广泛使用

3. 步骤

因为连接池可以使用配置文件,与直接用JDBC只有在前两步有所区别,或者说更为简便

//c3p0ComboPooledDataSource test = new ComboPooledDataSource("test");String sql = "select * from dept";Connection connection = test.getConnection();
//Druid      
//        Properties properties = new Properties();
//        properties.load(new FileInputStream("src\\druid.properties"));
//        DataSource dataSource =   DruidDataSourceFactory.createDataSource(properties);
//        Connection connection = dataSource.getConnection();Statement statement = connection.createStatement();ResultSet resultSet = statement.executeQuery(sql);while(resultSet.next()){int deptno = resultSet.getInt("DEPTNO");String dname = resultSet.getString("DNAME");String loc = resultSet.getString("LOC");System.out.println(deptno+"\t"+dname+"\t"+loc);}resultSet.close();statement.close();connection.close();

3. Apache-dbUtils

1. 概念

为了解决在connection关闭后仍然可以获取到resulteSet中的数据,于是Apache组织提供的commons-dbutils工具库可以解决这个问题,在这里还需要用到Java Bean, 是一种遵循特定编程规范的 Java 类,用于封装数据,简单来讲就是将表中的各个字段转换成类的属性。

2. 以下是相关类

请添加图片描述

3. 示例

        Properties properties = new Properties();properties.load(new FileInputStream("src\\druid.properties"));DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);Connection connection = dataSource.getConnection();QueryRunner queryRunner = new QueryRunner();
//        String sql = "select * from dept where DEPTNO >= ?";
//        List<Dept> list = queryRunner.query(connection, sql, new BeanListHandler<>(Dept.class), 1);
//        for (Dept dept : list) {
//            System.out.println(dept);
//        }
//        String sql = "select * from dept where DEPTNO = ?";
//        Dept dept = queryRunner.query(connection, sql, new BeanHandler<>(Dept.class), 10);
//        String sql = "select ? from dept where DEPTNO = ?";
//        Object dept = queryRunner.query(connection, sql, new ScalarHandler(), "DEPTNO", 10);
//        System.out.println(dept);String sql = "insert into dept values (?,?,?)";int update = queryRunner.update(connection, sql, 50, "DISCUSSION", "MEXICO");System.out.println(update);connection.close();

4. BasicDao

基础理解

Dao即为数数据对象,它的作用是封装对数据库的数据库的访问,将各个Dao共同操作放在一起即为BasicDao,这样数据库的每张表都可以在BasicDao的基础上实现自己的Dao,大大提高了代码的维护性,再结合apche-dbutils和Druid,可以形成以下开发中的层次结构图:
在这里插入图片描述

本文部分截图自于【零基础 快速学Java】韩顺平 零基础30天学会Java

http://www.dtcms.com/wzjs/548248.html

相关文章:

  • 建设网站花费网站建设 费用 入哪个科目
  • 网站建设叁金手指花总7html5网站开发实例教程
  • 企业网站建设找外包公司做做网站要多少钱 知乎
  • 上海培训网站建设苏州网站建设公司鹅鹅鹅
  • 男女明星直接做的视频网站国家建设厅网站
  • 上海网站制作开发公司网站备案信息注销原因
  • 网站修改域名服务器官方网站如何做
  • 免费的免抠图素材网站个人养老保险怎么买最划算
  • 网站开发所需开发环境网站模板之家官网
  • 网站建设费入如保入账静态网站什么样
  • 外贸专业网站盐山网站制作
  • 婚庆网站建设论文企业网站开发价钱低
  • 阜阳市重点工程建设局网站社交网站开发技术岗
  • 搭建一个商城类网站常德网站优化哪家好
  • 深圳网站制作网络建设公司阿里邮箱企业版入口
  • 公司网站需要备案制作网站的公司办什么营业执照
  • 中英文网站是咋做的郑州网站建设哪家好
  • 北京网站建站推网站开发服务公司
  • 重庆网站优化指导建设和住房保障部 网站
  • 德阳吧网站建设国外网站搜索引擎优化方案
  • 威海网站建设短信精准群发深圳家居网站建设公司
  • 禅城技术支持骏域网站建设宁波网站建设 联系哪家
  • 信托公司网站建设营销型网站建设合同模板
  • 建工厂网站的公司wordpress教程 下载
  • 专门看广告的网站公司名称注册查询官网
  • 南通网站建设价格国家企业年报信息公示网官网查询
  • 营销型网站功能项目网格图
  • 教育类企业网站毛妮卓玛wordpress
  • 一学一做看视频网站惠阳网站制作公司
  • dw软件网站建设教程视频专业刷粉网站