Java - Problema al conectar Java con MySQL

   
Vista:

Problema al conectar Java con MySQL

Publicado por Alonsoj (2 intervenciones) el 28/03/2012 13:48:18
hola, estoy desarrollando una aplicación Java que se conecta a una BBDD MySql, el problema que tengo es que me aparece lo siguiente al intentar ejecutarla

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
<ConnectionProperties>
 <PropertyCategory name="Connection/Authentication">
  <Property name="user" required="No" default="" sortOrder="-2147483647" since="all versions">
    The user to connect as
  </Property>
  <Property name="password" required="No" default="" sortOrder="-2147483646" since="all versions">
    The password to use when connecting
  </Property>
  <Property name="socketFactory" required="No" default="com.mysql.jdbc.StandardSocketFactory" sortOrder="4" since="3.0.3">
    The name of the class that the driver should use for creating socket connections to the server. This class must implement the interface 'com.mysql.jdbc.SocketFactory' and have public no-args constructor.
  </Property>
  <Property name="connectTimeout" required="No" default="0" sortOrder="9" since="3.0.1">
    Timeout for socket connect (in milliseconds), with 0 being no timeout. Only works on JDK-1.4 or newer. Defaults to '0'.
  </Property>
  <Property name="socketTimeout" required="No" default="0" sortOrder="10" since="3.0.1">
    Timeout on network socket operations (0, the default means no timeout).
  </Property>
  <Property name="connectionLifecycleInterceptors" required="No" default="" sortOrder="2147483647" since="5.1.4">
    A comma-delimited list of classes that implement "com.mysql.jdbc.ConnectionLifecycleInterceptor" that should notified of connection lifecycle events (creation, destruction, commit, rollback, setCatalog and setAutoCommit) and potentially alter the execution of these commands. ConnectionLifecycleInterceptors are "stackable", more than one interceptor may be specified via the configuration property as a comma-delimited list, with the interceptors executed in order from left to right.
  </Property>
  <Property name="useConfigs" required="No" default="" sortOrder="2147483647" since="3.1.5">
    Load the comma-delimited list of configuration properties before parsing the URL or applying user-specified properties. These configurations are explained in the 'Configurations' of the documentation.
  </Property>
  <Property name="interactiveClient" required="No" default="false" sortOrder="alpha" since="3.1.0">
    Set the CLIENT_INTERACTIVE flag, which tells MySQL to timeout connections based on INTERACTIVE_TIMEOUT instead of WAIT_TIMEOUT
  </Property>
  <Property name="localSocketAddress" required="No" default="" sortOrder="alpha" since="5.0.5">
    Hostname or IP address given to explicitly configure the interface that the driver will bind the client side of the TCP/IP connection to when connecting.
  </Property>
  <Property name="propertiesTransform" required="No" default="" sortOrder="alpha" since="3.1.4">
    An implementation of com.mysql.jdbc.ConnectionPropertiesTransform that the driver will use to modify URL properties passed to the driver before attempting a connection
  </Property>
  <Property name="useCompression" required="No" default="false" sortOrder="alpha" since="3.0.17">
    Use zlib compression when communicating with the server (true/false)? Defaults to 'false'.
  </Property>
 </PropertyCategory>
 <PropertyCategory name="Networking">
  <Property name="maxAllowedPacket" required="No" default="-1" sortOrder="alpha" since="5.1.8">
    Maximum allowed packet size to send to server. If not set, the value of system variable 'max_allowed_packet' will be used to initialize this upon connecting. This value will not take effect if set larger than the value of 'max_allowed_packet'.
  </Property>
  <Property name="tcpKeepAlive" required="No" default="true" sortOrder="alpha" since="5.0.7">
    If connecting using TCP/IP, should the driver set SO_KEEPALIVE?
  </Property>
  <Property name="tcpNoDelay" required="No" default="true" sortOrder="alpha" since="5.0.7">
    If connecting using TCP/IP, should the driver set SO_TCP_NODELAY (disabling the Nagle Algorithm)?
  </Property>
  <Property name="tcpRcvBuf" required="No" default="0" sortOrder="alpha" since="5.0.7">
    If connecting using TCP/IP, should the driver set SO_RCV_BUF to the given value? The default value of '0', means use the platform default value for this property)
  </Property>
  <Property name="tcpSndBuf" required="No" default="0" sortOrder="alpha" since="5.0.7">
    If connecting using TCP/IP, shuold the driver set SO_SND_BUF to the given value? The default value of '0', means use the platform default value for this property)
  </Property>
  <Property name="tcpTrafficClass" required="No" default="0" sortOrder="alpha" since="5.0.7">
    If connecting using TCP/IP, should the driver set traffic class or type-of-service fields ?See the documentation for java.net.Socket.setTrafficClass() for more information.
  </Property>
 </PropertyCategory>
 <PropertyCategory name="High Availability and Clustering">
  <Property name="autoReconnect" required="No" default="false" sortOrder="0" since="1.1">
    Should the driver try to re-establish stale and/or dead connections? If enabled the driver will throw an exception for a queries issued on a stale or dead connection, which belong to the current transaction, but will attempt reconnect before the next query issued on the connection in a new transaction. The use of this feature is not recommended, because it has side effects related to session state and data consistency when applications don't handle SQLExceptions properly, and is only designed to be used when you are unable to configure your application to handle SQLExceptions resulting from dead and stale connections properly. Alternatively, investigate setting the MySQL server variable "wait_timeout" to some high value rather than the default of 8 hours.
  </Property>
  <Property name="autoReconnectForPools" required="No" default="false" sortOrder="1" since="3.1.3">
    Use a reconnection strategy appropriate for connection pools (defaults to 'false')
  </Property>
  <Property name="failOverReadOnly" required="No" default="true" sortOrder="2" since="3.0.12">
    When failing over in autoReconnect mode, should the connection be set to 'read-only'?
  </Property>
  <Property name="maxReconnects" required="No" default="3" sortOrder="4" since="1.1">
    Maximum number of reconnects to attempt if autoReconnect is true, default is '3'.
  </Property>
  <Property name="reconnectAtTxEnd" required="No" default="false" sortOrder="4" since="3.0.10">
    If autoReconnect is set to true, should the driver attempt reconnections at the end of every transaction?
  </Property>
  <Property name="retriesAllDown" required="No" default="120" sortOrder="4" since="5.1.6">
    When using loadbalancing, the number of times the driver should cycle through available hosts, attempting to connect.  Between cycles, the driver will pause for 250ms if no servers are available.
  </Property>
  <Property name="initialTimeout" required="No" default="2" sortOrder="5" since="1.1">
    If autoReconnect is enabled, the initial time to wait between re-connect attempts (in seconds, defaults to '2').
  </Property>
  <Property name="roundRobinLoadBalance" required="No" default="false" sortOrder="5" since="3.1.2">
    When autoReconnect is enabled, and failoverReadonly is false, should we pick hosts to connect to on a round-robin basis?
  </Property>
  <Property name="queriesBeforeRetryMaster" required="No" default="50" sortOrder="7" since="3.0.2">
    Number of queries to issue before falling back to master when failed over (when using multi-host failover). Whichever condition is met first, 'queriesBeforeRetryMaster' or 'secondsBeforeRetryMaster' will cause an attempt to be made to reconnect to the master. Defaults to 50.
  </Property>
  <Property name="secondsBeforeRetryMaster" required="No" default="30" sortOrder="8" since="3.0.2">
    How long should the driver wait, when failed over, before attempting 
  </Property>
  <Property name="selfDestructOnPingMaxOperations" required="No" default="0" sortOrder="2147483647" since="5.1.6">
    =If set to a non-zero value, the driver will report close the connection and report failure when Connection.ping() or Connection.isValid(int) is called if the connnection's count of commands sent to the server exceeds this value.
  </Property>
  <Property name="selfDestructOnPingSecondsLifetime" required="No" default="0" sortOrder="2147483647" since="5.1.6">
    If set to a non-zero value, the driver will report close the connection and report failure when Connection.ping() or Connection.isValid(int) is called if the connnection's lifetime exceeds this value.
  </Property>
  <Property name="resourceId" required="No" default="" sortOrder="alpha" since="5.0.1">
    A globally unique name that identifies the resource that this datasource or connection is connected to, used for XAResource.isSameRM() when the driver can't determine this value based on hostnames used in the URL
  </Property>
 
 
  .......
 
 </PropertyCategory>
</ConnectionProperties>


He tenido que acortar el mensaje por ser demasiado largo, cómo podría solucionar el problema?

Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problema al conectar Java con MySQL

Publicado por David (13 intervenciones) el 29/03/2012 22:00:48
Hola que tal , si no te importa podrías poner un trozo del código que usas para ver que método usas para la conexión .De todos modos yo tendría algo parecido a esto;

package BasesDeDatos;

import java.sql.*;
import javax.swing.JOptionPane;
import com.mysql.jdbc.Driver;


public class mysql {

public static Connection con=null;

public static boolean ConectarMySQL(){
try{
if((con==null)||(con.isClosed())){
String db="jdbc:mysql://localhost/logeo";
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
con=DriverManager.getConnection(db,"root","PASS");
JOptionPane.showMessageDialog(null, "La conexion se a establecido "
+ "correctamente.");
return true;
}else{
JOptionPane.showMessageDialog(null, "La conexion ya a sido establecida.");
return false;
}
}catch(SQLException e){
JOptionPane.showMessageDialog(null, e.getMessage());
e.printStackTrace();
return false;
}
}

}

No se si ese error es por la manera que as utilizado para conectarte a la base de datos de todos modos revisalo con este esta probado y funciona perfecto. espero que te allá servido de ayuda. Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema al conectar Java con MySQL

Publicado por Cristian Alejandro Saavedra Toro (31 intervenciones) el 30/03/2012 04:31:41
te recomiendo que la conexión siempre la hagas a travez de un try catch para que tye de el reporte mas menos exacto de donde se cae la conexión para poder guiarte mejor y no el reporte completo que acabas de colocar.
Lo que yo normalmente hago es trabajar a 3 capaz en el sentido cuando trabajo con base de datos y esta seria una clase que es solo para la conexion de esta y que el codigo es mas menos así:

package utilidades;

import java.sql.*;

public class BD {

private Connection conexión;

public BD() throws Exception {
Class.forName("com.mysql.jdbc.Driver");
conexión = DriverManager.getConnection("jdbc:mysql://localhost/ticketmaster?user=root");
}

public Connection getConexión() {
return conexión;
}
}

y en la clase coloco el statement y lo demas al momento de querer llamarla o almacenar datos en la base de datos.
ahora te recomiendo que de todas maneras rectifiques en el area de librerias de tu proyecto si tienes valga la rebundancia la libreria de mysql puesta en tu proyecto ya que si no la tienes nunca abrira alguna conexion con esta. Normalmente esta se llama: mysql-connector-java5.1.17-bin.jar

este es un conector para netbeans y poder trabajar con bases de datos mysql, si no lo tienes puedes descargarlo a travez de internet, es de facil acceso y poder colocarlo en tu proyecto para poder trabajar con el.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema al conectar Java con MySQL

Publicado por alonsoj (2 intervenciones) el 03/04/2012 09:35:50
He estado haciendo pruebas y creo que la parte de conectarse, hacer consultas, etc... está bien, creo que el problema se produce antes de que se empiece a ejecutar el programa, es decir, directamente se muestra esto por pantalla y no se hace nada más.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar