Use java para leer datos de la base de datos MySQL (una implementación web java simple)

1. El propósito y los requisitos del experimento

Utilice el lenguaje Java para consultar los datos de una de las tablas de la base de datos MySQL.

2. Entorno experimental

Entorno de Windows 10
versión de Java: 11.0.10
Herramienta IDE: IntelliJ IDEA 2020.3
MySQL: 5.7.26

3. Contenido experimental

Descarga tomcat

Primero descargue Tomcat en Windows. Los pasos son los siguientes:

  1. Vaya al sitio web oficial para descargar, descargué tomcat 8.Inserte la descripción de la imagen aquí

  2. Descargue y descomprima en el directorio que desea colocar, luego abra la línea de comando (win + R, cmd), ingrese el disco donde se encuentra el archivo, cd, copie y pegue la ruta de la carpeta bin.
    Inserte la descripción de la imagen aquí

  3. Ingrese service.bat install en el contenedor para instalar. Sugerencia: Se ha instalado el servicio 'Tomcat8', lo que significa que la instalación se ha realizado correctamente.

  4. Una vez completada la instalación, configure las variables de entorno del sistema (en las propiedades del botón derecho de mi computadora)
    Inserte la descripción de la imagen aquí

  5. La ruta bin y la ruta lib se agregan a la variable de sistema de ruta.Inserte la descripción de la imagen aquí

  6. Ejecute startup.bat, caracteres ilegibles (consulte el resumen del experimento a continuación para obtener soluciones confusas)Inserte la descripción de la imagen aquí

  7. Hasta ahora Tomcat tiene éxito
    Inserte la descripción de la imagen aquí

Descargar controlador mysql

Cree una contraseña de usuario sa en la base de datos mysql y configúrela en 123456 y, por favor, cree una base de datos de prueba con anticipación y cree una tabla de saludo de la siguiente manera: id se autoincrementa como clave principal.
Inserte la descripción de la imagen aquí

  1. Ingrese a la red de tuberías , seleccione el sistema operativo e ingrese a la página de descarga.
    Inserte la descripción de la imagen aquí

  2. Luego se le pedirá que inicie sesión (si no tiene una cuenta, solo solicite una), solo complete cierta información después de iniciar sesión en su cuenta. Descargar después del envío.
    Inserte la descripción de la imagen aquí

  3. Este paquete comprimido contiene el archivo mysql-connector-java-8.0.23.jar (este controlador es compatible con versiones anteriores)

Configurar IDEA

  1. Copie el archivo jar descargado controlado por mysql en la carpeta de la biblioteca lib de tomcat. (No es necesario esta vez, puedo usarlo en el futuro)
    Inserte la descripción de la imagen aquí

  2. Cree un proyecto web java (consulte el resumen del experimento para aquellos que no se pueden crear directamente)

  3. Configure Tomcat.
    Haga clic en Ejecutar — Editar configuraciones ...
    Inserte la descripción de la imagen aquí
    Haga clic en el signo "+" a la izquierda, busque Tomcat Server — Local y haga clic, y luego configure como se muestra en la figura (si no lo encuentra, haga clic en la configuración de Plantillas como se muestra en la figura, y luego haga clic en la advertencia de arriba! Crear configuración)Inserte la descripción de la imagen aquí

  4. Cree dos carpetas en WEB-INF bajo el directorio web del proyecto, una es clases, que se utiliza para guardar los archivos compilados cuando el programa se está ejecutando. La otra es la carpeta lib, que se utiliza para almacenar las clases externas que se almacenarán cuando el programa se esté ejecutando.
    Inserte la descripción de la imagen aquí

  5. A continuación, configure la estructura del proyecto y tomcat.
    En el menú de archivo, haga clic en Estructura del proyecto ...

Inserte la descripción de la imagen aquí

La ruta de salida selecciona la carpeta de clases en este momento
Inserte la descripción de la imagen aquí
La ruta de referencia de las clases externas selecciona la carpeta lib recién creada. (Después de seleccionar el cuadro de selección emergente, seleccione el directorio Jar) El
Inserte la descripción de la imagen aquí
experimento de Tomcat debe seleccionarse en la biblioteca
Inserte la descripción de la imagen aquí

  1. Coloque el paquete del controlador jdbc descargado en la carpeta lib que acaba de crear.
    Inserte la descripción de la imagen aquí

  2. Cree sus propios paquetes y clases en la carpeta src. (Igual que java se)

  3. Cree un archivo File en la carpeta src y asígnele el nombre DBConfig.properties La información del archivo se muestra en la figura. (Esto no es necesario. También puedes poner la información en el archivo en la clase. Pero la ventaja de esto es que incluso si cambias la base de datos, solo necesitas modificar la información en el archivo de configuración, sin tener que cambiar la clase.)Inserte la descripción de la imagen aquí

driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC
user=sa
psd=123456
//旧版本的连接
//driver=com.mysql.jdbc.Driver
//url=jdbc:mysql//localhost:3306/test
//user=sa
//psd=123456
  1. Editar para obtener la función de conexión a la base de datos
package com.liupanlong.readMysql;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

public class connectMysql {
    
    
    public Connection getConnection(){
    
    

        String driver = null;
        String url = null;
        String user = null;
        String psd = null;
        Connection conn = null;

        Properties pro = new Properties();    //新建一个properties实例,用于从DBConfig中拿到连接参数。
        try {
    
    
            pro.load(this.getClass().getClassLoader().getResourceAsStream("DBConfig.properties")); //加载DBConfig文件。
            driver = pro.getProperty("driver");
            url = pro.getProperty("url");
            user = pro.getProperty("user");
            psd = pro.getProperty("psd");
        } catch (IOException e) {
    
    
            e.printStackTrace();
        }

        try {
    
    
            Class.forName(driver);   //加载jdbc驱动
        } catch (ClassNotFoundException e) {
    
    
            e.printStackTrace();
        }

        try {
    
    
            conn = DriverManager.getConnection(url,user,psd);  //获取数据库连接
            conn.setAutoCommit(false);
            return conn;       //返回一个数据库连接。
        } catch (SQLException e) {
    
    
            e.printStackTrace();
        }

        return null;
    }
}


  1. Cree una clase de prueba para probar si se puede obtener la conexión.
    Inserte la descripción de la imagen aquí
package com.liupanlong.readMysql;

import java.sql.Connection;

public class Test {
    
    
    public static void main(String[] args){
    
    
        connectMysql open = new connectMysql();
        Connection conn = open.getConnection();
        System.out.println(conn);
    }
}

Haga clic derecho en el espacio en blanco para ejecutar.
Inserte la descripción de la imagen aquí
11. Cree el archivo index.jsp en la carpeta web, agregue el <h1>我爱北京天安门!<h1>código a la etiqueta. Inserte la descripción de la imagen aquí
12. Luego seleccione la ejecución configurada anteriormente y haga clic en el triángulo para ejecutar. Inserte la descripción de la imagen aquí
13. Inicie sesión en el navegador y http://localhost:8080/web/index.jspverá I love Beijing Tiananmen Cuadrado
Inserte la descripción de la imagen aquí

Iniciar experimento

Después de completar los pasos anteriores, felicitaciones a su entorno finalmente está configurado, puede comenzar el experimento.
Si tiene una búsqueda, puede lograr la separación de front-end más simple (creo que es factible pero no lo he aprendido, puede hacer un mensaje privado o dejar un mensaje en el área de comentarios)

  1. Agrega una clase Hello_table al paquete
package com.liupanlong.readMysql;


public class Hello_table {
    
    
    private int id;
        private String name;

        public int getId() {
    
    
            return id;
        }
        public void setId(int id) {
    
    
            this.id = id;
        }
        public String getName() {
    
    
            return name;
        }
        public void setName(String name) {
    
    
            this.name = name;
        }
        public Hello_table(int id, String name) {
    
    
            this.id = id;
            this.name = name;
        }
}

Inserte la descripción de la imagen aquí
2. Modifica el código de readhello

package com.liupanlong.readMysql;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

public class readhello {
    
    
    public List readFirstHello() throws SQLException {
    
    
        List<Hello_table> list =new ArrayList<Hello_table>();
        connectMysql open = new connectMysql();
        Connection con = open.getConnection();      //连接类
        //然后创建statement类对象,用来执行SQL语句
        Statement statement=con.createStatement();          //Statement实现增删改查
        //你要执行的Sql语句
        String sql="select id,name from hello";
        //最后设置Resultset类,用来存放获取的 结果集
        ResultSet rs=statement.executeQuery(sql);           //结果集

        int Id=0;
        String name=null;
        while(rs.next()) {
    
    
            Id = rs.getInt("id");
            name=rs.getString("name");
            Hello_table tl=new Hello_table(Id, name);
            list.add(tl);
        }

        //最后关闭
        rs.close();
        con.close();
        return list;
    }
}

  1. Copie el siguiente código en index.jsp y ejecútelo.
<%--
  Created by IntelliJ IDEA.
  User: 86135
  Date: 2021/3/10
  Time: 19:58
  To change this template use File | Settings | File Templates.
--%>

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8"%>
<%@ page import="com.liupanlong.readMysql.Hello_table" %>
<%@ page import="com.liupanlong.readMysql.readhello" %>
<%@ page import="java.util.List" %>
<%
  String path = request.getContextPath();
  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<html>
<head>
  <title>查询hello表格</title>
</head>

<body>
<style>
  body,table {text-align: center;} table {margin: auto;}
</style>
<table border="1">
  <tr>
    <td width="100">id</td>
    <td width="100">name</td>
  </tr>
  <%
    readhello dao=new readhello();
    List<Hello_table> list = dao.readFirstHello();
    for(Hello_table tl:list)
    {%>
  <tr>
    <td width="100"><%=tl.getId() %></td>
    <td width="100"><%=tl.getName() %></td>
  </tr>
  <%}
  %>
</table>
</body>
</html>

Usa Tomcat para ejecutar, abre el navegador y localhost:8080/web/index.jspfinalmente eso es todo.
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
En una tabla mysql como esta
Inserte la descripción de la imagen aquí

Cuarto, el resumen del experimento

Problemas de encuentro:

1. No existe la opción Java Enterprise en IDEA para crear un proyecto web Java.

Se dice que esto es causado por la nueva versión de IDEA, primero cree un proyecto java ordinario y luego actualice a un proyecto web. (El nombre que creé aquí es readMysql) Inserte la descripción de la imagen aquí
Haga clic derecho para agregar soporte de marco
Inserte la descripción de la imagen aquí
y estará allí, como se muestra en la figura y haga clic en Aceptar.

2. Tomcat ilegible

En la carpeta conf, busque el archivo logging.properties y ábralo. Utilice las teclas Ctrl + F para encontrar "ConsoleHandler.encoding"
se

java.util.logging.ConsoleHandler.encoding = UTF-8

Cambie la codificación UTF-8 en GBK a GBK

java.util.logging.ConsoleHandler.encoding = GBK

Inserte la descripción de la imagen aquí
Luego reinicia Tomcat

Supongo que te gusta

Origin blog.csdn.net/weixin_44223946/article/details/114633893
Recomendado
Clasificación