java连接sql server2005,驱动加载成功,数据库连接失败,应该怎么办?

我的妈呀,搞了我三四天,各种各样的方法都试了,降jdk,升SQLserver,各种各样的设置改动,全都没用,甚至我都想动系统版本了。
一直是出现这个异常:这个异常 java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度。
简直要绝望了,偶然看到了jdk1.7 JDBC连接SQL Server2008,试试看吧,第一步我已经做了,从第二步开始,将驱动下载复制到各自位置,然后运行测试程序,哈,还是有异常,不过异常变了,变成:Exception in thread "main" java.lang.UnsupportedClassVersionError: L10_1 : Unsupported major.minor version 51.0,变了好啊,变了就说明有效果啊,再查这个异常,感谢这个帖子出现 java.lang.UnsupportedClassVersionError 错误的原因及解决方法运行java程序的时候出现Exception in thread "main" java.lang.UnsupportedClassVersionError:
,综合这两个帖子,将java的编译环境jdk和jre更换到相同的1.7版本,啊,奇迹出现了,终于得到想要的结果了
图片说明

感谢上面提及的帖子的作者,让我在学习中得到帮助,及希望我这个问题能帮助到遇到这种问题的网友们。


电脑系统是win7 64位家庭旗舰版的
在sql server2005中建立名为shuihu的库,写了renwu表,在数据源(ODBC)里SQL Server ODBC 数据源测试 中是测试成功的,但在myeclipse里运行简单的测试程序就出错了

图片说明

图片说明

import java.sql.*;
public class L10_1 {
    public static void main(String[] args){
        Connection ct=null;
        Statement sm=null;
        try{
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
             System.out.println("加载驱动成功!");
        }catch(Exception e){
            e.printStackTrace();
        }
        try{            
            ct=DriverManager.getConnection("jdbc:odbc:sqlserver", "sa", "2010cjs");         
             System.out.println("数据库连接成功!");
        }catch(SQLException e){
            e.printStackTrace();
        }
        try{
            sm=ct.createStatement();
            ResultSet rs=sm.executeQuery("select * from bumen");
            while(rs.next())
            {
                int bianhao=rs.getInt(1);
                String mingcheng=rs.getString(2);
                String didian=rs.getString(3);
                System.out.println(bianhao+"   "+mingcheng+"    "+didian);
            }
        }catch(Exception e){}
        finally{
            try{
                if(sm!=null){
                    sm.close();
                }
                if(ct!=null){
                    ct.close();
                }
            }catch(Exception e2){}
        }
    }
}


在网上查了两天了,各种方法都试了,也没能找出问题。
先是jar7以后的不提供ODBC桥,而原先的是jar11,把jar11卸载了,换上jar7,但是没用。
将“sql server configuration manager”中“SQL Server 2005网络配置”下的“SQLSERVER 的协议”里四个协议都启用,其中”TCP/IP“属性里的”IP地址“里的”IPAII“端口改为1433,其他”IP“”以启用“都改为”是“,不过还是没用。
实在是没有办法了,请大神帮忙指导一下。

2个回答

你为什么要阻止错误日志的打印而改成你自己的错误打印呢?一般的话,看问题日志就知道是什么问题了,而且你这里抛异常,用的全是Exception,那么Exception的子类的用途何在呢?开发软件的过程中,越接近问题描述的异常,越方便解决问题,你现在弄到一个最高级的异常,要怎么定位具体的问题呢?

cjsxsw
cjsxsw 问题已经解决了,感谢你的回复
大约一年之前 回复
cjsxsw
cjsxsw 是否是驱动程序不对,版本不对或者安装不对
大约一年之前 回复
cjsxsw
cjsxsw 出现了这个异常 java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度
大约一年之前 回复
cjsxsw
cjsxsw 我改了这个try{ ct=DriverManager.getConnection("jdbc:odbc:sqlserver", "sa", "2010cjs"); System.out.println("数据库连接成功!"); }catch(SQLException e){ System.out.println(e); }
大约一年之前 回复
cjsxsw
cjsxsw 感谢回复。
大约一年之前 回复

加载驱动成功!
java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3907)
at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5698)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:354)
at sun.jdbc.odbc.JdbcOdbcConnection.buildTypeInfo(JdbcOdbcConnection.java:1503)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:381)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at L10_1.main(L10_1.java:15)
具体错误

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
eclipse Java链接SQL server 驱动加载成功但数据库无法连接
![图片说明](https://img-ask.csdn.net/upload/201901/09/1547039291_230290.png) import java.sql.*; public class Main { public static void main(String [] args) { String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=jsp"; String userName="sa"; String userPwd="1234"; try { Class.forName(driverName); System.out.println("加载驱动成功!"); }catch(Exception e){ e.printStackTrace(); System.out.println("加载驱动失败!"); } try{ Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd); System.out.println("连接数据库成功!"); }catch(Exception e) { e.printStackTrace(); System.out.print("SQL Server连接失败!"); } } } ``` 网上给出的检测代码 ```
关于加载SQL server数据库驱动
![图片说明](https://img-ask.csdn.net/upload/201512/21/1450702895_986724.png) ![图片说明](https://img-ask.csdn.net/upload/201512/21/1450702913_191919.png) ![图片说明](https://img-ask.csdn.net/upload/201512/21/1450702921_929851.png) 我下载的是SQL server2008,然后创建了一个数据库hospital,穿件了一张表,然后我在网上下载了一个jar包加到bin目录下面了,然后在eclipse里面用java程序链接数据可是加载失败,这是为什么啊
eclipse连接SQL Server 2017 企业版数据库失败?
# eclipse连接SQL Server 2017 企业版数据库失败 # ## 所用环境 ## - eclipse photon ![在这里插入图片描述](https://img-blog.csdn.net/20181022132242302?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM4MDUxOTcz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) - jre7是为了能装上SQL Server2017新装的 - 同时我也下了sqljdbc6.2并成功安装 </br> ### sql server服务按照网上所说配置好 ### ![在这里插入图片描述](https://img-blog.csdn.net/20181022132148835?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM4MDUxOTcz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) </br> ![在这里插入图片描述](https://img-blog.csdn.net/20181022132516103?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM4MDUxOTcz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) </br> ![在这里插入图片描述](https://img-blog.csdn.net/20181022132532650?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM4MDUxOTcz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) </br> - 在命令指示符中telnet 127.0.0.1 1433也能连接 ### JDBC配置也按照网上的弄好 ### ### 在eclipse的源代码 ### ![在这里插入图片描述](https://img-blog.csdn.net/20181022133052403?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM4MDUxOTcz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) </br> ``` package connectsql; import java.sql.*; public class ConnectSql { public static void main(String[] args) { try { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); System.out.println("驱动加载成功"); }catch(Exception e) { e.printStackTrace(); System.out.println("驱动加载失败"); } try { String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test"; String user="sa"; String password="xuyao5221112"; System.out.println("驱动加载"); Connection conn=DriverManager.getConnection(url, user, password); System.out.println("连接成功"); }catch(SQLException e) { e.printStackTrace(); System.out.println("连接失败"); } } } ``` ### 运行结果 ### ``` try { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); System.out.println("驱动加载成功"); }catch(Exception e) { e.printStackTrace(); System.out.println("驱动加载失败"); } ``` - 这部分能成功运行,并返回驱动加载成功 ``` try { String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test"; String user="sa"; String password="xuyao5221112"; System.out.println("驱动加载"); Connection conn=DriverManager.getConnection(url, user, password); System.out.println("连接成功"); }catch(Exception e) { e.printStackTrace(); System.out.println("连接失败"); } ``` - 这部分只能返回“驱动加载”,然后就没有了下文,接着就出现了这个 ![在这里插入图片描述](https://img-blog.csdn.net/2018102213354017?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM4MDUxOTcz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70) ## 求各位大佬告诉到底哪里弄错了 ## # 跪谢 #
jdbc连接数据库,可以加载驱动,数据库内却取不到值(NullPointException)?
我用两种途径连接数据库,一种是:<br> ![图片说明](https://img-ask.csdn.net/upload/201911/04/1572862039_634364.png)<br> 这一种应该没问题 <br><br> 但是在另一种途径遇到了以下问题:<br> ![图片说明](https://img-ask.csdn.net/upload/201911/04/1572862594_438226.jpg)<br><br> //以下是异常信息: 第一次提问,请问还需要什么信息orz <br><br> ----------------- 换了个电脑 代码进行修改之后 项目能够正常运行了 在原来的电脑上仍有以下报错: ```java 数据库驱动加载成功! Exceptionconn java.lang.NullPointerException findall failed at javax.xml.bind.DatatypeConverter.parseHexBinary(DatatypeConverter.java:310) at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:4061) at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:3157) at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$100(SQLServerConnection.java:82) at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:3121) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7151) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2478) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:2026) at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1687) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1528) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:866) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:569) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228) at ch04.utils.BookUtils.getConnection(BookUtils.java:20) at ch04.dao.impl.BookDaoImpl.findByAll(BookDaoImpl.java:88) at ch04.service.impl.BookservicesImpl.findByAll(BookservicesImpl.java:38) at ch04.controller.BookAction.showall(BookAction.java:127) at ch04.controller.BookAction.doPost(BookAction.java:46) at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) 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:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:526) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:860) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:835) java.lang.NullPointerException at ch04.dao.impl.BookDaoImpl.findByAll(BookDaoImpl.java:92) at ch04.service.impl.BookservicesImpl.findByAll(BookservicesImpl.java:38) at ch04.controller.BookAction.showall(BookAction.java:127) at ch04.controller.BookAction.doPost(BookAction.java:46) at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) 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:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:526) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:860) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:835) [] ```
eplise JDBC连接Sql Server问题
连接Sql Server 失败 JDK11 SQLjdbc6.0 已经按照相关步骤 完成 sa 用户的注册 且可以连接 连接代码 应该没有问题 ``` import java.sql.*; public class ConnecText { public static void main(String [] args) { String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL="jdbc:sqlserver://127.0.0.1: 1433;DatabaseName=WebText"; String userName="sa"; String userPwd="5768722836"; try { Class.forName(driverName); System.out.println("加载驱动成功!"); }catch(Exception e){ e.printStackTrace(); System.out.println("加载驱动失败!"); } try{ Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd); System.out.println("连接数据库成功!"); }catch(Exception e) { e.printStackTrace(); System.out.print("SQL Server连接失败!"); } } } ``` 连接失败 运行结果为 ``` 加载驱动成功! Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:4098) at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:3160) at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$100(SQLServerConnection.java:43) at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:3123) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7505) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2445) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1981) at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228) at Test.ConnecText.main(ConnecText.java:20) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ... 14 more ``` 已按照build path步骤将jdbc.jar 导入 为什么会出现 NOClassDefFoundError????qiu'zhu
java连接sqlserver数据库库出错,不知如何解决,求大神
我按网上给的一些解决办法尝试都没成功 TCP/IP已经启用,并且ip1和10的地址被设定为127.0.0.1,all端口设定为1433 ms-dos中输入telnet 127.0.0.1 1433,则出现了一个名为telnet 127.0.0.1 新的控制台,运行后错错误如下:另外,因为工作方面的原因最近经常要用java连接sql server,中间出现错误但是却不理解,有没有那本书是专门讲解这些错误的意义的 com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。 ClientConnectionId:cd23a148-7cb6-4bc9-86de-e10675fe5d1b at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216) at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:254) at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:84) at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2908) at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2234) at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41) at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2220) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1326) at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at zidingyi.GetConnectionSqlServer.getConnectionSqlServer(GetConnectionSqlServer.java:24) at zidingyi.Try.main(Try.java:8) 我的代码如下 ``` public class GetConnectionSqlServer { public void getConnectionSqlServer() { String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; String dbURL = "jdbc:sqlserver://MIAO-PC\\MIAO\\\\SQLEXPRESS:1433;databasename=stmodel"; // 1433是端口,"USCSecondhandMarketDB"是数据库名称 String userName = "sa"; // 用户名 String userPwd = "sa"; // 密码 Connection dbConn = null; try { Class.forName(driverName).newInstance(); System.out.println("驱动加载成功"); } catch (Exception ex) { System.out.println("驱动加载失败"); ex.printStackTrace(); } try { dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("成功连接数据库!"); } catch (Exception e) { System.out.println("地址端口数据库用户名密码出错"); e.printStackTrace(); } finally { try { if (dbConn != null) dbConn.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } ```
java连接SQL server2008报错,请大神指点
代码:import java.sql.*; public class SQL { static Connection con; static Statement sql; static ResultSet res; public Connection getConnection(){ try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.println("数据库驱动加载成功"); }catch(Exception e){ e.printStackTrace(); } try{ con=DriverManager.getConnection("jdbc:odbc:DemoDB", "sa", "3344521as"); System.out.println("数据库连接成功"); }catch(Exception e){ e.printStackTrace(); } return con; } public static void main(String[] args){ SQL c=new SQL(); c.getConnection(); try{ sql=con.createStatement(); res=sql.executeQuery("select * from CommodityInfo"); while(res.next()){ float price=res.getFloat("InPrice"); String name=res.getString("CommodityName"); int amount=res.getInt("Amount"); System.out.println("价格:"+price); System.out.println("商品名称:"+name); System.out.println("总数量:"+amount); } }catch(Exception e){ e.printStackTrace(); } } } 代码报错如下: at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7121) at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:3117) at sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:337) at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(JdbcOdbcStatement.java:252) at SQL.main(SQL.java:28) 我在用JDBC-ODBC桥梁连接数据库是发生以上报错,初学java不久不知道怎么解决?请大神们帮忙指点一下,谢谢!
求助:编写java包连接SQL Server数据源
代码如下 //数据库连接类 package cc.dbc; import java.sql.Connection; import java.sql.DriverManager; public class DatabaseConnection{ private static final String DBDRIVER="sun.jdbc.odbc.JdbcOdbcDriver"; private static final String DBURL="jdbc:odbc:Java"; private static final String DBUSER="cc"; private static final String DBPASSWORD="cc"; private DatabaseConnection conn=null; public DatabaseConnection() throws Exception{//在构造方法中进行数据库连接 try{ Class.forName(DBDRIVER);//加载驱动程序 this.conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);//连接数据库 }catch(Exception e){ throw e;//为了简单,直接抛出异常 } } public Connection getConnection(){//取得数据库连接 return this.conn;//取得数据库连接 } public void close() throws Exception{//数据库关闭操作 if(this.conn!=null){//避免NullPointException try{ this.conn.close();//数据库关闭 }catch(Exception e){//抛出异常 throw e; } } } } javac编译情况: ![图片说明](https://img-ask.csdn.net/upload/201505/07/1430995078_303803.png) 这个是什么问题?
java web 数据库驱动加载问题!求助!
这段代码总是抛出异常,意思大概是加载数据库驱动时异常,我只复制了第一句 java.lang.ClassNotFoundException: com.MYSQL.jdbc.Driver 我百度后,网上说是导包的问题 在web工程下要把数据驱动包放到WebContent\WEB-INF\lib目录下 我放进去后,并且web工程右键build path 选择了这个jar包 然后把jsp文件run on server后出现的异常 包头需要倒入java什么包呢,我导入了 .lang.*,.util.*,.sql.*, 怎么弄都不行,求大神帮助! ``` try{ Class.forName("com.MYSQL.jdbc.Driver"); } catch (ClassNotFoundException e){ System.out.println("加载数据库驱动时异常!"); e.printStackTrace(); } Connection con = null; con = DriverManager.getConnection("jdbc:MYSQL://localhost:3306/RJGC","root","root"); Statement stat = con.createStatement(); ResultSet res = stat.executeQuery("select * from zhsj"); ```
通过写个类测试连接sqlserver2008数据库成功,在写jsp练习中失败
最简单的连接数据库,在写练习jsp登陆页面时,输入正确的用户名密码,跳转到失败页面。整个项目有一个警告是 Description Resource Path Location Type Classpath entry E:/ware/sqldrivers_for_vc/Microsoft SQL Server JDBC Driver 2.0/sqljdbc_2.0/chs/sqljdbc4.jar will not be exported or published. Runtime ClassNotFoundExceptions may result. AboutSql P/AboutSql Classpath Dependency Validator Message 控制台提示:java.lang.ClassNotFoundException: com.micsoft.sqlserver.jdbc.SQLServerDriver 我之前在一个类里测试了能连接数据库加载驱动。还没入门的菜鸟求教,真心累
myelise+sql server运行错误
myelise+sql server运行错误:数据库驱动加载成功! java.sql.SQLException: I/O Error: Connection reset 谁能会解决吗???
新人求解java连接mysql,向数据库添加数据,出错
package test; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.util.Scanner; public class test{ public static void main(String[] args)throws Exception { // 加载数据库驱动,注册到驱动管理器 Class.forName("com.mysql.jdbc.Driver"); // 数据库连接字符串 String url = "jdbc:mysql://localhost:3306/test"; // 数据库用户名 String username = "root"; // 数据库密码 String password = "2443243838"; // 创建Connection连接 Connection conn = DriverManager.getConnection(url,username,password); // 判断 数据库连接是否为空 Statement st=conn.createStatement(); Scanner scanner = new Scanner(System.in); System.out.println("1,数据注册\t"); System.out.println("2,登录\t"); System.out.println("请输入你要做的操作:\t"); int n= scanner.nextInt(); if(n==1){ // 输出连接信息 System.out.println("请输入用户名字:"); String username1 = scanner.next(); System.out.println("请输入密码:"); String password1 = scanner.next(); String sql="select * from user where username='"+username1+"'"; ResultSet ra= st.executeQuery(sql); if(ra.next()){ System.out.println("用户已存在"); }else{ sql="insert into user values=('"+username1+"','"+password1+"')"; int i=st.executeUpdate(sql); if(i!=0){ System.out.println("添加成功"); }else{ System.out.println("添加失败"); } } // 关闭数据库连接 }else if(n==2){ }else{ // 输出连接信息 System.out.println("数据库连接失败!"); } } } 1,数据注册 2,登录 请输入你要做的操作: 1 请输入用户名字: 刘备 请输入密码: 123456 Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=('刘备','123456')' at line 1 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.Util.getInstance(Util.java:386) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1053) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4096) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4028) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2728) at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1811) at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1725) at test.test.main(test.java:43)
我用的是纯驱动连接SQL server数据库,运行的时候显示第128行错误,不知道怎么改。求帮助。
package servlets; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.sql.*; import toolbean.*; public class regservlet extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; /** * Destruction of the servlet. <br> */ public void destroy() { super.destroy(); // Just puts "destroy" string in log // Put your code here } /** * The doGet method of the servlet. <br> * * This method is called when a form has its tag value method equals to get. * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response);} /** * The doPost method of the servlet. <br> * * This method is called when a form has its tag value method equals to post. * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=gbk"); PrintWriter out = response.getWriter(); ValueBean vb=new ValueBean(); vb.setUsername(MyTools.toChinese(request.getParameter("username"))); vb.setUserpass(request.getParameter("userpass")); vb.setBirthdate(request.getParameter("birthdate")); vb.setGender(MyTools.toChinese(request.getParameter("gender"))); vb.setNativeplace(MyTools.toChinese(request.getParameter("nativeplace"))); vb.settype(MyTools.toChinese(request.getParameter("type"))); String url="jdbc:sqlserver://127.0.0.1:1433;DataBaseName=lkk"; String user="root"; String pwd="123"; String sql=""; Connection conn=null; Statement stmt=null; ResultSet rs=null; try{ sql="select username from user where username='"+vb.getUsername()+"'"; conn=DriverManager.getConnection(url, user, pwd); stmt=conn.createStatement(); rs=stmt.executeQuery(sql); HttpSession session=request.getSession(); if(rs.next()){ PrintWriter pw=response.getWriter(); pw.write("<script language='javascript'>alert('用户名已存在,请重新注册')</script>"); response.sendRedirect("reg.jsp?err=1"); }else{ StringBuffer newsql=new StringBuffer(); newsql.append("insert into user (username,userpass,gender,birthdate,nativeplace,type) values ('"); newsql.append(vb.getUsername()); newsql.append("','"); newsql.append(vb.getUserpass()); newsql.append("','"); newsql.append(vb.getGender()); newsql.append("','"); newsql.append(vb.getBirthdate()); newsql.append("','"); newsql.append(vb.getNativeplace()); newsql.append("','"); newsql.append("会员"); newsql.append("')"); stmt.executeUpdate(newsql.toString()); session.setAttribute("msg_ok","注册成功!"); session.setAttribute("username",vb.getUsername()); response.sendRedirect("regMsg.jsp"); } }catch(Exception e){ out.print(e.toString()); }finally{ try{rs.close();}catch(Exception ee){} try{stmt.close();}catch(Exception ee){} try{conn.close();}catch(Exception ee){} } } /** * Initialization of the servlet. <br> * * @throws ServletException if an error occure */ public void init() throws ServletException { try{ Class.forName("com.microsoft.jdbc.SQLServerDriver"); }catch (Exception e){ throw new ServletException("加载数据库驱动失败!");//这是第128行 } }} 错误描述: javax.servlet.ServletException: 加载数据库驱动失败! servlets.regservlet.init(regservlet.java:128) javax.servlet.GenericServlet.init(GenericServlet.java:212) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) java.lang.Thread.run(Thread.java:619)
jdbc通过1433端口连接sqlserver数据库总是失败
最近在做一个小项目,在android的额产品里塞中直接用jdbc连接本地服务器的sqlserver数据库的时候出现这个错误:“请验证连接属性,并检查 SQL Server 的实例正在主机上运行, 且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接” 在网上查阅了很多资料,server的端口都是1433,IP2也启动了,sql实例也都启动了,server服务也重新启动了,防火墙也关闭了,但是就是一直连不上,大家有什么好的方法吗 这是简单的测试代码: package com.example.myfinallytest; import android.support.v7.app.ActionBarActivity; import android.widget.TextView; import android.os.Bundle; import android.os.StrictMode; import java.sql.*; public class MainActivity extends ActionBarActivity { private TextView Text; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads() .detectDiskWrites() .detectNetwork() .penaltyLog() .build()); StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() .detectLeakedSqlLiteObjects() .detectLeakedClosableObjects() .penaltyLog() .penaltyDeath() .build()); Text = (TextView)findViewById(R.id.Test); System.out.println("1"); Connect(); System.out.println("2"); } public Connection Connect(){ String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载驱动 System.out.println("加载驱动"); String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Test"; //连接数据库 System.out.println("加载URL"); String userName = "sa"; //服务器用户名 String userPassword = "12345"; //服务器密码 Connection Con = null; try{ System.out.println("进入try"); Class.forName(driverName).newInstance(); //加载驱动到java虚拟机 System.out.println("加载JAVA虚拟机"); Con = DriverManager.getConnection(dbURL,userName,userPassword); Text.setText("连接成功!"); System.out.println("连接成功!"); }catch(Exception e){ e.printStackTrace(); Text.setText("连接失败!"); System.out.println("连接失败!"); } return Con; } } ![![![![图片说明](https://img-ask.csdn.net/upload/201605/05/1462417358_289781.png)图片说明](https://img-ask.csdn.net/upload/201605/05/1462417352_919748.png)图片说明](https://img-ask.csdn.net/upload/201605/05/1462417346_945896.png)图片说明](https://img-ask.csdn.net/upload/201605/05/1462417340_452229.png)
我用MyEclipse连接SQL Server出现如下错误,求教(代码是借用的,我主要想看看怎样连接数据库):
import java.sql.*; public class Test { public static void main(String[] srg) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; // 加载JDBC驱动 String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=Student"; // 连接服务器和数据库 String userName = "sa"; // 默认用户名 String userPwd = "sa123"; // 密码 String sql="select * from student"; String s1=null; Connection dbConn = null; Statement st=null; try { Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL,userName,userPwd); st = (Statement) dbConn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet rs = st.executeQuery(sql); while (rs.next()) { s1 = rs.getString(1).trim(); System.out.println(s1); } System.out.println("数据库连接成功!"); } catch (Exception e) { System.err.println("OpenConn:" + e.getMessage()); } } } 我安装了sqljdbc_1.1的驱动程序,过程也按照所提供的方法进行设置的(设置TCP/IP的端口是1433),却出现以下错误: OpenConn:到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect 望指教
我用java程序向数据库中添加一条记录,提示成功 在数据库中并没有
我用java程序向本地的sql server 2000中添加一条记录,java控制台提示成功![图片说明](https://img-ask.csdn.net/upload/201702/04/1486204123_720929.png)但是用查询分析器select之后并没有这条记录。![图片说明](https://img-ask.csdn.net/upload/201702/04/1486204135_406053.png)把这个sql语句直接输入在查询分析器中就可以显示出来,问一下大神们这是怎么回事 连接用的是jdbc-odbc的方式! 以下是代码 ``` /* * 演示使用jdbc-odbc桥连方式操作数据库luoyedb1(emp,dept) * 1.配置数据源 */ package com.test1; import java.sql.*; public class Test1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Connection ct=null; Statement sm=null; try{ // 1.加载驱动(作用是把需要的驱动程序加入内存) Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // 2.得到连接(指定连接到哪个数据源,用户名和密码) //如果配置数据源的时候,选择的是windows NT验证,则不需要输入用户名和密码 ct=DriverManager.getConnection("jdbc:odbc:mytest","sa","07247857"); // 3.创建Statement或者preparedStatement //Statement主要是发送sql语句 通道 sm=ct.createStatement(); // 4.执行(crud,创建数据库,备份。。) //添加一条数据dept表 //executeUpdate可以执行添加删除修改 int i=sm.executeUpdate("insert into dept values('80','aaa','bbb')"); if(i==1) { System.out.println("添加成功!"); }else{ System.out.println("添加失败!"); } }catch(Exception e){ e.printStackTrace(); }finally{ //关闭资源!!! //关闭顺序是,谁后创建则先关闭 try { //为了程序健壮 if(sm!=null) { sm.close(); } if(ct!=null) { ct.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } ```
java web 连接数据库的问题
程序突然就连不上数据库了,之前一直好好的,把登陆部分的代码贴上来,求大神给看看 jsp部分:<!DOCTYPE html> <!--[if lt IE 7 ]> <html lang="en" class="no-js ie6 lt8"> <![endif]--> <!--[if IE 7 ]> <html lang="en" class="no-js ie7 lt8"> <![endif]--> <!--[if IE 8 ]> <html lang="en" class="no-js ie8 lt8"> <![endif]--> <!--[if IE 9 ]> <html lang="en" class="no-js ie9"> <![endif]--> <!--[if (gt IE 9)|!(IE)]><!--> <html lang="en" class="no-js"> <!--<![endif]--> <head> <meta charset="UTF-8" /> <!-- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> --> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content="Login and Registration Form with HTML5 and CSS3" /> <meta name="keywords" content="html5, css3, form, switch, animation, :target, pseudo-class" /> <meta name="author" content="Codrops" /> <link rel="shortcut icon" href="../favicon.ico"> <link rel="stylesheet" type="text/css" href="css/demo.css" /> <link rel="stylesheet" type="text/css" href="css/style.css" /> <link rel="stylesheet" type="text/css" href="css/animate-custom.css" /> </head> <body> <div class="container"> <!-- Codrops top bar --> <div class="codrops-top"> <div class="clr"></div> </div><!--/ Codrops top bar --> <header> <nav class="codrops-demos"> </nav> </header> <section> <div id="container_demo" > <!-- hidden anchor to stop jump http://www.css3create.com/Astuce-Empecher-le-scroll-avec-l-utilisation-de-target#wrap4 --> <a class="hiddenanchor" id="toregister"></a> <a class="hiddenanchor" id="tologin"></a> <div id="wrapper"> <div id="login" class="animate form"> <form action="com.xx.servlet/LoginServlet" method="post"> <h1>Log in</h1> <p> <label for="username" class="uname" data-icon="u" > Your username </label> <input type="text" name="username" /> </p> <p> <label for="password" class="youpasswd" data-icon="p"> Your password </label> <input type="password" name="password" /> </p> <p class="keeplogin"> </p> <p class="login button"> <input type="submit" value="Login" /> </p> <p class="change_link"> Not a member yet ? <a href="register.jsp" class="to_register">Join us</a> </p> </div> </div> </div> </section> </div> </body> </html> servlet部分:package com.xx.servlet; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.naming.spi.DirStateFactory.Result; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.bbs.*; import com.mysql.jdbc.Driver; /** * Servlet implementation class LoginServlet */ @WebServlet("/LoginServlet") public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public LoginServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response);// TODO Auto-generated method stub } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); request.setCharacterEncoding("utf-8"); String name = null;String level = null; Connection conn = null; Statement stmt=null; ResultSet res=null; boolean flag=false;//通过数据库匹配标识 String name_checked=null;//检查通过的用户名 try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } String URL="jdbc:mysql://localhost:3306/mybbs"; String USER="root"; String PASSWORD="5438027"; //1.加载驱动程序 try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e1) { System.out.println("加载驱动失败1");// TODO 自动生成的 catch 块 e1.printStackTrace(); } //2.获得数据库的链接 try { DriverManager.registerDriver(new Driver()); conn=DriverManager.getConnection(URL, USER, PASSWORD); } catch (SQLException e) { System.out.println("加载失败2");// TODO 自动生成的 catch 块 e.printStackTrace(); } String u=request.getParameter("username"); //从上级页面获得用户名 String p=request.getParameter("password"); //从上级页面获得密码 String sql="SELECT * FROM user WHERE userName IN('"+u+"') "+"AND passWord IN('"+p+"')"; System.out.println(sql);//执行上述sql语句 try { res=stmt.executeQuery(sql); } catch (SQLException e) { System.out.println("加载失败3");// TODO 自动生成的 catch 块 e.printStackTrace(); } try { if(true==res.next())//只有查询得到结果才可进入循环 { flag=true; name_checked=res.getString("name"); level=res.getString("level"); } } catch (SQLException e) { System.out.println("加载失败4");// TODO 自动生成的 catch 块 e.printStackTrace(); } if(true==flag)//登陆成功 { HttpSession session=request.getSession(); session.setAttribute("userlevel",level); session.setAttribute("name",name_checked); response.sendRedirect(request.getContextPath()+"/loginsuccess.jsp"); User me=new User(); } else//登陆失败 { response.sendRedirect(request.getContextPath()+"/login.jsp"); } } } 报错:HTTP Status 500 - type Exception report message description The server encountered an internal error that prevented it from fulfilling this request. exception java.lang.NullPointerException com.xx.servlet.LoginServlet.doPost(LoginServlet.java:99) javax.servlet.http.HttpServlet.service(HttpServlet.java:650) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) note The full stack trace of the root cause is available in the Apache Tomcat/7.0.82 logs. Apache Tomcat/7.0.82 控制台:十月 26, 2017 1:10:55 上午 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet [LoginServlet] in context with path [/xxbbs] threw exception java.lang.NullPointerException at com.xx.servlet.LoginServlet.doPost(LoginServlet.java:99) at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:744) 不知道哪里出问题了,之前一直好好的,求大神帮我看看
导出的JAR包含有jdbc,但是无法连接数据库
程序在IDEA中运行正常,导出为jar后只有初始界面,无法连接到sql server,但是导出的jar中是含有jdbc的 ![图片说明](https://img-ask.csdn.net/upload/201907/25/1564017130_107276.png) 数据库驱动代码 ``` public class Driver { private static final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; private static final String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=Demo"; private static final String USERNAME = "sa"; private static final String PASSWORD = "081628"; //加载数据库驱动 static { try { Class.forName(DRIVER); } catch (ClassNotFoundException e) { e.printStackTrace(); System.out.println("数据库驱动加载失败!"); } } ``` MANIFEST.MF文件 ``` Manifest-Version: 1.0 Main-Class: cn.kingdeeup.main.MainWindow Class-Path: com.microsoft.sqlserver.jdbc.SQLServerDriver ``` 错误信息 ![图片说明](https://img-ask.csdn.net/upload/201907/25/1564016996_606333.png)
请问java.lang.NullPointerException的错误怎么解决?
一开始eclipse连接sql server 2008数据库是对的,代码如下,然后在此基础上修改就出错了。 import java.sql.*; public class Main { public static void main(String [] args) { String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=Student";//Student填数据库的名字 String userName="sa"; String userPwd="123"; try { Class.forName(driverName); System.out.println("加载驱动成功!"); }catch(Exception e){ e.printStackTrace(); System.out.println("加载驱动失败!"); } try{ Connection dbConn=DriverManager.getConnection (dbURL,userName,userPwd); System.out.println("连接数据库成功!"); }catch(Exception e) { e.printStackTrace(); System.out.print("SQL Server连接失败!"); } } } 修改后的代码是 import java.sql.*; public class Main { static Statement sql; static ResultSet res; static Connection con; public Connection getConnection(){ try { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); System.out.println("加载驱动成功!"); }catch(Exception e){ e.printStackTrace(); System.out.println("加载驱动失败!"); } try{ con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=Class","sa","123"); System.out.println("连接数据库成功!"); }catch(Exception e) { e.printStackTrace(); System.out.print("SQL Server连接失败!"); } return con; } public static void main(String [] args) { Main m=new Main(); try{ sql=con.createStatement(); res=sql.executeQuery("select * from B班"); while(res.next()){ String id=res.getString("Id"); String name=res.getString("Name"); int grade=res.getInt("Grade"); System.out.print("编号"+id); System.out.print("姓名"+name); System.out.print("成绩"+grade); }}catch(Exception e){ e.printStackTrace(); } } } 系统提示出错: java.lang.NullPointerException at Main.main(Main.java:29)
130 个相见恨晚的超实用网站,一次性分享出来
相见恨晚的超实用网站 持续更新中。。。
我花了一夜用数据结构给女朋友写个H5走迷宫游戏
起因 又到深夜了,我按照以往在csdn和公众号写着数据结构!这占用了我大量的时间!我的超越妹妹严重缺乏陪伴而 怨气满满! 而女朋友时常埋怨,认为数据结构这么抽象难懂的东西没啥作用,常会问道:天天写这玩意,有啥作用。而我答道:能干事情多了,比如写个迷宫小游戏啥的! 当我码完字准备睡觉时:写不好别睡觉! 分析 如果用数据结构与算法造出东西来呢? ...
对计算机专业来说学历真的重要吗?
我本科学校是渣渣二本,研究生学校是985,现在毕业五年,校招笔试、面试,社招面试参加了两年了,就我个人的经历来说下这个问题。 这篇文章很长,但绝对是精华,相信我,读完以后,你会知道学历不好的解决方案,记得帮我点赞哦。 先说结论,无论赞不赞同,它本质就是这样:对于技术类工作而言,学历五年以内非常重要,但有办法弥补。五年以后,不重要。 目录: 张雪峰讲述的事实 我看到的事实 为什么会这样 ...
字节跳动视频编解码面经
三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时想着能进去就不错了,管他哪个岗呢,就同意了面试...
win10系统安装教程(U盘PE+UEFI安装)
一、准备工作 u盘,电脑一台,win10原版镜像(msdn官网) 二、下载wepe工具箱 极力推荐微pe(微pe官方下载) 下载64位的win10 pe,使用工具箱制作启动U盘打开软件, 选择安装到U盘(按照操作无需更改) 三、重启进入pe系统 1、关机后,将U盘插入电脑 2、按下电源后,按住F12进入启动项选择(技嘉主板是F12) 选择需要启...
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, ...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Ol4网格生成以及优化
概述 先描述一下大致场景:以0.05为单元格大小生成网格,并在地图上绘制,绘制的时候需要区分海陆。本文以此需求为契机,简单描述一下该需求的实现以及如何来优化。 效果 实现 优化前 var source = new ol.source.Vector({ features: [] }); var vector = new ol.layer.Vector({ source...
11月19日科技资讯|华为明日发布鸿蒙整体战略;京东宣告全面向技术转型;Kotlin 1.3.60 发布
「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。扫描上方二维码进入 CSDN App 可以收听御姐萌妹 Style 的人工版音频哟。 一分钟速览新闻点! 6G 专家组成员:速率是 5G 的 10 至 100 倍,预计 2030 年商用 雷军:很多人多次劝我放弃WPS,能坚持下来并不是纯粹的商业决定 ...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n...
iOS Bug 太多,苹果终于坐不住了!
开源的 Android 和闭源的 iOS,作为用户的你,更偏向哪一个呢? 整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 毋庸置疑,当前移动设备操作系统市场中,Android 和 iOS 作为两大阵营,在相互竞争的同时不断演进。不过一直以来,开源的 Android 吸引了无数的手机厂商涌入其中,为其生态带来了百花齐放的盛景,但和神秘且闭源的 iOS 系统相比,不少网友...
Python语言高频重点汇总
Python语言高频重点汇总 GitHub面试宝典仓库 回到首页 目录: Python语言高频重点汇总 目录: 1. 函数-传参 2. 元类 3. @staticmethod和@classmethod两个装饰器 4. 类属性和实例属性 5. Python的自省 6. 列表、集合、字典推导式 7. Python中单下划线和双下划线 8. 格式化字符串中的%和format 9. 迭代器和生成器 10...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆每天早上8:30推送 作者|Mr.K 编辑| Emma 来源|技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯...
程序员该看的几部电影
1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?如何...
蓝桥杯知识点汇总:基础知识和常用算法
文章目录基础语法部分:算法竞赛常用API:算法部分数据结构部分 此系列包含蓝桥杯绝大部分所考察的知识点,以及真题题解~ 基础语法部分: 备战蓝桥杯java(一):一般输入输出 和 快速输入输(BufferedReader&amp;BufferedWrite) 备战蓝桥杯java(二):java编程规范和常用数据类型 备战蓝桥杯java(三):常用功能符以及循环结构和分支结构 备战蓝桥杯java(四...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
@程序员,如何花式构建线程?
作者 |曾建责编 | 郭芮出品 | CSDN(ID:CSDNnews)在项目和业务的开发中,我们难免要经常使用线程来进行业务处理,使用线程可以保证我们的业务在相互处理之间可以保证原子性...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
实现简单的轮播图(单张图片、多张图片)
前言 刚学js没多久,这篇博客就当做记录了,以后还会完善的,希望大佬们多多指点。ps:下面出现的都是直接闪动,没有滑动效果的轮播图。 单张图片的替换 · ...
强烈推荐10本程序员在家读的书
很遗憾,这个春节注定是刻骨铭心的,新型冠状病毒让每个人的神经都是紧绷的。那些处在武汉的白衣天使们,尤其值得我们的尊敬。而我们这些窝在家里的程序员,能不外出就不外出,就是对社会做出的最大的贡献。 有些读者私下问我,窝了几天,有点颓丧,能否推荐几本书在家里看看。我花了一天的时间,挑选了 10 本我最喜欢的书,你可以挑选感兴趣的来读一读。读书不仅可以平复恐惧的压力,还可以对未来充满希望,毕竟苦难终将会...
Linux自学篇——linux命令英文全称及解释
man: Manual 意思是手册,可以用这个命令查询其他命令的用法。 pwd:Print working directory 意思是密码。 su:Swith user 切换用户,切换到root用户 cd:Change directory 切换目录 ls:List files 列出目录下的文件 ps:Process Status 进程状态 mkdir:Make directory ...
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。
疫情数据接口api
返回json示例 { "errcode":0,//0标识接口正常 "data":{ "date":"2020-01-30 07:47:23",//实时更新时间 "diagnosed":7736,//确诊人数 "suspect":12167,//疑是病例人数 "death":170,//死亡人数 "cur...
相关热词 c#开发的dll注册 c#的反射 c# grid绑定数据源 c#多线程怎么循环 c# 鼠标左键 c# char占位符 c# 日期比较 c#16进制转换为int c#用递归求顺序表中最大 c#小型erp源代码
立即提问