JAVA数据源连接方式汇总
来源:互联网 发布:厦门市公安局网络刻章 编辑:程序博客网 时间:2024/05/17 18:15
Java中的数据源就是javax.sql.DataSource。DataSource的创建可以有不同的实现。
JNDI方式创建DataSource
以JNDI方式创建数据源首先要配置数据源的相关连接信息,也就是数据源连接池。该配置应该在Tomcat安装目录下的conf/context.xml文件中配置。其配置如下:
<Context>
……
<!-- MySql -->
<Resource name="jdbc/NutzDemo" auth="Container"
type="javax.sql.DataSource"maxActive="100" maxIdle="30"
maxWait="10000"username="root" password="root"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/cheng"/>
……
</Context>
然后,在程序中以JNDI的方式创建数据源,得到数据库连接已进行相应的操作。代码如下:
//初始化JNDI上下文,创建DataSource对象
Context initContext =new InitialContext();
Context context = (Context)initContext.lookup("java:comp/env");
DataSourcedataSource = (DataSource)context.lookup("jdbc/NutzDemo");
Apache提供的简单连接池创建数据源
以这种方式创建数据源必须先准备两个jar文件:commons-dbcp.jar和commons-pool.jar。
以这种方式创建的数据源就不再是javax.sql.DataSource。DataSource了,而是org.apache.commons.dbcp.BasicDataSource。而且不再需要配置任何文件就可以直接使用。代码如下:
//创建BasicDataSource对象
BasicDataSource ds =new BasicDataSource();
ds.setDriverClassName("com.mysql.jdbc.Driver");
ds.setUrl("jdbc:mysql://localhost:3306/cheng");
ds.setUsername("root");
ds.setPassword("root");
ds.setInitialSize(50);
ds.setMaxActive(100);
ds.setMaxIdle(30);
ds.setMaxWait(10000);
//关闭数据源连接
ds.close();
C3P0方式创建数据源
使用C3P0方式创建数据源应该首先准备一个jar文件:c3p0-0.9.1.2.jar,将其放到web/lib目录下,就可以在项目中使用C3P0创建数据源,C3P0创建的数据源对象也不是DataSource对象,而是ComboPooledDataSource,代码如下:
//创建ComboPooledDataSource对象
ComboPooledDataSource ds =new ComboPooledDataSource();
ds.setDriverClass("com.mysql.jdbc.Driver");
ds.setJdbcUrl("jdbc:mysql://localhost:3306/cheng");
ds.setUser("root");
ds.setPassword("root");
ds.setInitialPoolSize(50);
ds.setMaxPoolSize(100);
ds.setMaxIdleTime(10000);
Proxool方式创建数据源
应该准备的jar文件为:proxool-01.9.0RC3.jar,之后在项目中创建ProxoolDataSource对象,其代码如下:
//创建ProxoolDataSource对象
ProxoolDataSource ds =new ProxoolDataSource();
ds.setDriver("com.mysql.jdbc.Driver");
ds.setDriverUrl("jdbc:mysql://localhost:3306/cheng");
ds.setUser("root");
ds.setPassword("root");
BoneCP方式创建数据源
BoneCP是一个快速高效,开源免费的Java数据库接池。
创作者称,BoneCP在性能上会完全超越所有主流的Java连接池。它可以帮你管理数据连接,让你的应用程序能更快速地访问数据库。比C3P0/DBCP(DataBaseconnection pool,数据库连接池)连接池快25倍。这个数据库连接池采用Google Collection作为内部的集合类框架,而且现在的版本已经很稳定。
要使用BoneCP,必须用到的jar文件有:
·bonecp-0.6.5.jar
·google-collections-1.0.jar
·slf4j-api-1.5.11.jar
·slf4j-log4j12-1.5.11.jar
·log4j-1.2.15.jar
在程序中创建BoneCPDataSource对象,代码如下:
//创建BoneCPDataSource对象
BoneCPDataSource ds =new BoneCPDataSource();
ds.setDriverClass("com.mysql.jdbc.Driver");
ds.setJdbcUrl("jdbc:mysql://localhost:3306/cheng");
ds.setUsername("root");
ds.setPassword("root");
ds.setAcquireIncrement(1);
ds.setAcquireRetryDelay(10000);
ds.setIdleConnectionTestPeriod(100);
ds.setMinConnectionsPerPartition(2);
ds.setMaxConnectionsPerPartition(20);
ds.setPartitionCount(2);
以上几种创建数据源的方式多以硬编码来实现,在实际应用中应该以配置文件的形式出现,以方便管理和维护。
- JAVA数据源连接方式汇总
- JAVA数据源连接方式汇总
- JAVA数据源连接方式汇总
- JAVA数据源连接方式汇总
- JAVA数据源连接方式汇总
- JAVA数据源连接方式汇总
- java数据源连接方式汇总-
- JAVA数据源连接方式汇总
- JAVA数据源连接方式汇总
- 润乾直连方式连接数据源
- Java Web连接各种数据库方式汇总
- Java Web连接各种数据库方式汇总
- 数据源JAVA连接类
- 用java连接数据源
- 用java连接数据源
- java数据源连接池
- Java连接程序数据源
- oracle数据源的配置和通过数据源方式连接数据库
- 关于输入框input如何实现只可以选择不可以键盘输入
- C 语言中的好基友 数组和指针之五
- PHP array系列函数
- rman convert 迁移win64位oracle 到linux oracle+asm 手稿
- Oracle递归排序 父子关系排序
- JAVA数据源连接方式汇总
- Openjudge187 炮兵阵地(dp)
- 英文字母个数
- leetcode Pascal's Triangle 帕斯卡尔三角形输出
- ViewPager + Fragment两边留白问题
- 为自己的工作和学习做个记录
- aliyun rds使用
- ubuntu修改apache2的默认访问端口
- 如何利用光驱位给老旧笔记本电脑安装固态硬盘