La operación de la base de datos es una de las partes de desarrollo indispensables del desarrollo actual del sistema, especialmente en la era actual de Big Data, las bases de datos son particularmente importantes. ¿Pero realmente entiendes cómo se conectan Java y la base de datos?
Permítanme darle un ejemplo simple de conexión de base de datos:
paquete com.java.dbtest; import java.sql.connection; import java.sql.drivermanager; import java.sql.preparedStatement; import java.sql.resultset; import java.sql.sqlexception; Public Class TestConnection implementa DBTest {public void selectUser () {// Establecer el controlador de la base de datos, la dirección de conexión de la base de datos, el puerto, el nombre, el nombre de usuario, la contraseña, la cadena de striverName = "oracle.jdbc.driver.oracledriver"; Cadena url = "jdbc: oracle: delgada: @localhost: 1521: bjpowerNode"; // Prueba es el nombre de la base de datos, 1521 es el puerto predeterminado para conectarse a la base de datos String user = "System"; // aa es la cadena de nombre de usuario contraseña = "bjpowerNode"; // 123 es la contraseña Preparado PSTMT = null; ResultSet rs = null; // Conexión del objeto de conexión de la base de datos Conn = null; Pruebe {// reflejar la clase de controlador de la base de datos Oracle.forname (Drivername); // Obtener conexión de base de datos conn = drivermanager.getConnection (url, usuario, contraseña); // Salida de conexión de base de datos System.out.println (Conn); // Personalizar el comando sql string sql = "select * de t_user donde user_id =?"; // Crear objeto preparado en este conexión pstmt = conn.prepareStatement (SQL); // pasar la primera raíz del valor del parámetro, en lugar del primer signo de interrogación pstmt.setstring (1, "root"); // Ejecutar la instrucción de consulta y guardar los datos en el objeto de resultset rs = pstmt.executeQuery (); // Mueva el puntero a la siguiente línea para determinar si hay datos en rs if (rs.next ()) {// dueño de resultados de la consulta System.out.println ("consulta nombrada [" + rs.getString ("user_id") + "】, su contraseña es:" + rs.getstring ("contraseña")); } else {// Resultado de la consulta de salida System.out.println ("no se encontró información con nombre de usuario [" + rs.getString ("user_id") + "] no se encontró"); }} Catch (ClassNotFoundException e) {E.PrintStackTrace (); } Catch (Sqlexception e) {E.PrintStackTrace (); } finalmente {try {if (rs! = null) {rs.close (); } if (pstmt! = null) {pstmt.close (); } if (conn! = null) {conn.close (); }} Catch (SQLException e) {E.PrintStackTrace (); }}} public static void main (string [] args) {nueva testConnection (). selectUser (); }}}En la función principal, haga clic con el botón derecho y seleccione "Ejecutar como" => "Aplicación Java", y se ejecutará el bloque del programa. En la consola, puede ver el resultado de ejecución. Si da una cadena similar a "Oracle.jdbc.driver.t4cconnection@7C242F04", significa que se ha conectado con éxito. Los resultados de la operación se muestran en la figura:
Disecemos brevemente este procedimiento.
Este programa es un ejemplo de Java que se conecta a Oracle Database. Utiliza JDBC para completar la operación de conectarse a la base de datos, por lo que es necesario introducir OJDBC14.JAR. Antes de la operación, primero debe obtener el objeto de la clase de controlador de la base de datos y obtener el objeto de conexión de la base de datos a través del objeto del controlador.
Class.forname (Drivername) se usa para cargar el controlador aplicando el mecanismo de reflexión de clase. La clase Drivermanager es la capa de gestión de JDBC, que actúa entre usuarios y controladores. Rastrea los controladores disponibles y establece una conexión entre la base de datos y el controlador correspondiente.
En general, solo necesita usar el método drivermanager.getConnection directamente en la clase para establecer una conexión con la base de datos.
La interfaz PrepareStatement hereda la declaración y es una clase utilizada para realizar operaciones de bases de datos. PreparationStatement es mucho más eficiente que la declaración cuando se llama varias veces, por lo que muchas personas abogan por el uso de estates preparados en lugar de la declaración.
En la siguiente publicación del blog, presentaré este punto en detalle "comprensión profunda de la declaración y la estación preparada". Preparado se puede considerar como una clase de comando en .NET.
La interfaz del conjunto de resultados ha aparecido en muchos idiomas, y almacena principalmente los datos consultados. Después de cada consulta, el método Next () generalmente se usa en el idioma Java para leer los datos.