本来说把自己学的东西放网上,记录学习过程, 与大家交流,
结果忙得什么都忘了,好不容易 有时间了,又走上了管理阶层。
在把07级的培 养方案做出来了过后,终于可以轻松一下了,于
是找算写点东些上来。
很多人在网上都在使用数据连接池来操作数据库的连接,于是我
我也找算试用一下,于是我就在网上搜了下,做了起来:
1.在我的Tomcat/config/servet.xml下把DataSource配置:
<ResourceParams name="leaveword">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriveriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://127.0.0.1:1433;database=leaveword</value>
</parameter>
<parameter>
<name>username</name>
<value>lyovercome</value>
</parameter>
<parameter>
<name>password</name>
<value>8888</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>50</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
</ResourceParams>
2.写DataSourceDemo.jsp页面测试:
<%@ page import="java.sql.*"%>
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%
Connection conn=null;
try
{
Context ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/leaveword");
conn=ds.getConnection();
}
catch(Exception e)
{
System.out.println("连接数据库失败");
}
%>
<%=conn%>
结果什么错都没有,就是输出为空,说明我数据库连接没连下,于是我就找了
tomcat/webapp/Tomcat-doc下的文档来看,原来我的Tomcat是5.5配置方式有变
于是我改写了格式如下:
<Resource name="leaveword" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="lyovercome" password="8888"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://127.0.0.1:1433;database=leaveword"/>
保存,关闭重起,测试成功。数据库连接对象成功了,很是高兴。总结如下:
在使用一个没有用过的东西时,最好先看一下他的文档。
但总觉得少了些什么,原来是我一般都是用javaBean操作数据库连接,能不能在JavaBean里面
建立数据连接池呢?我在网上找了很久都有找到,但也有些收获,通过对象池模式,反射和JNDI
我做了如下测试:
1。在我的jsp页面增加out.print("class="+ds.getClass().getName());
得到如下结果:
原来ds只是org.apache.commons.dbcp.BasicDataSource的一个对象,于是我开始在我的Tomcat
lib目录下去找包有这个类的jar文件。找到它被放在:commons-dbcp-1.2.1.jar包里
于是我将lib下的所有.jar导入到我的项目里面,写了一个main方法进行测试:
public static void main(String[] args) throws NamingException, SQLException
{
//创建一个BasicDataSource对象,查看其方法进行猜测,
//我发现它的设置方法的server.xml里面的属性有相似之处
//于是用其方法进行了如下设置
BasicDataSource dbds = new BasicDataSource();//自己创建一个对象
dbds.setDriverClassName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
dbds.setUrl("jdbc:microsoft:sqlserver://127.0.0.1:1433;database=leaveword");
dbds.setUsername("sa");
dbds.setPassword("123");
dbds.setInitialSize(30);
//jdni配置
Hashtable env=new Hashtable();
//说明命名工厂的类文件名
env.put("java.naming.factory.initial","org.apache.naming.java.javaURLContextFactory");
InitialContext ctx=new InitialContext(env);
//绑定jdni到datasource
ctx.bind("leaveword", dbds);//将dbds对象与leaveword进行绑写
DataSource ds=(DataSource) ctx.lookup("leaveword");//通过绑定名找到dbds对象
Connection conn=ds.getConnection();//通过ds的方法获得数据库的连接
Statement stmt = conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from words");
while(rs.next())
{
System.out.println(rs.getString(2));
}
}
测试成功,输出了我数据库里的人容。
分享到:
相关推荐
然后在代码中通过如下方式获取和释放连接: ```java Properties props = new Properties(); props.setProperty("jdbc.url", "your_database_url"); props.setProperty("jdbc.username", "your_username"); props....
以下是如何使用DataSource连接数据库: - 查找DataSource:`Context ctx = new InitialContext(); DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/DataSourceName");` - 获取连接:`Connection conn ...
在JSP和JavaBean中,连接数据库通常需要使用JDBC(Java Database Connectivity)。JDBC是Java标准库中的一个接口,提供了与多种数据库系统交互的能力。首先,我们需要在JavaBean中加载数据库驱动,建立数据库连接,...
2. 在JSP页面中,通过`<jsp:useBean>`标签实例化JavaBean,然后调用其连接数据库的方法。 3. 在JavaBean中,使用上述的JDBC步骤建立连接,但将结果存储在成员变量中,以便JSP可以访问。 4. JSP通过`...
2. **数据库连接获取**:通过两种方式提供数据库连接:一种是通过`DataSource`自动获取连接;另一种则是手动指定数据库驱动、URL、用户名和密码来获取连接。 3. **执行SQL语句**: - `executeUpdate`: 用于执行...
在实际应用中,通常会使用DataSource来管理数据库连接池,提高性能和资源利用率。 **MySQL**: MySQL是一种关系型数据库管理系统,以其高性能、易用性和开源特性而广受欢迎。在信息管理系统中,MySQL用于存储和管理...
在Tomcat中,可以在`context.xml`配置文件中定义数据源,然后在Java代码中通过`InitialContext`查找并获取数据源,使用`DataSource.getConnection()`方法获取连接。 JavaBeans是一种设计模式,它定义了一种规范,...
数据库连接池的实现可以使用Java中的DataSource接口,例如Apache Commons DBCP、C3P0等。这些实现提供了数据库连接池的管理和分配功能,可以方便地集成到JavaWeb应用程序中。 数据库连接池是JavaWeb开发中的一种...
为了解决这些问题,开发者们通常会将数据库操作封装到 Javabean 中,以隐藏核心数据库操作代码,杜绝直接数据库操作带来的问题,并减少数据库操作的编码量。 封装数据库操作的目的 封装数据库操作的主要目的是为了...
然而,不使用数据源连接数据库有一些缺点: 1. **安全性**:数据源提供了一种集中管理数据库连接的方式,可以更好地控制访问权限和资源。 2. **连接池**:数据源通常与连接池结合,可以复用已打开的连接,提高性能...
在Java编程中,连接数据库是一项基础且至关重要的任务。它使得应用程序能够与各种数据库系统进行交互,例如MySQL、Oracle、SQL Server等。本实例将详细讲解如何使用Java连接数据库,以Dbutils工具库为例,这是一个轻...
在这个项目中,数据源(DataSource)被用作JDBC的一个关键概念,它是连接数据库的工厂,简化了数据库连接的管理和关闭,提高了性能和可维护性。 项目中的身份验证流程可能如下: 1. **用户界面**:管理员在JSP页面...
// 连接数据库的代码... } %> connectDB(); %> ``` 4. **使用连接池**: 在实际开发中,为了提高性能和资源利用率,我们会使用连接池管理数据库连接,比如C3P0、Apache DBCP或HikariCP。连接池可以预先...
在JavaServer Pages (JSP) 中,连接数据库是常见的任务,尤其在开发Web应用程序时。JSP通过Java Servlet技术来实现动态网页,并可以利用Java API与数据库进行交互。本篇文章将详细阐述JSP链接数据库的各种配置,包括...
这种方式极大地减少了连接数据库所需的开销,从而显著提高了应用程序的响应速度和整体性能。 #### 二、数据库连接池配置示例——使用DBCP 在本文档中,我们将通过一个具体的实验案例来详细介绍如何配置DBCP...
在本项目中,开发者可能会创建一个`DataSource`实例来管理数据库连接,然后通过PreparedStatement对象执行SQL语句,实现对通讯录数据的CRUD操作。为了提升性能和资源管理,可能还应用了连接池技术,如Apache的DBCP或...
在数据库连接方面,使用了Tomcat的数据源(DataSource)。数据源是Tomcat服务器提供的一种管理数据库连接的机制,它可以高效地管理多个并发请求对数据库的访问,避免了频繁的数据库连接和关闭操作,提高了性能和资源...
在JSP中使用连接池,可以将数据库操作封装在JavaBean或Servlet中,然后在JSP页面中调用,这样既保持了页面的清晰性,又实现了数据库连接的高效管理。 在实例86jspJDBCPool中,我们可能会看到以下关键代码片段: - ...