1. java中建立数据库连接池,有哪几个步骤
Context context=new InitialContext();
DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/"+projectName);这里的projectName指的是你的项目名称然后在tomcatde 的\conf\Catalina\localhost目录下配置一个和你项目名称相同的xml文件文件的配置方法可以去网络下很多的,这样就可以使用连接池了。
2. 面试时面试管要你写一个数据库连接池 怎么写(代码)
ASP+access数据库连接
<%
set conn= Server.CreateObject("adodb.connection")
conn.open "provider=microsoft.jet.oledb.4.0;data source="&server.MapPath("data/db.mdb")
%>
你应该反问他,你需要我写那一种数据库连接的代码呢??因为不同的数据库有不同的用法和安全性~~~
MSsql和mysql都算是比较安全的!但是就需要服务器的支持,而access一般来说,只要服务器支持ASP的就可以了!~~
还有其他特别的数据库,例如:Oracle等等。都有不同的连接方法和代码。如果不是很具体的说明使用那种数据库,很难做出正确答案!
用我的和1楼的都可以的!只是数据库不同~~~
还有你要问你是想我用什么的语言实现。网页类语言很多的!
常用的有:ASP,ASP.net,PHP,CGI,JSP。
各种的数据库连接方式都不同,而代码就更为不同了!
但是基本原理都和二楼的大为相似~~~
所以要看你的要求达到那个水平才行~~~
3. 如何编写出高效的数据库连接池
数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显着影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。
4. oracle的jdbc数据库连接池怎么写
这个,自己写就算了吧,能问出这个问题的 大多还是新手或者刚刚接触到这个部分的老手。
建议你用开源的数据库连接池,比如C3p0,Durib 这些。一个是成熟,该趟的坑大家都趟过,在网上可以快速找到解决方法。如国感兴趣,有能力可以看看人家的代码,进而实现自己的数据库连接池。
关于,自己写 大概需要两个东西,一是实例池(commons-pool 被DBCP采用,Dbcp-Hibernate 的连接池)和代理模式。有了这两个东西应该比较容易看懂数据库连接池了。
5. 能不能用java,手动的自己写一个数据库连接池
用一个List来模拟连接池存放数据库连接,当有请求使用连接的时候就从List提出来,并list.remove(index)。当使用完之后再add回来,如果List.size为空,就new一个连接。再用一个线程来定时监控List中连接的有效性。期间要记得定义几个变量来记录数据库的连接数、“忙”连接数、空闲连接数、最大连接数、最小连接数等。至于如何建数据库连接,这个我就不说了。
我的大致思路就是这样,我也没实际动手自己写过,不知道成不成功!
6. 数据库连接池的连接字符串怎么写..
点击VS然后选择服务器资源管理器,点数据库连接,然后添加连接,填入服务器名,和用户名密码,选择你要连接的数据库名称,就OK了.然后点击属性.你就可以看到连接的字符串是什么..这是最简单的..或者直接在wenconfig里写<connectionStrings>
<add name="MeiDie" connectionString="server=你要连接的服务器名;uid=用户名;pwd=密码;database=数据库名称"/>
</connectionStrings>
7. asp 数据库连接池怎么做
从网上找的,希望对你有所启发
Asp实现的数据库连接池功能函数分享
投稿:junjie
这篇文章主要介绍了Asp实现的数据库连接池功能函数分享,本函数能够加快网页的访问速度,降低数据库的压力,需要的朋友可以参考下
数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显着影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。
但是这项技术一般在java ,php ,.net 里面运用到,asp很少用到,因为一些企业网站根本就不需要这样的技术。
也不是不能使用,下面就是研究出来的asp版本,能够加快网页的访问速度,降低数据库的压力。
1.数据库连接文件 DbPool.asp
< %
Const PoolSize = 10
Const Connstr = "Driver={SQL Server};Server=(local);UID=sa;word=555;Database=db"
Function GetRandString(lenth)
Dim rndstr,i
Randomize
rndstr = ""
i = 1
do while i <= lenth
rndstr = rndstr & Chr(cint(((120 - 98 + 1) * Rnd )+ 97))
i = i + 1
loop
GetRandString = rndstr
End Function
Function CreateDbConn()
Dim DbConn,ConnKey
Set DbConn = Server.CreateObject("ADODB.Connection")
DbConn.Open Connstr
ConnKey = GetRandString(10)
DbPool.Add ConnKey,DbConn
End Function
Function GetDbConn()
Dim CurKey,Keys
If DbPool.Count > 0 Then
Keys = DbPool.Keys ' 获取键名。
CurKey = Keys(0)
Response.Write "Cur DbConn Key Is : " & CurKey & "<br />"
Set Conn = Server.CreateObject("ADODB.Connection")
Set Conn = DbPool(CurKey)
If Conn.State = adStateClosed Then '如果这个连接已经关闭,将其从池里注销,再新建一个可用的连接并添加到池里
DbPool.Remove CurKey
Call CreateDbConn() '新建一个连接并添加到池里
Set GetDbConn = GetDbConn()
Else '否则的话,将其从池里注销,然后将复制的对象返回
DbPool.Remove CurKey
Set GetDbConn = Conn
Exit Function
End If
Else
Response.Write "连接池已用完,请重新初始化应用程序"
Response.End
End if
End Function
Function FreeDbConn(DbConn)
DbPool.Add GetRandString(10),DbConn
End Function
2.全局文件 global.asa
<object ID="DbPool" Progid="Scripting.Dictionary" Scope="Application" runat="server"></object>
<!--#include file="DbPool.asp"-->
< %
Sub Application_OnStart
Dim ConnKey
For i = 1 To PoolSize '建立指定数目的数据库连接
CreateDbConn()
Next
End Sub
Sub Application_OnEnd
DbPool.RemoveAll
End Sub
%>
3.测试文件 test.asp
<!--#include file="DbPool.asp"-->
< %
Response.Write "Test Start:<br>"
Response.Write "Current Objects count : " & DbPool.Count & "<br />"
Set dbconn = Server.CreateObject("ADODB.Connection")
Set dbconn = GetDbConn()
Response.Write "get one connection from pool <br />"
Response.Write "Current Objects count : " & DbPool.Count & "<br />"
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.open "select * from mkdb",dbconn,1,1
Do While Not rs.eof
Response.write Rs("v_oid") & "<br />"
Rs.movenext
loop
FreeDbConn(dbconn)
Response.Write "free one connection to pool <br />"
Response.Write "Current Objects count : " & DbPool.Count & "<br />"
%>
8. 如何写哟个高并发的数据库连接池
v.usn(+) order by segment_name ; 查看表空间的使用情况 select sum(bytes)/(1024*1024) as free_space,tablespace_name from dba_free_space group by tablespace_name;