- 浏览: 651707 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (144)
- grails (2)
- jboss (2)
- html5 (2)
- maven (9)
- mysql (9)
- android (13)
- java (39)
- javascript (16)
- flex (3)
- oracle (7)
- ubuntu (5)
- tomcat (1)
- ssh (1)
- iphone (0)
- eclipse (5)
- jquery (4)
- web (7)
- ibatis (7)
- dwr (5)
- hibernate (1)
- ws (0)
- freemarker (4)
- css (2)
- webservice (1)
- html (2)
- jsp (4)
- os (5)
- xp (4)
- cpu (2)
- sql (5)
- db (2)
- 数据库 (5)
- log4j.properties (1)
- date (1)
- map (1)
- log4j (1)
- java spring dwr (1)
- (2)
- xml (4)
- ajax (3)
- servlet (1)
- xmlhttp (1)
- linux (2)
- socket (2)
- java,多线程 (1)
- android,java,os (1)
- Android,java (2)
- spring (1)
- java,dwr (1)
- js (2)
- 回调 (1)
- java,event (1)
- java ,注解, (1)
- avd (1)
- sdk (1)
- maven,java,xml,nexus (1)
- java,maven,nexus (1)
- Maven,Android,i-jetty,java (1)
- web js 参数 (1)
- java mac os (1)
- mac os (2)
- mac (1)
- 环境 (1)
- 搭建 (1)
- adt (1)
- adb (1)
- iOS (1)
最新评论
-
lhs472194266:
可以 X-Forwarded-For 可以轻易的被伪造
Java获取IP地址:request.getRemoteAddr()警惕 -
Nabulio:
图片全部加载不出来
maven 建立本地仓库 -
wahaha603:
...
Properties的相对路径以及文件的读取操作 -
一别梦心:
图片没了,楼主补充一下吧
maven 建立本地仓库 -
a_jie1981:
a_jie1981 写道试试http://www.findma ...
maven 建立本地仓库
几种常用的 Java 数据源解决方案
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);
以上几种创建数据源的方式多以硬编码来实现,在实际应用中应该以配置文件的形式出现,以方便管理和维护。
发表评论
-
android wifi 无线调试
2012-06-17 17:24 4410数据线丢了,不想花钱去买,在网上看了看,android手机 ... -
adb server is out of date. killing...
2012-06-17 17:20 8040在cmd窗口输入adb shell 或 adb connect ... -
JAVA 回调
2012-06-12 11:35 926熟悉MS-Windows和X Windows ... -
Class is not accessible due to restriction on required library
2012-06-03 12:13 997How to solve This error messag ... -
Column 'id' in field list is ambiguous
2012-04-23 18:20 7653Column 'id' in field list is am ... -
java.util.ConcurrentModificationException
2012-04-01 16:24 0工作中碰到个ConcurrentModificationExc ... -
在Spring框架下获取Bean的方式总结
2012-04-01 16:23 0众所周知,Spring框架将D ... -
普通Java类获取Spring的Bean的方法
2012-04-01 16:18 1317在SSH集成的前提下。某 ... -
android 调用系统图片浏览器并返回图片路径
2012-04-01 15:56 2525调用系统图片浏览器的方法如下: Intent intent ... -
网络编程中Nagle算法和Delayed ACK的测试
2012-03-31 16:43 1421Nagle算法 的立意是良 ... -
ibatis的remapResults属性合理运用
2012-03-31 15:51 1481Proper Usage of remapResults=&q ... -
response.setHeader()下载中文文件名的设置
2012-03-31 15:44 104211. HTTP消息头 (1)通用信息头 即能用于请求消息中 ... -
判断当前操作系统是不是window
2012-03-19 09:08 1594/** * 判断当前操作系统是不是window * * ... -
freemarker数字格式化
2012-03-17 16:53 3045freemarker在解析数据格式的时候,自动默认将数字按3为 ... -
数据库时客户端提示 Cannot proceed because system tables used by Event Scheduler
2012-02-29 21:13 9887在打开数据库或者用数据库管理工具(Navicat)时客户端提示 ... -
Socket用法详解
2012-02-22 16:49 1130一、构造Socket Socket的构造方法有以下几种重 ... -
在任意位置获取应用程序Context
2012-02-16 10:53 1029Android程序中访问资源时需要提供Context,一般来说 ... -
JAVA进程CPU占用率分析方法
2012-02-13 17:05 35811: 首先把JDK Linux版本上传到服务器上.2: 使 ... -
MYSQL索引优化和in or替换为union all
2012-02-07 17:08 1271使用UNION ALL代替OR,这不是绝对的。具体什么时候选择 ... -
dwr同步问题
2012-02-06 22:58 868想要异步的时候,想要同步的时候同步,在不同的情况下我们有不同的 ...
相关推荐
如果不想使用JTA,Spring还提供了一种基于编程式事务管理的解决方案,称为PROPAGATION_REQUIRED。在这种模式下,开发者需要手动调用`TransactionTemplate`或在Service方法上使用`@Transactional`注解来开启和管理...
总的来说,"多数据源事务之解决方案jta+atomikos"是Java环境下解决分布式事务问题的一种有效途径。通过JTA和Atomikos,开发者可以构建出能够处理复杂事务场景的应用,同时享受到Java EE标准带来的可移植性和灵活性。...
综上所述,"spring-boot-easy-connection-pool-master"项目提供了一种实用的解决方案,它结合了Spring Boot的便利性和多数据源的灵活性,为大数据环境下的数据访问和管理带来了极大的便利。通过深入学习和实践该项目...
4. **联邦数据库技术**:IBM的Websphere Information Integrator等产品提供了一种联邦数据库的能力,允许用户通过单一登录和统一视图来访问和操作多种类型的数据源,无论是关系型数据库、文件、Web服务还是协作系统...
方案概述 方案一:优化现有mysql数据库。优点:不影响现有业务,源程序不需要修改代码,成本最低。...三种方案我都试了一遍,而且都形成了落地解决方案。该过程心中慰问跑路的那几个开发者一万遍 :)
除了上述提到的两种数据源外,iReport 还支持以下几种类型的数据源: 1. **XMLDataSource**:允许从 XML 文档中读取数据。 2. **JavaBeanCollectionDataSource**:使用 JavaBean 集合作为数据来源。 3. **CSVData...
6. **使用方法**:`使用方法.txt`文件提供了解决方案的指导,帮助用户理解和使用这个通讯录应用。通常,它会包含步骤如如何运行程序、如何配置数据源、如何执行基本操作等。 7. **项目结构**:尽管具体细节未知,一...
Oracle RAC(Real Application Clusters)是一种高可用性和高性能的数据库解决方案。为了实现高可用性和高性能,需要将 Oracle 数据库配置为 RAC 集群模式。配置 Oracle RAC 集群数据源需要考虑多个方面,包括数据源...
为了解决这个问题,我们可以采用以下几种策略: 1. **分批导出**: - 考虑将大数据集分成若干小批次,每次只处理和导出一部分数据。例如,可以按行或按特定数量的数据进行划分。 - 使用`java.util.Iterator`遍历...
- **算法实现**:可能包括排序算法(如冒泡排序、快速排序)、查找算法(如二分查找)或其他数学问题的解决方案。 - **数据结构**:如数组、链表、栈、队列、树等,它们是解决复杂问题的基础。 - **图形用户界面**...
多数据源配置通常用于以下几种场景: 1. **主从复制**:主数据库负责写操作,从数据库负责读操作,通过这种方式提高系统的读取性能并降低主数据库的压力。 2. **数据分片**:当单个数据库的数据量过大时,可以通过...
本文提出了一种基于PB到Java的Web系统重构再工程的解决方案,该解决方案主要包括以下几个步骤: 1. **概念模型构建**:通过对PB代码进行程序分析来构建概念模型。这一步骤涉及利用自动化工具解析PB代码,提取出关键...
这个压缩包文件"基于Apache Tomcat的一站式Java应用服务器解决方案.zip"很可能包含了关于如何利用Tomcat搭建和管理Java应用程序的详细指南。 Apache Tomcat的核心功能包括: 1. **Servlet容器**:Tomcat的主要职责...
《Java SOA Cookbook》是一本专注于Java面向服务架构(Service-Oriented Architecture,...这些例子可以帮助解决在开发过程中遇到的具体问题,提供解决方案和最佳实践,对于提升开发者技能和项目实施效率具有重要意义。
Java EE 数据初始化应用中的设计模式解决方案是一种基于设计模式的数据初始化方法,旨在解决 Java EE 应用数据初始化时的先后顺序及依赖关系问题。该方法首先将要初始化的数据看做一个复杂对象,通过建造者模式的...
总的来说,这个QQ RTX Java解决方案涵盖了以下几个关键知识点: 1. Oracle数据库的使用与JDBC接口。 2. Java网络编程,包括与RTX API的集成。 3. 数据库事务处理以保证数据一致性。 4. Java代码的保护与混淆技术。 ...
在`ireport`中,用户可以配置以下几种常见的数据源类型: - **JDBC Connection**:连接到特定的关系型数据库。 - **XML DataSource**:从XML文档中读取数据。 - **JavaBean Collection DataSource**:使用JavaBean...
首先,IBM WebSphere门户整合解决方案是一种先进的企业级平台,用于构建、部署和管理集成的Web应用程序和门户。它提供了一个统一的入口点,让用户能够访问多种业务应用、信息资源和协作工具。WebSphere门户支持个性...