
正文
.net连接多数据库连接池,net 数据库连接
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如何在NetBeans中设置数据库连接池
以往要设置数据库连接池,需要借助于第三方软件。但现在NetBeans所带的Tomcat 5.5.7及Sun Application Server 8均可以直接设置。下面谈谈如何在Tomcat 5.5.7下设置。
1. 下载数据库的专用连接驱动,并将其复制到C:Program Filesetbeans-4.1entERPrise1jakarta-tomcat-5.5.7commonlib文件夹下面。
假设所用数据库是Sybase的Adaptive Server Anywhere,从Sybase官方站点下载JConnect-6_0,从中抽取出jconn3这个驱动,复制到上述文件夹下。
2. 启动Tomcat,在IE输入,以管理员身份登录管理。用户登录的方法可参考第5楼。点击Resources下的Data Sources,在右边Data Source Actions的下拉框中选Create New Data Source,按下表示范填写:
JNDI Name: sybase/poolDB /* 根据喜好填 */
Data Source URL: JDBC:sybase:Tds:localhost:端口号
/* 数据库的地址,此为jconn3的形式,端口号需查询确认,但一般都是固定的,除非自己更改 */
JDBC Driver Class: com.sybase.jdbc3.jdbc.SybDriver /* jconn3的驱动 */
User Name: dba/* 用户名,默认为dba */
Password: *** /* 密码,默认为sql */
Max. Active Connections: 4/* 最大活动连接数 */
Max. Ide Connections: 2 /* 最大空闲连接数 */
Max. Wait for Connecton: 5000 /* 等待连接的最大秒数 */
Validation Query: /* 验证字符串,可不填 */
按"Save",再按"Commit Changes",Tomcat在后台将此变化保存到server.XML文件中。"Commit Changes"是最容易忘记的,小心。
3. 以下均转入NetBeans环境中设置。在context.xml修改的内容:
Context path="/Matrix"
ResourceLink global="sybase/poolDB" name="sybase/poolDB" type="Javax.sql.DataSource"/
/Context
"/Matrix"为此Web应用的根地址,表现为。
4. 在web.xml中加入:
resource-ref
descriptionSybase Database Connection Pool/description
res-ref-namesybase/poolDB/res-ref-name
res-typejavax.sql.DataSource/res-type
res-authContainer/res-auth
res-sharing-scopeShareable/res-sharing-scope
/resource-ref
5. 好了,可以使用连接池了。以下代码为在JSP文件中使用JSTL标签库的范例。
sql:query var="queryresults" dataSource="sybase/poolDB"
SELECT * FROM customer
/sql:query
相关问答
Q1: asp.net如何设置数据库连接池的数量
可以使用一组名称-值对以链接字符串的形式配置链接池。例如,可以配置池是否有效(默认是有效的),池的最大、最小容量,用于打 开链接的排队请求被阻断的时间。下面的示例字符串配置了池的最大和最小容量。 "Server=(local); Integrated Security=SSPI; Database=Northwind; Max Pool Size=75; Min Pool Size=5"摘要 连接池允许应用程序从连接池中获得一个连接并使用这个连接,而不需要为每一个连接请求重新建立一个连接。一旦一个新的连接被创建 并且放置在连接池中,应用程序就可以重复使用这个连接而不必实施整个数据库连接创建过程。 当应用程序请求一个连接时,连接池为该应用程序分配一个连接而不是重新建立一个连接;当应用程序使用完连接后,该连接被归还给连接 池而不是直接释放。 确保你每一次的连接使用相同的连接字符串(和连接池相同);只有连接字符串相同时连接池才会工作。如果连接字符串不相同,应用程序 就不会使用连接池而是创建一个新的连接。优点 使用连接池的最主要的优点是性能。创建一个新的数据库连接所耗费的时间主要取决于网络的速度以及应用程序和数据库服务器的 (网络)距离,而且这个过程通常是一个很耗时的过程。而采用数据库连接池后,数据库连接请求可以直接通过连接池满足而不需要为该请 求重新连接、认证到数据库服务器,这样就节省了时间。缺点 数据库连接池中可能存在着多个没有被使用的连接一直连接着数据库(这意味着资源的浪费)。技巧和提示 1. 当你需要数据库连接时才去创建连接池,而不是提前建立。一旦你使用完连接立即关闭它,不要等到垃圾收集器来处理它。 2. 在关闭数据库连接前确保关闭了所有用户定义的事务。 3. 不要关闭数据库中所有的连接,至少保证连接池中有一个连接可用。如果内存和其他资源是你必须首先考虑的问题,可以关闭所有的连 接,然后在下一个请求到来时创建连接池。连接池FAQ 当第一个连接请求到来时创建连接池;连接池的建立由数据库连接的连接字符创来决定。每一个连接池都与一个不同的连接字符串相关。 当一个新的连接请求到来时如果连接字符串和连接池使用的字符串相同,就从连接池取出一个连接;如果不相同,就新建一个连接池。 当连接池中的所有连接都已经关闭时关闭连接池。 当连接池已经达到它的最大连接数目时,有新的连接请求到来时,新的连接请求将放置到连接队列中。当有连接释放给连接池时,连接池将 新释放的连接分配给在队列中排队的连接请求。你可以调用close和dispose将连接归还给连接池。 对于.NET应用程序而言,默认为允许连接池。(这意味着你可以不必为这件事情做任何的事情)当然,如果你可以在SQLConnection对象的连 接字符串中加进Pooling=true;确保你的应用程序允许连接池的使用。 ADO.NET默认为允许数据库连接池,如果你希望禁止连接池,可以使用如下的方式: 1) 使用SQLConnection对象时,往连接字符串加入如下内容:Pooling=False; 2) 使用OLEDBConnection对象时,往连接字符串加入如下内容:OLE DB Services=-4;
Q2: .net 如何使用oracle连接池
连接是一样的,只是执行的sql不一样,至于第二条,是可以不同的人同时连接数据库,不会因为数据库开和关受影响,至于你说的多个人同时用数据库做同一个update操作,这个不可能进行,其实那只是说你可以不用管别人调用数据库连接是否关了,你也可以调用数据库,和他没关系,这就是同时操作互不影响,而不是你说的一个连接上有多个线程对数据库做了update操作,这个是不可能的
总结,连接池的作用是1个以上的人调用数据库连接时不会因为其他人对数据库进行打开或关闭而影响其他人的连接
Q3: 请问在asp.net中,数据库连接池满了,怎么办?
右键-》所有任务-》分离数据库,有个清除按钮,另外在sql server属性里可以设置一下并发用户的最大连接数和查询超时设定,
另外可以改
连接字符串代码"Server=(local); database=db;uid=sa;pwd=sa;
Max Pool Size=75; Min Pool Size=5;"
Q4: Asp.net数据库连接池
完全没有必要, SqlConnection不适合用单例模式, 因为它是线程不安全的, 如果同时有两个线程访问同一个SqlConnection, 可能会出现问题。ADO.Net本身有连接池功能, 楼主只需每次新建一个SqlConnection对象, 用完关闭并丢弃就行了。 当你关闭或者Dispose一个SqlConnection对象时, 底层连接并不会被关闭或释放,而是被放回到连接池中,当下次你构造一个新的SqlConnection对象并调用Open方法时, 也不一定会新建一个底层连接, ADO.net会试图从连接池中取出一个已经打开的底层连接并关联到你的SqlConnection对象上,如果连接池中没有可用连接, 则ADO.net才会新建底层连接。这里新建一个SqlConnection只不边执行了一个内存分配的工作,开销相当小,几乎相当于一次方法调用时的栈操作。而真正大开销的是底层连接的建立,这里要建立网络或管道连接等,对于数据库也会经过会话分配等大量操作,而ADO.net连接池会帮你处理这些。
Q5: .net中设置数据库连接时,默认是允许多少个数据连接?
在实际开发中,不要指定连接数目,不然你的服务器很容易崩溃。
因为,.NET的connection对象默认是启用连接池的,
不管多少个连接,只要connectionstring一样,那都是可以共用的。
所以,很多人就惊讶的看到MYSPACE每天访问量在1.5亿以上。。。
其实一点都不奇怪,有连接池,也有缓存。。。还有服务器集群。。。
再加上SQL SERVER 2005的变态功能。。。
.net连接多数据库连接池的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于net 数据库连接、.net连接多数据库连接池的信息别忘了在本站进行查找喔。






