收藏 分销(赏)

几种常用的Java数据源解决方案.doc

上传人:仙人****88 文档编号:9284363 上传时间:2025-03-19 格式:DOC 页数:6 大小:34KB
下载 相关 举报
几种常用的Java数据源解决方案.doc_第1页
第1页 / 共6页
几种常用的Java数据源解决方案.doc_第2页
第2页 / 共6页
点击查看更多>>
资源描述
几种常用的Java数据源解决方案 JavaMySQLJDBC配置管理SQL 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了,而是mons.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);   以上几种创建数据源的方式多以硬编码来实现,在实际应用中应该以配置文件的形式出现,以方便管理和维护。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服