最近觉得jdbc还是很好用的,主要还是效率高哈哈
一般我写jdbc都喜欢写基类
第一种直接通过常量来获取连接
package com.demo.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class BaseJdbcDao {
//连接的驱动字符串
public static final String DRIVER="com.microsoft.sqlserver.SQLServerDriver";
//连接的URL
public static final String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=news";
//数据库用户名
public static final String NAME="sa";
//数据库密码
public static final String PARSWORD="123";
//连接对象
public static Connection con=null;
public static PreparedStatement pstmt=null;
//结果集
public static ResultSet rs=null;
/**
* 获取链接
*
* @return
* @throws ClassNotFoundException
* @throws SQLException
*/
public Connection getCon() throws ClassNotFoundException, SQLException{
Class.forName(DRIVER);
con=DriverManager.getConnection(URL,NAME,PARSWORD);
return con;
}
/**
* 关闭方法
*
* @param con
* @param pstmt
* @param rs
* @throws SQLException
*/
public void closeAll(Connection con,PreparedStatement pstmt,ResultSet rs) throws SQLException{
if(rs!=null){
rs.close();
}
if(pstmt!=null){
pstmt.close();
}
if(con!=null){
con.close();
}
}
}
第二种通过属性文件区读取连接信息
其实只是连接信息的读取不一样
首先我们要先在项目里面添加.properties文件,然后来读取.properties(属性)文件,在项目中我们一般将他们放在默认的路径(src)下创建
文件里面写
driver=com.microsoft.sqlserver.SQLServerDriver
url=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=news
user=sa
password=123
当在调用Properties类的load()方法时,系统把.properties文件的内容加载到内存中
步骤:
1.InputStream is=getClass().getResourceAsStream("文件名");
2.调用Properties的load方法
3.getProperty("属性名");这里的属性名就是之前在.properties中定义字符的等号前面的
4.通过String变量去接收
例如:String Driver=load(getClass().getResourceAsStream("文件名")).getProperty("driver");
就这样去获取连接信息
以上是但个连接的2种不同的配置法,每次只有一个连接打开或关闭,这也引起了我们去思考,有没有连接在初始化时创建一定数量的数据库连接,所以有了连接池呵呵
那么有了数据库连接池我们只需要从连接池中取出空闲状态的数据库连接,当程序访问数据库结束时,再将数据库连接放回连接池,这样可以提高数据库的访问效率
数据库连接池怎么获取连接呢:
1.Context ic=new InitialContext();
2.DataSource source=(DataSource) ic.lookup("java:comp/env/jdbc/B2CShop");
3.Connection con=source.getConnection();
我们是通过JNDI技术去获取的DataSource
所以呢我们的JNDI还得去配置
在Tomcat的根目录\config\context.xml中添加信息
<Resource name="jdbc/B2CShop" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="sa" password="" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;DatabaseName=news"/>
在将sql的驱动放到Tomcat 目录的lib文件夹里面
其实数据连源就是由Tomca容器去创建的
分享到:
相关推荐
### JDBC连接几种数据库的方式 Java Database Connectivity (JDBC) 是 Java 开发者访问关系型数据库的标准接口,通过 JDBC,开发者可以使用 SQL 语句来执行常见的数据库操作,如查询、更新、插入等。本文将详细介绍...
### 通过JDBC连接Oracle数据库的十大技巧 #### 1. 使用Thin驱动程序 在Java客户端软件开发过程中,Oracle提供了多种驱动程序供开发者选择。其中,OCI(Oracle Call Interface)驱动程序通过Java本地接口(JNI)与...
总的来说,JDBC提供了一种标准化的方法来访问各种不同类型的数据库,使得Java开发者可以编写与数据库无关的代码,提高了代码的可移植性和复用性。通过上述示例,你可以根据具体的数据库类型进行相应的配置,实现与...
JDBC 可以适用于多种关系型数据库。 #### 二、JDBC连接数据库步骤 通常情况下,使用 JDBC 连接数据库主要涉及以下几个步骤: 1. **加载数据库驱动**:通过 `Class.forName()` 方法来加载特定数据库的 JDBC 驱动。 2...
对于 Microsoft SQL Server 数据库,有几种不同的驱动程序可用于 JDBC 连接。以下是一些示例: 1. **SQL Server 7.0/2000** ```java Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance...
本文将详细介绍如何使用JDBC连接Microsoft Access数据库,一种常见的轻量级数据库管理系统。Access数据库以其易于使用和良好的兼容性,常被用作学习数据库概念或小型项目的数据存储。 一、JDBC驱动与Access数据库 ...
本文将详细介绍几种常见数据库(Oracle、SQL Server、MySQL和Access)的JDBC驱动以及它们对应的URL配置方式。 #### 二、Oracle数据库驱动及URL配置 ##### 1. 驱动名称: - **驱动文件**:`ojdbc14.jar` - **驱动...
下面将详细介绍如何使用JDBC连接几种常见的数据库。 #### 1. Oracle数据库连接 对于Oracle数据库,可以使用thin驱动(纯Java驱动)来建立连接。示例代码如下: ```java try { Class.forName("oracle.jdbc.driver...
3. **Type 3(Universal JDBC Driver)**:这是一种中间件驱动,通过网络协议与数据库交互,适用于跨平台的分布式环境。 4. **Type 4(Native JDBC Driver)**:也称为纯Java驱动,它是完全用Java编写的,直接与...
本文将深入解析几种常用的数据库连接池——Apache DBCP、C3P0、Proxool、BoneCP的详细配置参数,帮助开发者更好地理解和应用这些技术。 ### Apache DBCP **dataSource**: 配置数据源,通常在应用服务器的配置文件...
除了以上介绍的几种数据库外,还有多种其他类型的数据库也支持通过JDBC进行连接。 **1. ODBC连接方式** ODBC (Open Database Connectivity) 是一种用于访问数据库的标准接口。例如: ```java Class.forName("sun....
由于不同的数据库管理系统(DBMS)之间存在差异,因此在使用 JDBC 连接不同的数据库时,需要根据特定数据库的特点来配置相应的参数。本文将详细介绍如何针对 Oracle、MySQL 和 SQL Server 这三种常见数据库进行 JDBC...
标题“Java用JDBC实现对Oracle数据库操作”主要涉及Java编程语言如何利用Java Database Connectivity (JDBC) API来与Oracle数据库进行交互。JDBC是Java中用于与各种数据库通信的标准接口,而Oracle数据库是一个广泛...
JDBC 是一种“开放”的方案,它为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯 Java 语言编写完整的数据库应用程序。 JDBC 提供两种 API,分别是面向开发人员...
JDBC提供了一种标准的API,使得开发者能够使用SQL语句来查询、更新和管理数据库中的数据。对于任何从事数据库操作的Java开发者而言,掌握正确的JDBC连接字符串构造方法至关重要,这不仅能够确保数据库连接的稳定性和...
以下是标题和描述中提到的几种数据库及其对应的JDBC驱动jar包: 1. **DB2**:IBM的DB2数据库使用的JDBC驱动jar包通常命名为`db2jcc.jar`或`db2jcc4.jar`。这个jar包提供了连接到DB2数据库所需的所有类和方法。 2. ...
DB2提供了几种类型的JDBC驱动,包括Type 1(JDBC-ODBC桥接)、Type 2(部分Java实现,依赖本地库)、Type 3(完全基于网络的驱动)和Type 4(纯Java,无需本地库)。最常见的是Type 4,如db2jcc4.jar,它提供高效且...
- JNDI查找:在应用服务器中,通过JNDI查找DataSource,简化数据库配置。 - ResultSetMetaData:获取查询结果的元数据,如列名、数据类型等。 - Savepoint:设置保存点,实现部分回滚,控制事务粒度。 6. JDBC与...
对于Sybase数据库,JDBC驱动主要有以下几种类型: 1. **类型1(纯Java驱动)**:也称为桥接驱动,它依赖于数据库供应商提供的ODBC驱动。这种驱动不适用于所有平台,因为需要安装ODBC驱动。 2. **类型2(部分Java...
这个驱动程序分为几种类型,包括Type 1、Type 2、Type 3和Type 4。在Java中,我们通常使用Type 4驱动,因为它是一个完全Java实现的、纯Java的驱动,无需依赖于本地的数据库客户端库。使用这个驱动,开发者可以通过...