社区
Web 开发
帖子详情
关于JSP连接数据库超慢的问题,在线等,解答就给分!
zhl7522
2005-05-31 01:14:57
问题如题:我用jsp+tomcat的连接池方式连接的sqlserver数据库,在报表查询时很快,可唯一在用户登陆身份让证时很慢,能有10秒才能进来,而那么大个报表查询才用5秒,晕,现在我已经把登陆的语句精简的不能再精简了,而且表也只有20条记录,请问告位谁知道是怎么回事?(jsp和sqlserver是两台同网段的服务器),解决就结贴!!!
...全文
167
8
打赏
收藏
关于JSP连接数据库超慢的问题,在线等,解答就给分!
问题如题:我用jsp+tomcat的连接池方式连接的sqlserver数据库,在报表查询时很快,可唯一在用户登陆身份让证时很慢,能有10秒才能进来,而那么大个报表查询才用5秒,晕,现在我已经把登陆的语句精简的不能再精简了,而且表也只有20条记录,请问告位谁知道是怎么回事?(jsp和sqlserver是两台同网段的服务器),解决就结贴!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhl7522
2005-06-06
打赏
举报
回复
我用的是MS的,可还是不行,得我到客户那再测试一下试试吧!谢谢各位了,希望能解决些问题的继续回贴!谢谢了:)
Jomper
2005-05-31
打赏
举报
回复
你是用什么驱动连接的sqlserver?
如果是sun.jdbc.odbc.driver 和odbc的话请改用msjdbc.
dengwork
2005-05-31
打赏
举报
回复
是不是 忘记关闭 数据库连接了呢
zhl7522
2005-05-31
打赏
举报
回复
你要说是连接池的问题那为什么查询报表时那样快,比我以前没用连接池时快多了,而且语句也复杂多了,可就这么一个登录页面就这样慢,晕:)
free_card
2005-05-31
打赏
举报
回复
focus
ortegasl
2005-05-31
打赏
举报
回复
我也遇到了相同的问题,我连接的是ORACLE9I数据库,速度太慢了,不知道是不是连接池的问题,不会要自己写吧???
zhl7522
2005-05-31
打赏
举报
回复
不是,第二次连接问题依旧!
dophin1003
2005-05-31
打赏
举报
回复
应该是第一次取连接的关系吧。
JSP
数据库连接池的研究与实现(源代码+论文).rar
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的
问题
,欢迎随时与博主沟通,博主会及时
解答
。鼓励下载和使用,并欢迎大家互相学习,共同进步。
基于
jsp
实现的数据库连接池的研究与实现(源代码+论文).rar
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的
问题
,欢迎随时与博主沟通,博主会及时
解答
。鼓励下载和使用,并欢迎大家互相学习,共同进步。
java程序是怎么操作数据库的,可以以常用据库为例,求详细
解答
,最好能举例。
java 实现连接sql server 20002007-12-16 13:28:00.0 第一种:通过ODBC
连接数据库
JAVA语言的跨平台的工作能力(Write Once ,Run Anywhere)、优秀的图像处理能力(我相信现在没有那种语言可以超过JAVA在网络上的图形处理能力)、网络通信功能、通过JDBC数据库访问技术等等,让我们谁都不可否认JAVA语言是SUN公司对于计算机界的一个巨大的贡献。笔者可以描述这样一个场景:有一天你上网完全可以不用IE 或者NETSCAPE,上网就像是玩游戏,你可以获得游戏那么精美的图像和互动的感觉,如果你玩过UO,也许你就知道那种感觉了,但是JAVA做成的东西一定会超过UO的,因为不单单是游戏,也不是单单是浏览器,如果你愿意(要你有钱,有时间,有优秀的JAVA人才)你可以把所有的这一切用Java完全集成出来!!!我不是夸大JAVA的功能,大家可以访问一下http://www.simchina.net的那个社区程序,你就能找到一种感觉了:相信我没有说什么假话 。好了,不说废话了,现在我向你介绍JAVA的数据库访问技术----JDBC数据库访问技术(你可千万不要搞成ODBC了哟!)。 JDBC技术事实上是一种能通过JAVA语言访问任何结构化数据库的应用程序接口(API)(Sun这样说的,我也不知道是不是真的),而且现在的JDBC 3.0据Sun说也能访问Execel等电子表格程序! JDBC对于数据库的访问有四种方式,我们这里只是介绍两种: 第一种是通过ODBC做为“桥”(Bridge)对数据库访问,第二种是直接对数据库访问。 我们先来看看第一种JDBC<-->ODBC访问的流程: JDBC Driver Mannager->JDBC<->ODBC桥->ODBC->数据库客户机驱动库->数据库服务器->返回查询结果,在这种访问中值的我们注意的是虽然JAVA是"Write Once ,Run Anywhere",但是如果通过这种访问的话,需要客户端必须设置ODBC和有相应的数据库客户机的驱动,当你看了下面的另外一个流程的时候或许你会想:明明下一种更方面,为什么还要有这个东西的产生!呵呵,因为,未必所有的数据库服务器提供商都提供下面的JDBC驱动程序(给JDBC访问提供相应的接口),所以就有了JDBC<->ODBC Bridge。 接着再让我们来看看第二种访问流程: JDBC Driver Mannager->局部JDBC驱动->客户端数据库->数据库服务器->返回查询结果,这种访问事实上是转换JDBC调用为相应的数据库(Oracle, Sybase, Informix, DB2, 和其他的数据库数据库管理系统)的客户端API调用(这么说,不知道大家能不能懂,说简单点就好像ASP不是通过DSN对数据库访问而是通过OLEDB访问,说道这里我还是不知道大家能不能明白我的意思。哎呀,不要扔鸡蛋嘛!),这种方式的访问需要相应的数据库提供商提供相应的JDBC驱动程序,但是有一种好处,可以独立于odbc用于可以随处可Run的客户端的浏览器中的Applet程序。 我们下面将给大家一个通过JDBC-ODBC桥数据库访问的实例,但是在看下面的事例前我想问大家一次:JDK1.3装了吗?数据库驱动装了吗(我使用的是SQLserver)?你该没有使用Linux吧?虽然java支持Linux,但是老兄我可没有使用Linux哟(这同JAVA的Write Once ,Run Anywhere没有关系),由于使用了运行于Win下面的ODBC,我建议你看看这篇东西http://www.aspcn.com/showarticle.asp?id=112,否则你要是有了
问题
,出不了结果那岂不是要怪我(不过欲加之罪,何患无吃... ...),冤枉呀! 哎呀,说了这么多的废话,还是让我们来看看到底JDBC的调用吧!既然我们是通过odbc访问数据库,所以这个odbc是跑不了的,我们先来设置你的odbc:打开你的odbc数据源->选择系统dsn(Click加新的dsn-)->接下来输入选择数据库类型、输入dsn名:、选择服务器、
连接数据库
的方式、输入数据库的登陆用户和密码->测试连接,如果测试成功的话,那么你的dsn就建立好了,我的dsn名为Sqlserver.使用的是sqlserver7.0,以 “sa”登陆,密码为空。这些东西都是后面要用道的! 好了下面让我们来看程序代码: (该代码已经通过运行) //########################################################### //代码开始 //########################################################### import java.sql.*; //加载java数据连接包,java基本所有的数据库的调用的都在这个东西里面 public class InsertCoffees { public static void main(String args[]) { String url = "jdbc:odbc:sqlserver"; //取得连接的url名,注意sqlserver是dsn名 Connection con; //实例化一个Connection对象 Statement stmt; String query = "select * from col_link"; //选择所有的Col_link表中的数据输出 try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加载jdbc-odbc桥驱动 } catch(java.lang.ClassNotFoundException e) { System.err.print("ClassNotFoundException: "); //加载jdbc-odbc桥错误 System.err.println(e.getMessage()); //其他错误 } try { con = DriverManager.getConnection(url, "sa", ""); //数据库连接 stmt = con.createStatement(); //Create 一个声明 stmt.executeUpdate("CREATE TABLE col_link (sitename varchar (20) NULL ,siteurl varchar (50) NULL) "); //执行了一个sql语句生成了一个表col_link的表 stmt.executeUpdate("insert into col_link values('ASP中华网','http://www.aspcn.com')"); stmt.executeUpdate("insert into col_link values('永远到底有多远','http://xuankong.com')"); //执行一个insert into语句 stmt.executeUpdate("update col_link set siteurl='http://www.aspcn.com/xuankong/xuankongt.jpg' where siteurl='http://xuankong.com'"); //执行一个update语句,更新数据库 ResultSet rs = stmt.executeQuery(query); //返回一个结果集 System.out.println("Col_link表中的数据如下(原始数据)"); //下面的语句使用了一个while循环打印出了col_link表中的所有的数据 System.out.println("站点名 "+" "+"站点地址"); System.out.println("---------------"+" "+"----------------"); while (rs.next()) { String s = rs.getString("sitename"); String f = rs.getString("siteurl"); //取得数据库中的数据 System.out.println(s + " " + f); /*String t = rs.getString(1); String l = rs.getString(2); System.out.println(t + " " + l);*/ /*jdbc提供了两种方法识别字段,一种是使用getXXX(注意这里的getXXX表示取不同类型字段的不同的方法)获得字段名, 第二种*是通过字段索引,在这里我把第二种方法注释了*/ /*你可以访问这个连接获得getxxx的用法:http://java.sun.com/docs/books/tutorial/jdbc/basics/_retrievingTable.html*/ } stmt.close(); con.close(); //上面的语句关闭声明和连接 } catch(SQLException ex) { System.err.println("SQLException: " + ex.getMessage()); //显示数据库连接错误或者查询错误 } } } //########################################################### //代码结束 //########################################################### 在上面这个程序中我想你展示了如何使用JDBC-ODBC
连接数据库
,使用SQL语句生成一个表,使用SELECT、INSERT 、UPDATE语句取的、插入和更新一个表中的数据,如何通过字段名和字段索引访问数据库中的东东!我希望你能从上面的代码真正的学习到一些东西! 发挥你的想象力,设想一下JAVA到底,比如说可以通过数据库做一个不需要GUI(图形用户界面)的聊天室,呵呵,感觉起来就像在DOS环境下打字的聊天室!哈哈! 最后需要说的是笔者的调试上面程序的环境:WIN2000 , JDK1.3,MS SQLSERVER编辑软件:EDITPLUS 2.01a(这最后的东西可不是废话,虽然早就了一些专业的JAVA开发工具,但是笔者建议JAVA初学者使用文本软件开发JAVA程序) 第二种:直接用jdbc访问数据库 (1) 该实例已经运行通过
jsp
连接Sql Server7.0/2000数据库 testsqlserver.
jsp
如下: <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.sql.*"%> <%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; //pubs为你的数据库的 String user="sa"; String password=""; Connection conn= DriverManager.getConnection(url,user,password); Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); String sql="select * from test"; ResultSet rs=stmt.executeQuery(sql); while(rs.next()) {%> 您的第一个字段内容为:<%=rs.getString(1);%> 您的第二个字段内容为:<%=rs.getString(2);%> <%}%> <%out.print("数据库操作成功,恭喜你");%> <%rs.close(); stmt.close(); conn.close(); %> (2)java访问sqlserver服务器 第一步:安装jdbc 点击SQL Server for JDBC驱动程序安装程序setup.exe(可以到微软网站下载 http://msdn.microsoft.com/library/default.asp?rul=/downloads/list/sqlserver.asp下载) 第二步:设置系统变量classpath 假设SQL Server for JDBC 驱动程序安装在d:\jdbc\,则classpath应该设置如下: classpath:=.;…;d:\jdbc\lib; d:\jdbc\lib\mssqlserver.jar; d:\jdbc\lib\msutil.jar; d:\jdbc\lib\msbase.jar; 注意:设置时要在最前面的点号和
分
号 第三步:编辑java程序并且运行 实例1如下: //import com.microsoft.*; //注意:在java与sql server 连接时不需要这个包,其他书上说这个包是必需的,这个
问题
有待进一步讨论 import java.sql.*; import java.net.URL; class insert { public static void main(String[] args) { String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=northwind"; String query="select * from categories"; String query1="insert categories values(10,'Hanbao','Sweet')"; String query2="insert categories values(11,'Naicha','Coffee taste')"; try { Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); Connection con=DriverManager.getConnection(url,"sa","739555"); Statement stmt=con.createStatement(); stmt.executeUpdate(query1); stmt.executeUpdate(query2); stmt.close(); con.close(); } catch(SQLException ex) { } catch(java.lang.Exception ex) { ex.printStackTrace(); } } } 实例2如下: //import com.microsoft.*; //注意:在java与sql server 连接时不需要这个包,其他书上说这个包是必需的,这个
问题
有待进一步讨论 import java.sql.*; import java.net.URL; class java2sqlserver { public static void main(String[] args) { String url="jdbc:microsoft:sqlserver://localhost:1433;User=sa;Password=739555;DatabaseName=northwind"; String query="Select * From Categories"; try { Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); //DriverManager.setLogStream(System.out); Connection con=DriverManager.getConnection(url); checkForWarning(con.getWarnings()); Statement stmt=con.createStatement(); ResultSet rs=stmt.executeQuery(query); dispResultSet(rs); rs.close(); stmt.close(); con.close(); } catch(SQLException ex) { System.out.println(ex.toString()+"----SQLException caught----"); while(ex!=null) { System.out.print("SQLState:"+ex.getSQLState()); System.out.print("Message:"+ex.getMessage()); System.out.print("Vendor:"+ex.getErrorCode()); ex=ex.getNextException(); System.out.println(""); } } catch(java.lang.Exception ex) { ex.printStackTrace(); } } private static boolean checkForWarning(SQLWarning warn) { boolean rc=false; if(warn!=null) { System.out.println("----Warning----"); rc=true; while(warn!=null) { System.out.print("SQLState:"+warn.getSQLState()); System.out.print("Message:"+warn.getMessage()); System.out.print("Vendor:"+warn.getErrorCode()); System.out.println(""); warn=warn.getNextWarning(); } } return rc; } private static void dispResultSet(ResultSet rs) throws SQLException { int i; ResultSetMetaData rsmd=rs.getMetaData(); int numCols=rsmd.getColumnCount(); for(i=1;i<=numCols;i++) { if(i>1) System.out.print(", "); System.out.print(rsmd.getColumnLabel(i)); } System.out.println(""); boolean more=rs.next(); while(more) { for(i=1;i
基于WEB的教学资源管理系统论文
:《基于WEB的教学资源管理系统》是采用Java服务器语言,即
JSP
,基于Browser/Server模式开发的。Java语言的强大网络功能,安全性和跨平台性,B/S模式的瘦客户端性,极大的增强了本系统的适用性、灵活性和安全性。本系统采用Dreamwaver MX 2004作为系统的前台开发工具,Microsoft SQL Server 2000作为后台数据库开发工具。在Windows XP 中使用JDBC驱动程序实现数据库的连接。系统实现了普通用户快速搜索、浏览、下载学校最新公告以及其所需教程、相关课件等信息;普通用户
在线
书写备忘录、收发留言、浏览、提出、回答各种
问题
等互动操作;此外,管理员能添加、删除和修改公告、教程和课件;对用户提出以及
解答
的各种
问题
进行有效的组织和管理等
JavaFan 建站系统 v3.9.16.rar
JavaFan 建站(整站)系统V3.9.16 框架:struts2 spring3 hibernate4 freemarker2.3 mysql5 quartz flazr 1.系统内置了几套模块,可自由切换,通过修改WEB-INF\classes\spring-core.xml 文件的28行,现有可选的模版有:bbs、blogBaby、blogBlack、default、nfc 2.本系统采用 JDK1.6版本编译,如果您的 JDK 版本为 1.5,请先升级您的 JDK 版本。(JDK为向下兼容,请尽可能的升级JDK的版本) 3.系统后台登录地址为:/admin/,初始用户名和密码为:admin admin 4.支持网站基本信息设置,可以在后台设置任意多个参数的值,例如:网站名称、关键字、网站描述、联系电话、邮箱地址等。 5.可任意扩展的留言评论功能,支持网站留言、文章评论、相册评论、案例评论等 6.网站有最新留言或评论时邮件提醒站长,同时邮件推送至同类内容评论者的邮箱。 7.无限极
分
类功能,可根据您的需要对类别进行3级、4级、甚至无限级
分
类。 8.可扩展任意模块的
分
类功能:例如 新闻
分
类、文章
分
类、成功案例
分
类、相册
分
类、产品
分
类等。 9.可任意扩展帮助中心、网站公告、友情链接、关于我们、联系我们等诸多功能。 10.可灵活自由实现**志、新闻动态、产品展示、相册展示等任意功能。 11.记录用户操作**志功能。 12.实现了 FLV、F4V、MP4 的视频
在线
播放流媒体(RTMP)功能,并且在后台控制启动或者停止RTMP服务。 13.网站管理员多权限多用户设置,可针对不同的用户类型设置不同的操作权限。 14.动态维护网站后台管理菜单项。 15.系统实现与腾讯微博、新浪微博的绑定,绑定后,网站的动态信息可以自动的推送至绑定微博,便于微博推广。 16.相比之前版本,对数据库进行了优化调整,很大程度上提升了系统性能。 17.该系统很好的实现了 MVC 的
分
离,您只需要针对 HTML 进行修改即可实现上述所有功能,如有
问题
请在官网留言,我们第一时间为您
解答
。 18.该系统可以无缝的在各种主流数据库中移植,只需针对数据库连接处进行修改即可完美支持 SQL SERVER,Oracle 等数据库。 19.系统集成了定时器功能,方便二次开发的用户进行定时执行任务操作,例如:备份数据库、发送邮件等。 20.系统支持用户注册、登录、忘记密码找回、邮件激活绑定等功能。 21.实现了系统注册用户之间的即时聊天功能,整合异步消息推送机制,便于网站向网站注册用户推送信息。 22.采用IM即时聊天功能实现的站内短信(消息)功能。 23.支持网站注册用户
在线
、离线检测功能。 24.增加了在 HTML 上直接操作 session 功能 25.优化了网站参数设置以及扩展信息无限级设置功能。 26.修复了之前版本的一些BUG。 即将支持论坛功能,敬请期待... 联系我们: QQ:2484932709 Email:tel18357014751@qq.com 电话:0571-85235185 传真:0571-85235185 手机:15381027830
Web 开发
81,092
社区成员
341,716
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章