iphone6 plus系统版本版和非iphone6 plus系统版本版本有什么区别

Java语言中用jdbc连接MySql数据库总是报错 求解 - ITeye问答
错误信息如下:
com.mysql.jdbc.municationsException: Communications link failure
The last packet successfully received from the server was 1,392,390,324,572 milliseconds ago.& The last packet sent successfully to the server was 0 milliseconds ago.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2214)
at com.mysql.jdbc.ConnectionImpl.&init&(ConnectionImpl.java:773)
at com.mysql.jdbc.JDBC4Connection.&init&(JDBC4Connection.java:46)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:352)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at dbutil.DBUtils.getConnection(DBUtils.java:38)
at dbutil.DBUtils.main(DBUtils.java:59)
Caused by: com.mysql.jdbc.municationsException: Communications link failure
The last packet successfully received from the server was 1,392,390,324,567 milliseconds ago.& The last packet sent successfully to the server was 0 milliseconds ago.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.&init&(MysqlIO.java:341)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2137)
... 13 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.&init&(Socket.java:366)
at java.net.Socket.&init&(Socket.java:209)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
at com.mysql.jdbc.MysqlIO.&init&(MysqlIO.java:290)
... 14 more
Exception in thread "main" java.lang.RuntimeException: 连接数据库失败
at dbutil.DBUtils.getConnection(DBUtils.java:42)
at dbutil.DBUtils.main(DBUtils.java:59)
Caused by: com.mysql.jdbc.municationsException: Communications link failure
The last packet successfully received from the server was 1,392,390,324,572 milliseconds ago.& The last packet sent successfully to the server was 0 milliseconds ago.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2214)
at com.mysql.jdbc.ConnectionImpl.&init&(ConnectionImpl.java:773)
at com.mysql.jdbc.JDBC4Connection.&init&(JDBC4Connection.java:46)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:352)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at dbutil.DBUtils.getConnection(DBUtils.java:38)
... 1 more
Caused by: com.mysql.jdbc.municationsException: Communications link failure
The last packet successfully received from the server was 1,392,390,324,567 milliseconds ago.& The last packet sent successfully to the server was 0 milliseconds ago.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.&init&(MysqlIO.java:341)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2137)
... 13 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.&init&(Socket.java:366)
at java.net.Socket.&init&(Socket.java:209)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
at com.mysql.jdbc.MysqlIO.&init&(MysqlIO.java:290)
... 14 more
其他代码部分检查没有问题
连接池保留了连接,但是mysql数据库已经回收了连接,修改下数据库配置就可以了
已解决问题
未解决问题Oracle JDBC DbUtil jdbc数据库连接 - 今天比昨天好 - ITeye技术网站
博客分类:
Oracle JDBC DbUtil jdbc数据库连接
1.OracleConnect.java
* To change this template, choose Tools | Templates
* and open the template in the editor.
package org.
import java.sql.C
import java.sql.DriverM
import java.sql.SQLE
import java.util.P
import javax.swing.JOptionP
import org.openide.util.E
* 建立数据库连接
public class OracleConnect {
final static String sDBDriver = "oracle.jdbc.driver.OracleDriver";
private static OracleConnect instance =
public Connection getCon() {
public void setCon(Connection con) {
this.con =
public static synchronized OracleConnect getInstance() {
if (instance == null) {
instance = new OracleConnect();
private OracleConnect() {
ConfigLoader configLoader = ConfigLoader.getInstance();
Properties p = configLoader.getP();
String ip = p.getProperty("db_ip");
String dsn = p.getProperty("db_dns");
String userName = p.getProperty("db_user");
String password = p.getProperty("db_username");
String url = "jdbc:oracle:thin:@" + ip + ":1521:" +
Class.forName(sDBDriver);
con = DriverManager.getConnection(url, userName, password);
con.setAutoCommit(false);
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "建立数据库连接失败!", "异常", JOptionPane.ERROR_MESSAGE);
Exceptions.printStackTrace(e);
} catch (ClassNotFoundException e) {
JOptionPane.showMessageDialog(null, "未找到数据库驱动", "异常", JOptionPane.ERROR_MESSAGE);
Exceptions.printStackTrace(e);
public void closeConnection() {
if(getCon() != null) {
getCon().close();
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "关闭数据库连接失败!", "异常", JOptionPane.ERROR_MESSAGE);
Exceptions.printStackTrace(e);
下载次数: 36
浏览: 53611 次
来自: 合肥
原因是什么呢
在局域网外,获取不到mac地址吧。11130人阅读
数据库(2)
&1、加载JDBC驱动程序: &&
&&&&在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), &&
&&&&这通过java.lang.Class类的静态方法forName(String&&className)实现。 &&
&&&&例如: &&
&&&&try{ &&
&&&&//加载MySql的驱动类&&&
&&&&Class.forName(&com.mysql.jdbc.Driver&)&; &&
&&&&}catch(ClassNotFoundException&e){ &&
&&&&System.out.println(&找不到驱动程序类&,加载驱动失败!&); &&
&&&&e.printStackTrace()&; &&
&&&成功加载后,会将Driver类的实例注册到DriverManager类中。 &&
&2、提供JDBC连接的URL &&
&&&o连接URL定义了连接数据库时的协议、子协议、数据源标识。 &&
&&&&o书写形式:协议:子协议:数据源标识 &&
&&&&协议:在JDBC中总是以jdbc开始 &&
&&&&子协议:是桥连接的驱动程序或是数据库管理系统名称。 &&
&&&&数据源标识:标记找到数据库来源的地址与连接端口。 &&
&&&&例如:(MySql的连接URL) &&
&&&&jdbc:mysql: &&
&&&&&&&&//localhost:3306/test?useUnicode=true&characterEncoding=gbk&;&&&
&&&useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为 &&
&&&gb2312或GBK,本参数必须设置为true&。characterEncoding=gbk:字符编码方式。 &&
&3、创建数据库的连接 &&
&&&&o要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象, &&
&&&&&该对象就代表一个数据库的连接。 &&
&&&&o使用DriverManager的getConnectin(String&url&,&String&username&,& &&
&&&&String&password&)方法传入指定的欲连接的数据库的路径、数据库的用户名和 &&
&&&&&密码来获得。 &&
&&&&&例如: &&
&&&&&//连接MySql数据库,用户名和密码都是root&&&
&&&&&String&url&=&&jdbc:mysql://localhost:3306/test&&;& &&
&&&&&String&username&=&&root&&; &&
&&&&&String&password&=&&root&&; &&
&&&&&try{ &&
&&&&Connection&con&=& &&
&&&&&&&&&&&&&DriverManager.getConnection(url&,&username&,&password&)&; &&
&&&&&}catch(SQLException&se){ &&
&&&&System.out.println(&数据库连接失败!&); &&
&&&&se.printStackTrace()&; &&
&4、创建一个Statement &&
&&&&o要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3&&
&&&&&种类型: &&
&&&&&&1、执行静态SQL语句。通常通过Statement实例实现。 &&
&&&&&&2、执行动态SQL语句。通常通过PreparedStatement实例实现。 &&
&&&&&&3、执行数据库存储过程。通常通过CallableStatement实例实现。 &&
&&&&具体的实现方式: &&
&&&&&&&&Statement&stmt&=&con.createStatement()&; &&
&&&&&&&PreparedStatement&pstmt&=&con.prepareStatement(sql)&; &&
&&&&&&&CallableStatement&cstmt&=& &&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&con.prepareCall(&{CALL&demoSp(?&,&?)}&)&; &&
&5、执行SQL语句 &&
&&&&Statement接口提供了三种执行SQL语句的方法:executeQuery&、executeUpdate &&
&&&和execute &&
&&&&1、ResultSet&executeQuery(String&sqlString):执行查询数据库的SQL语句 &&
&&&&&&&&,返回一个结果集(ResultSet)对象。 &&
&&&&&2、int&executeUpdate(String&sqlString):用于执行INSERT、UPDATE或 &&
&&&&&&&&DELETE语句以及SQL&DDL语句,如:CREATE&TABLE和DROP&TABLE等 &&
&&&&&3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的 &&
&&&&&&&&语句。 &&
&&&具体实现的代码: &&
&&&&&&&&&&ResultSet&rs&=&stmt.executeQuery(&SELECT&*&FROM&...&)&; &&
&&&&int&rows&=&stmt.executeUpdate(&INSERT&INTO&...&)&; &&
&&&&boolean&flag&=&stmt.execute(String&sql)&; &&
&6、处理结果 &&
&&&&两种情况: &&
&&&&&1、执行更新返回的是本次操作影响到的记录数。 &&
&&&&&2、执行查询返回的结果是一个ResultSet对象。 &&
&&&&o&ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些 &&
&&&&&&行中数据的访问。 &&
&&&&o&使用结果集(ResultSet)对象的访问方法获取数据: &&
&&&&&while(rs.next()){ &&
&&&&&&&&&String&name&=&rs.getString(&name&)&; &&
&&&&String&pass&=&rs.getString(1)&;&//&此方法比较高效&&&
&&&&(列是从左到右编号的,并且从列1开始) &&
&7、关闭JDBC对象& &&
&&&&&操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声 &&
&&&&&明顺序相反: &&
&&&&&1、关闭记录集 &&
&&&&&2、关闭声明 &&
&&&&&3、关闭连接对象 &&
&&&&&&&&&&if(rs&!=&null){&&&//&关闭记录集&&&
&&&&&&&&try{ &&
&&&&&&&&&&&&rs.close()&; &&
&&&&&&&&}catch(SQLException&e){ &&
&&&&&&&&&&&&e.printStackTrace()&; &&
&&&&&&&&} &&
&&&&&&&&&&} &&
&&&&&&&&&&if(stmt&!=&null){&&&//&关闭声明&&&
&&&&&&&&try{ &&
&&&&&&&&&&&&stmt.close()&; &&
&&&&&&&&}catch(SQLException&e){ &&
&&&&&&&&&&&&e.printStackTrace()&; &&
&&&&&&&&} &&
&&&&&&&&&&} &&
&&&&&&&&&&if(conn&!=&null){&&//&关闭连接对象&&&
&&&&&&&&&try{ &&
&&&&&&&&&&&&conn.close()&; &&
&&&&&&&&&}catch(SQLException&e){ &&&&&&&&&&&&&&e.printStackTrace()&; &&&&&&&&&&&} &&&&&&&&&&&&}
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1050377次
积分:7214
积分:7214
排名:第2876名
原创:233篇
转载:12篇
评论:141条
(1)(2)(3)(2)(1)(1)(5)(3)(1)(3)(4)(1)(1)(1)(3)(5)(2)(1)(2)(2)(1)(11)(8)(16)(25)(16)(2)(1)(11)(24)(17)(17)(10)(16)(13)(11)(4)您的位置: &
& &&&简述JDBC提供的连接数据库的几种方法是什么
简述JDBC提供的连接数据库的几种方法是什么
11:42&&网络 【
  简述JDBC提供的连接数据库的几种方法。1)与数据源直接通信:使用JDBC和数据库已制定的协议时,可使用一个驱动程序直接与数据源通信。既可以建立自己的驱动程序,也可找一个公用的。
  2)通过JDBC驱动程序的通信:可连接到一个高标准的驱动程序上,该驱动程序依次与另一个可与数据源通信的专用驱动程序通信。
  3)与ODBC数据源通信:一个公开可用的专用驱动程序是JDBC/ODBC桥梁驱动程序,它是Javasoft公司开发的,允许应用程序与ODBC数据源相连。
  编辑推荐:
本文转载链接:
欢迎访问:
自考真题库手机应用
& & & & & &
热门搜索:    查看: 3668|回复: 6
数据库连接泄漏,是否能够引起websphere的jdbc连接池资源耗尽
论坛徽章:0
如果代码中出现对同一个对象多次获取数据库连接,这个算不算连接泄漏?比如:
&&Connection&&conn =
& & conn = DBUtil.getConnection();
& &&&conn = DBUtil.getConnection(); //错误的又重新得到一个连接
& &conn.createStatement() ....&&//执行一些数据库操作。
& &finally
& && & release(conn, stat,...)& &//作数据库的释放操作。
请问,这种第一次创建的没有收集,是否造成了连接泄漏?
第二种问题,这种情况是否会引起中间件服务器的jdbc连接池连接用尽而宕机。
请大家执教。谢谢。
论坛徽章:35
连接池泄露主要是你没有急时关闭连接或者是你没有正确的关闭连接会造成!因为连接老是被占用着,别的线程去获取连接就获取不到了!
就算是发生异常也要把连接正确的关闭!这是关键
论坛徽章:35
如果是在一个方法里,没有必要老是去做获得连接的动作!!!切记切记!
求职 : 认证徽章论坛徽章:184
连接池应该会议释放,
论坛徽章:39
当然会耗尽
论坛徽章:2
connection之后一定要关闭,
否则长时间DB会荡掉的!!
一定要关哦!
招聘 : 论坛徽章:113
把connection放入线程中,在同一会话就每调用都得到是当前的连接,最后关闭,像hibernate调用的那样,
感觉关闭这样的东西应该放入框架中,不要程序员自己管理,因为总有程序员会不小心的
itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有    
 北京市公安局海淀分局网监中心备案编号: 广播电视节目制作经营许可证:编号(京)字第1149号

我要回帖

更多关于 iphone6 plus版本区别 的文章

 

随机推荐