JDBC硬编码连接
-
importjava.sql.Connection;
-
importjava.sql.DriverManager;
-
importjava.sql.SQLException;
-
-
publicclassJDBCConn{
-
publicstaticfinalStringDRIVER="com.microsoft.sqlserver.jdbc.SQLServerDriver";
-
publicstaticfinalStringURL="jdbc:sqlserver://localhost:1433;DatabaseName=books";
-
publicstaticfinalStringUSER="sa";
-
publicstaticfinalStringPWD="ok";
-
privateConnectionconn=null;
-
-
publicConnectiongetConn(){
-
try{
-
Class.forName(DRIVER);
-
conn=DriverManager.getConnection(URL,USER,PWD);
-
}catch(ClassNotFoundExceptione){
-
-
e.printStackTrace();
-
}catch(SQLExceptione){
-
-
e.printStackTrace();
-
}
-
returnconn;
-
}
-
}
读取propperties配置文件连接
1.创建读取配置文件的类
-
importjava.io.IOException;
-
importjava.io.InputStream;
-
importjava.util.Properties;
-
-
-
-
-
publicclassEnvextendsProperties{
-
-
-
-
privateEnv(){
-
InputStreamis=(InputStream)this.getClass().getResourceAsStream(
-
"/db.properties");
-
try{
-
load(is);
-
is.close();
-
}catch(IOExceptione){
-
e.printStackTrace();
-
}
-
}
-
-
privatestaticEnvinstance;
-
-
-
-
-
-
publicstaticEnvgetInstance(){
-
if(instance==null){
-
makeInstance();
-
}
-
returninstance;
-
}
-
-
-
-
-
privatestaticsynchronizedvoidmakeInstance(){
-
if(instance==null){
-
instance=newEnv();
-
}
-
}
-
}
2.通过读取配置文件的类获取数据库连接参数
-
importjava.sql.Connection;
-
importjava.sql.DriverManager;
-
importjava.sql.SQLException;
-
-
publicclassPropConn{
-
privateStringdriver=Env.getInstance().getProperty("driver");
-
privateStringurl=Env.getInstance().getProperty("url");
-
privateStringuser=Env.getInstance().getProperty("user");
-
privateStringpwd=Env.getInstance().getProperty("pwd");
-
-
privateConnectionconn=null;
-
-
publicConnectiongetConn(){
-
try{
-
Class.forName(driver);
-
conn=DriverManager.getConnection(url,user,pwd);
-
}catch(ClassNotFoundExceptione){
-
-
e.printStackTrace();
-
}catch(SQLExceptione){
-
-
e.printStackTrace();
-
}
-
returnconn;
-
}
-
}
配置JNDI获取
使用JNDI,数据库连接,数据池和连接的管理都在J2EE容器来配置和管理,程序员只需要对这些配置和管理进行引用即可。
在应用服务器连接池里进行数据库连接以及对应的jndi配置,配置好的JNDI的名称为jdbc/myds
接下来在spring利用JNDI配置数据源
<bean
id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr><property
name="jndiName"><value>jdbc/myapp</value></property>
<wbr><wbr><wbr></bean></wbr></wbr></wbr>
1.在Tomcat安装目录的conf目录下的context.xml文件的<Context/>标记中添加配置
-
<Resourcename="jdbc/books"auth="Container"type="javax.sql.DataSource"
-
maxActive="1000"maxIdel="30"maxWait="10000"
-
username="sa"password="ok"
-
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
-
url="jdbc:sqlserver://localhost:1433;DatabaseName=books"/>
2.编码获取数据库连接
-
importjava.sql.Connection;
-
importjava.sql.SQLException;
-
-
importjavax.naming.Context;
-
importjavax.naming.InitialContext;
-
importjavax.naming.NamingException;
-
importjavax.sql.DataSource;
-
-
publicclassJNDIConn{
-
privateConnectionconn=null;
-
-
publicConnectiongetConn(){
-
try{
-
Contextcontext=newInitialContext();
-
DataSourcesource=(DataSource)context
-
.lookup("java:comp/env/jdbc/books");
-
conn=source.getConnection();
-
}catch(NamingExceptione){
-
e.printStackTrace();
-
}catch(SQLExceptione){
-
e.printStackTrace();
-
}
-
returnconn;
-
}
-
}
连接池
1. 目前开源的连接池有
Proxool DBCP DBPool
等
1)dbcp
dbcp可能是使用最多的开源连接池,原因大概是因为配置方便,而且很多开源和tomcat应用例子都是使用的这个连接池吧。
这个连接池可以设置最大和最小连接,连接等待时间等,基本功能都有。这个连接池的配置参见附件压缩包中的:dbcp.xml
使用评价:在具体项目应用中,发现此连接池的持续运行的稳定性还是可以,不过速度稍慢,在大并发量的压力下稳定性
有所下降,此外不提供连接池监控
2)proxool
proxool这个连接池可能用到的人比较少,但也有一定知名度,这个连接池可以设置最大和最小连接,连接等待时间等,基本功能都有。
这个连接池的配置参见附件压缩包中的:proxool.xml。
使用评价:在具体项目应用中,发现此连接池的持续运行的稳定性有一定问题,有一个需要长时间跑批的任务场景任务,同样的代码
在另外2个开源连接池中成功结束,但在proxool中出现异常退出。
但是proxool有一个优势--连接池监控,这是个很诱人的东西,大概的配置方式就是在web.xml中添加如下定义:
<wbr><wbr><wbr><servlet><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><servlet-name>admin</servlet-name><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr></servlet><br><wbr><wbr><servlet-mapping><br><wbr><wbr><wbr><wbr><wbr><servlet-name>admin</servlet-name><br><wbr><wbr><wbr><wbr><wbr><url-pattern>/admin</url-pattern><br><wbr><wbr></servlet-mapping><wbr><wbr><br>
并在应用启动后访问:http://localhost:8080/myapp/admin这个url即可监控<br>
不过proxool本身的包在监测使用中会有编码问题,附件中有一个<br>
解决此问题的包,参见附件压缩包中的:proxool-0.9.0RC3.jar。另外需要jdk1.5以上的环境。<br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
2.
商业连接池
weblogic的连接池
websphere的连接池
分享到:
相关推荐
java连接数据库方式java连接数据库方式java连接数据库方式
java连接数据库,一个ppt介绍了java连接数据库的几种用法。
使用java语言连接sql数据库 对你的编程一定很有帮助 整理的有点混乱 希望见谅
Java中常用的数据库连接方式有以下几种: JDBC(Java Database Connectivity): JDBC是Java提供的标准数据库连接API,可以与各种关系型数据库进行交互。JDBC提供了一组接口和类,用于连接数据库、执行SQL语句并...
几种常用的数据库连接方式,很详细很实用。
JAVA中怎样连接数据库的几种方法
本文档讲了java连接数据库最常用的几种方式以及多种常用数据库的连接字符串的写法。
这是使用java编程时连接数据库所常用的几种方法,由复杂到简单
Java数据连接池,描述了几种Java与数据库进行连接的方式。
java连接oracle、sqlserver、mysql数据库所需要的jar包文件。
详细总结连接数据库的三种方法,特别对初学者会有很大帮助!
Java连接各个版本Oracle/Mysql/DB2…数据库代码汇总的工具类(附源码和jar包)
数据库连接池(database connection pool)是在 Java 中用于管理数据库连接的一种技术。它的主要目的是提高数据库连接的重用性和性能。在传统的数据库连接方式中,每次与数据库建立连接时都需要进行一系列的网络通信...
主要介绍了Java 连接Access数据库的两种方式,本文着重讲解使用JDBC连接操作Access数据库,需要的朋友可以参考下
数据库连接的几种方法,连接池c3p0 ,Proxool ,Druid ,Tomcat Jdbc ...
SQLite 作为一个开源的嵌入式数据库产品,具有系统开销小,检索效率高的特性,适用于手机、PDA、机顶盒设备等电器,并且作为...同时侧重研究如何应用Java 连接SQLite数据库,并开发基于SQLite 的应用程序。 ......
NULL 博文链接:https://alex295111.iteye.com/blog/726809
连接数据库的几种方式 JAVA编程语言和JDBC JDBC编程的步骤 通过ODBC建立连接 通过SQLSERVER 提供的驱动程序获得连接 通过ORACLE提供的驱动程序获得连接 通过数据源获得连接 通过连接池获得连接 总结数据库...
这是一个sqlserver 2008...另外,还有几种常见的数据连接代码,比如 mysql连接数据的代码, sqlserver 2008连接数据的代码, oracle11g连接数据的代码, 总之,里面的有个使用说明和代码运行的效果图,希望对你有帮助
主要介绍了Java数据库连接池的几种配置方法(以MySQL数据库为例) 的相关资料,需要的朋友可以参考下