数据源BasicDataSource

2023-10-24 08:59
文章标签 数据源 basicdatasource

本文主要是介绍数据源BasicDataSource,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

如何配置数据源,第三方的数据源插件最常用的主要是c3p0和dbcp:

以下是我配置的一个dbcp数据源的一个实例

首先导入commons-dbcp2-2.0.1.jar,commons-pool2-2.2.jar

package com.thinkgis.xxfbxt.dbconn;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import org.apache.commons.dbcp2.BasicDataSource;

/**
 *
 * @author Administrator
 *
 */
public class DataBaseSource {

 public static void main(String[] args) {
  BasicDataSource datasource = new BasicDataSource();
  datasource.setDriverClassName("oracle.jdbc.driver.OracleDriver");
  datasource.setUrl("jdbc:oracle:thin:@127.0.0.1:1521:oracle");
  datasource.setUsername("username");
  datasource.setPassword("password");
  
  Connection conn = null;
  String sql = "select * from tablename";
  PreparedStatement psmt = null;
  ResultSet rs = null;
  try {
   conn = datasource.getConnection();
   psmt = conn.prepareStatement(sql);
   rs = psmt.executeQuery();
   while (rs.next()) {
    System.out.println(rs.getString("username"));
    System.out.println(rs.getString("password"));
   }
  } catch (SQLException e) {
   e.printStackTrace();
  }
 }
}
因为我没有导入commons-logging-1.1.3.jar,导致了错误Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory,导入用于记录日志的包,这种情况就解决了

 

接下来在运行的过程中,又因为我导入的驱动包是classes.jar,所有又出现了错误Exception in thread "main" java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I)Z,所以我在我的Oracle的安装目录下F:\Oracle11g\product\11.2.0\dbhome_1\jdbc\lib找到新版的Oracle驱动包ojdbc6.jar,这种情况也解决了

 

数据源的配置步骤:BasicDataSource datasource = new BasicDataSource(); 其次是写入驱动类和驱动名称等,接下来的操作和jdbc一样

这篇关于数据源BasicDataSource的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/274096

相关文章

多数据源的事务处理总是打印很多无用的log日志

之前做了一个项目,需要用到多数据源以及事务处理,在使用事务处理,服务器总是打印很多关于事务处理的log日志(com.atomikos.logging.Slf4jLogger),但是我们根本不会用到这些log日志,反而使得查询一些有用的log日志变得困难。那要如何屏蔽这些log日志呢? 之前的项目是提高项目打印log日志的级别,后来觉得这样治标不治本。 现在有一个更好的方法: 我使用的是log

兼容Trino Connector,扩展Apache Doris数据源接入能力|Lakehouse 使用手册(四)

Apache Doris 内置支持包括 Hive、Iceberg、Hudi、Paimon、LakeSoul、JDBC 在内的多种 Catalog,并为其提供原生高性能且稳定的访问能力,以满足与数据湖的集成需求。而随着 Apache Doris 用户的增加,新的数据源连接需求也随之增加。因此,从 3.0 版本开始,Apache Doris 引入了 Trino Connector 兼容框架。 Tri

【spark 读写数据】数据源的读写操作

通用的 Load/Save 函数 在最简单的方式下,默认的数据源(parquet 除非另外配置通过spark.sql.sources.default)将会用于所有的操作。 Parquet 是一个列式存储格式的文件,被许多其他数据处理系统所支持。Spark SQL 支持对 Parquet 文件的读写还可以自动的保存源数据的模式 val usersDF = spark.read.load("e

随手记(2)-java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

问题描述: 在使用Java连接access数据的.mdb文件时候程序报如下错误 java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序     错误原因: 在win7 office2013下报错 解决方法:  查看Java桥连程序连接字符串是否写成{Microsoft Access Driver (*.m

spring 多数据源 ,mybatis和hibernet版本

mybatis版本 1.数据源配置: jdbc_multiple.properties:   # MySQL#============================================================================jdbc.mysql.driver=com.mysql.jdbc.Driverjdbc.mysql.url=jdbc:m

java.lang.ClassCastException: org.apache.commons.dbcp.BasicDataSource cannot be cast to

ApplicationContext cxt = new ClassPathXmlApplicationContext("beans.xml"); ProductService productService = (ProductService) cxt.getBean("dataSource"); productService.save(new ProductType()); 异常: java

小码农的代码(三)----------SpringJDBC多数据源应用

前面项目中基础的SpringJdbc的配置说明已经简单总结,接下去就是项目中使用到多数据源这个问题了。  对于多数据源的实现,我的想法是首先配置多个数据源,然后在数据操作时通过切换数据源的方式来达到目的,那么如何在保持jdbctmplate只有一个的时候进行数据源切换呢,我考虑到可以起一个线程来实现在操作中的自由切换。  首先配置3个数据源,为方便测试就直接在本机新建了三个mysql数据库(实际

开发指南058-JPA多数据源

一般情况下,一个微服务只链接一个数据库,但是不排除有些情况下需要链多个库。链多个库比较复杂,介绍如下:        1、nocas中要配置多数据源              白框内为正常的单数据库情况。下面增加标识(可以任意起,这里为eva),然后跟数据库定义       2、定义新数据库源 @Configurationpublic class evaDruidCon

多数据源事务集成-mybatis-plus

目前百度能搜索到的大部分是各自单独实现的aop以及多数据源的管理,使用起来比较复杂,而且做得也相对来说不是很完善,比如是否要考虑嵌套事务这种以及多数据源事务的支持方式,很多博主都没有涉及到,大多是简单的基于spring框架的拦截处理,自己实现不仅有不完善的缺点、可扩展性也是比较差的,后期版本维护升级或者支持更加复杂的功能就需要进行大改动以及全面的测试,风险系数也是蛮高的。mybatis-plus高

【sphinx】 配置文件之增量数据源

来看段代码 #增量数据源source incrementtest: test{sql_ranged_throttle = 100sql_query_pre = insert into t values ('')sql_query = inse