求jdk1.8连接sqlserver2014驱动
发表在JavaWeb图书答疑 2017-11-10 悬赏:2 学分 《JavaWeb项目开发实战入门》第1章 企业门户网
是否精华
版块置顶:

求jdk1.8连接sqlserver2014驱动

tomcat 9.0

谢谢!

分享到:
精彩评论 9
无语_mrkj
学分:3155 LV11
2017-11-10
沙发

光盘里有提供,您可以到这章的src目录下找一下,文件名是sqljdbc4.jar,就是02/Src的根目录。

215774798
学分:54 LV3
2017-11-10
板凳

我就是用光盘里的,但报错:数据服务器出现错误!

郁闷的是控制台不报任何信息。弄了几天了百思不得其解。

215774798
学分:54 LV3
2017-11-10
地板

public String ArticleList(String toPage, String pageNum, String pageSize) {
  try {
   Connection Conn = ConnDB.getConnection();    //获取数据库
   Statement stmt = Conn.createStatement();    //创建数据库连接状态
   ResultSet rs = null;         //创建结果集查询
   StringBuffer resultData = new StringBuffer();   //创建结果字符串集合
   String sSql = "select * from article order by articleid desc";//创建数据库查询语句
   rs = stmt.executeQuery(sSql);       //执行数据库查询
   resultData=Fun.ArticleList(resultData,rs,toPage,pageNum, pageSize);  //获取返回分页结果
   rs.close();            //关闭结果集查询连接
   stmt.close();           //关闭数据库连接
   Conn.close();           //关闭数据库
   return resultData.toString();       //给前台返回结果集
  } catch (Exception e) {
   return "No";           //若获取数据库失败,返回“No”
  }
 }


请教如何把返回No改为返回真实错误信息?

无语_mrkj
学分:3155 LV11
2017-11-11
4L

数据库连接失败,可能是登录密码与程序中指定的不一致,请确认root用户的密码是否为root。还有这个第一章的程序应该是MySQL数据库,不能用SQL Server 2014。

另外,控制台没有异常信息,您可以在return “No";前面加一行输出异常到控制台的语句,加入后的效果如下:

e.printStackTrace(); 

return "No";

215774798
学分:54 LV3
2017-11-11
5L

发贴时选错章节了,呵呵。

215774798
学分:54 LV3
2017-11-11
6L

添加e.printStackTrace();这一行后控制台报错信息如下:


com.microsoft.sqlserver.jdbc.SQLServerException: 只进结果集不支持请求的操作。
 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
 at com.microsoft.sqlserver.jdbc.SQLServerResultSet.throwNotScrollable(SQLServerResultSet.java:376)
 at com.microsoft.sqlserver.jdbc.SQLServerResultSet.verifyResultSetIsScrollable(SQLServerResultSet.java:399)
 at com.microsoft.sqlserver.jdbc.SQLServerResultSet.absolute(SQLServerResultSet.java:1474)
 at demo.Function.ArticleList(Function.java:115)
 at demo.Article.ArticleList(Article.java:24)
 at org.apache.jsp.ArticleList_jsp._jspService(ArticleList_jsp.java:161)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:444)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
 at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
 at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
 at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:500)
 at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
 at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754)
 at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376)
 at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
 at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 at java.lang.Thread.run(Thread.java:745)

无语_mrkj
学分:3155 LV11
2017-11-13
7L

Statement stmt = Conn.createStatement();    //创建数据库连接状态

将这句加上参数试试

Statement stmt = Conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE);    //创建数据库连接状态


215774798
学分:54 LV3
2017-11-18
8L

谢谢。结贴。

无语_mrkj
学分:3155 LV11
2017-11-21
9L

215774798 发表于2017-11-18 13:55

谢谢。结贴。

OK

首页上一页 1 下一页尾页 9 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照