Un sistema de aplicación de base de datos relacional en red es una estructura de tres niveles. El cliente y el servidor están conectados a través de una red. El programa de aplicación del cliente se comunica con el programa de base de datos del lado del servidor de acuerdo con el protocolo de comunicación; el programa de servicio de base de datos se comunica con el sistema de gestión de base de datos mediante comandos SQL.
Hay dos formas de conectar programas Java a bases de datos. Uno es utilizar un puente JDBC-ODBC para conectarse a la base de datos y el otro es utilizar un controlador JDBC de Java puro para conectarse a la base de datos.
Conéctese a la base de datos mediante el puente JDBC-ODBC
El programa Java utiliza el puente JDBC-ODBC para conectarse a la base de datos. El proceso de comunicación entre el programa Java y la base de datos es:
Primero, la aplicación de base de datos emite una llamada API al administrador de controladores ODBC. El administrador de controladores ODBC convierte esta llamada en una llamada de controlador ODBC al sistema de administración de bases de datos. El sistema de administración de bases de datos, a su vez, convierte esta llamada en entrada/salida de datos para el sistema operativo. sistema de llamada. Finalmente, el sistema operativo obtiene los datos reales de la base de datos y los devuelve paso a paso.
La programación de la base de datos primero debe configurar la fuente de datos. Los pasos para configurar la fuente de datos en ODBC son los siguientes:
Abra las Herramientas administrativas en el Panel de control de Windows. Para Windows XP: Seleccione "Mantenimiento de rendimiento" >> "Herramientas de administración" >> "Fuente de datos (ODBC)" Para Windows 2000: Seleccione "Herramientas de administración" >> "Fuente de datos".
Abra "Fuente de datos". Aparece el cuadro de diálogo Administrador de fuentes de datos ODBC, que muestra los nombres de las fuentes de datos existentes.
Seleccione "DSN de usuario", haga clic en el botón "Agregar" y aparecerá el cuadro de diálogo para instalar el controlador de fuente de datos. Acceda a la fuente de datos (*.mdb), haga clic en el botón "Finalizar", aparecerá el cuadro de diálogo "Crear fuente de datos", escriba el nombre de la fuente de datos que se creará y seleccione una tabla de base de datos para la fuente de datos creada.
Haga clic en el botón "Seleccionar" en el área de la base de datos y seleccione la tabla de la base de datos requerida. Cuando necesite autorizar el nivel de acceso para la fuente de datos, haga clic en el botón Avanzado. Después de configurar el nombre de inicio de sesión y la contraseña, haga clic en el botón "Aceptar" para completar la configuración de la base de datos de Access en el administrador ODBC.
Si aún no existe una tabla de base de datos, debe crear una.
La fuente de datos es la base de datos. Después de configurar la fuente de datos, el programa Java necesita acceder a la tabla de la base de datos y establecer un puente JDBC-ODBC para conectar el programa a la base de datos. Después de eso, el programa puede enviar declaraciones SQL a la base de datos y procesar los resultados devueltos por la base de datos. Java Database Connection JDBC (Java DataBase Connectivity) consta de un conjunto de clases e interfaces escritas en lenguaje Java. JDBC es una API para conectar programas Java a bases de datos. Puede hacer las siguientes tres cosas: establecer una conexión con una base de datos, enviar declaraciones SQL a la base de datos y procesar los resultados devueltos por la base de datos.
Llamar al método de clase Class.forName(String s) puede establecer un puente JDBC-ODBC. Por ejemplo, código:
try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); atrapar(Exception e){}
Se cargan controladores para programas Java.
[Ejemplo] Describa el método connectByJdbcOdbc() para conectarse a la base de datos. Este método se conecta a la base de datos de acuerdo con la URL de la base de datos, el nombre de usuario y la contraseña. Si la conexión es exitosa, el método devuelve el objeto de conexión. sin éxito, regresa vacío.
conexión estática pública connectByjdbcOdbc(String url, String nombre de usuario, String contraseña){ Conexión con = null; try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //Cargar controlador ODBC} catch (Exception e){ e .printStackTrace(); return null; //Error de conexión} try{ con = DriverManager.getConnection(url, nombre de usuario, contraseña); catch (SQLExceotuib e){ e.printStackTrace(); return null; //Conexión fallida} return con;
El siguiente código es una llamada al método connectByJdbcOdbc(). Si la conexión de la base de datos es exitosa, aparecerá una ventana de información de conexión de la base de datos exitosa. De lo contrario, aparecerá una ventana de información de conexión de la base de datos exitosa.
if ((con = connectByJdbcOdbc("jdbc:odbc:redsun", "xia", "1234")) != null){ JoptionPane.showMessageDialog(null, "Conexión de base de datos exitosa"); con = null; } catch (SOLException e){}}else JOptionPane.showMessageDialog(null, "Error en la conexión a la base de datos");
Utilice el controlador JDBC de Java puro para conectarse a la base de datos
Los programas Java también pueden utilizar controladores JDBC Java puros para conectarse a la base de datos. Este método se usa ampliamente, pero requiere descargar el paquete de controladores correspondiente, porque los códigos de conexión de diferentes bases de datos pueden ser diferentes y los controladores cargados también pueden ser diferentes al conectarse a diferentes bases de datos. Por ejemplo, el controlador para conectarse a SQL Server se descarga del sitio web www.msdn.com. Hay tres paquetes: msbase.jar, mssqlserver.jar y msutil.jar, y estos tres paquetes deben colocarse en jdk/. jre/lib/ext/, o establezca su ubicación en CLASSPATH.
El proceso de utilizar un controlador JDBC de Java puro para conectarse a la base de datos es el siguiente:
Cargue el controlador. Hay dos formas de cargar el controlador:
Una es agregar el controlador a la propiedad jdbc.drivers de java.lang.System. Esta es una lista de nombres de clases de controladores cargados por la clase DriverManager, separados por dos puntos.
Otra forma es utilizar el método Class.forName() para cargar el controlador especificado en el programa después de descargarlo del sitio web correspondiente. Por ejemplo:
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Crea una URL para la base de datos especificada. El objeto URL de la base de datos es similar al localizador uniforme de recursos de la red y su formato es:
jdbc:subProtocolo:subNombre://nombre de host:puerto:nombre de base de datos=XXX
Entre ellos, el subprotocolo es un mecanismo de conexión de base de datos admitido por un determinado controlador; subnombre es el nombre específico bajo el mecanismo de conexión actual; hostName es el nombre del host es el puerto de conexión correspondiente; Por ejemplo, el siguiente código podría ser la URL de una base de datos:
jdbc:Microsoft:sqlserver://localhost:1433;nombre de la base de datos=ksinfo
La descripción URL de la base de datos utiliza el mecanismo proporcionado por Miscrosoft y utiliza el controlador sqlserve para acceder a la base de datos ksInfo en la máquina local a través del puerto 1433.
Establece una conexión. El método getConnection() del DriverManager establece una conexión.
[Ejemplo] Describa el método estático connectByJdbc() que se conecta a la base de datos. Este método se conecta a la base de datos de acuerdo con la URL de la base de datos, el nombre de usuario y la contraseña. Si la conexión es exitosa, el método devuelve verdadero. , devuelve falso.
Conexión estática pública conectByJdbc(URL de cadena, nombre de usuario de cadena, contraseña de cadena){ Conexión con = null; try{ Class.forName( //Carga el controlador específico "com.microsoft.jdbc.sqlserver.SQLServerDriver" } catch (Exception e); ){ e.printStackTrace(); return null; //Error de conexión} try{ con = DriverManage.getConnection(url, nombre de usuario, contraseña} catch); (SQLException e){ e.printStackTrace(); return null; //Conexión fallida} return con;