Utilisez java pour lire les données de la base de données MySQL (une simple implémentation Web Java)

1. Le but et les exigences de l'expérience

Utilisez le langage Java pour interroger les données de l'une des tables de la base de données MySQL.

2. Environnement expérimental

Environnement Windows 10
version java: 11.0.10
Outil IDE: IntelliJ IDEA 2020.3
MySQL: 5.7.26

3. Contenu expérimental

Télécharger tomcat

Téléchargez d'abord Tomcat sous Windows. Les étapes sont les suivantes:

  1. Allez sur le site officiel pour télécharger, j'ai téléchargé tomcat 8.Insérez la description de l'image ici

  2. Téléchargez et décompressez dans le répertoire que vous souhaitez placer, puis ouvrez la ligne de commande (win + R, cmd), entrez le disque où se trouve le fichier, cd, copiez et collez le chemin du dossier bin.
    Insérez la description de l'image ici

  3. Entrez service.bat install dans le bac pour installer. Astuce: Le service "Tomcat8" a été installé. Cela signifie que l'installation est réussie.

  4. Une fois l'installation terminée, configurez les variables d'environnement système (dans le clic droit sur les propriétés de mon ordinateur)
    Insérez la description de l'image ici

  5. Le chemin du bac et le chemin de la bibliothèque sont ajoutés à la variable système du chemin.Insérez la description de l'image ici

  6. Exécutez startup.bat, caractères déformés (voir le résumé de l'expérience ci-dessous pour les solutions déformées)Insérez la description de l'image ici

  7. Jusqu'à présent, Tomcat a réussi
    Insérez la description de l'image ici

Télécharger le pilote mysql

Créez un mot de passe utilisateur sa dans la base de données mysql et définissez-le sur 123456 et créez une base de données de test à l'avance, et créez une table hello comme suit: id est auto-incrémenté comme clé primaire.
Insérez la description de l'image ici

  1. Entrez dans le réseau de canalisations , sélectionnez le système d'exploitation et accédez à la page de téléchargement.
    Insérez la description de l'image ici

  2. Ensuite, il vous sera demandé de vous connecter (si vous n'avez pas de compte, il vous suffit d'en demander un), il vous suffit de renseigner quelques informations après vous être connecté à votre compte. Télécharger après soumission.
    Insérez la description de l'image ici

  3. Ce package compressé contient le fichier mysql-connector-java-8.0.23.jar (ce pilote est compatible avec toutes les versions)

Configurer IDEA

  1. Copiez le fichier jar piloté par mysql dans le dossier bibliothèque lib de tomcat. (Pas nécessaire cette fois, je peux l'utiliser à l'avenir)
    Insérez la description de l'image ici

  2. Créez un projet Web Java (voir le résumé de l'expérience pour ceux qui ne peuvent pas être créés directement)

  3. Configurez Tomcat.
    Cliquez sur Exécuter - Modifier les configurations ...
    Insérez la description de l'image ici
    Cliquez sur le signe «+» sur la gauche, recherchez Serveur Tomcat - Local et cliquez sur, puis configurez comme indiqué sur la figure (si vous ne le trouvez pas, cliquez sur la configuration des modèles comme indiqué sur la figure, puis cliquez sur l'avertissement ci-dessus! Créer une configuration)Insérez la description de l'image ici

  4. Créez deux dossiers sous WEB-INF sous le répertoire Web du projet, l'un est classes, qui est utilisé pour enregistrer les fichiers compilés lorsque le programme est en cours d'exécution. L'autre est le dossier lib, qui est utilisé pour stocker les classes externes à stocker lorsque le programme est en cours d'exécution.
    Insérez la description de l'image ici

  5. Ensuite, configurez la structure du projet et tomcat.
    Dans le menu Fichier, cliquez sur Structure du projet ...

Insérez la description de l'image ici

Le chemin de sortie sélectionne le dossier classes à l'instant.
Insérez la description de l'image ici
Le chemin de référence des classes externes sélectionne le dossier lib que vous venez de créer. (Après avoir sélectionné la boîte de sélection contextuelle, sélectionnez le répertoire Jar) L'
Insérez la description de l'image ici
expérience Tomcat doit être sélectionnée dans la bibliothèque
Insérez la description de l'image ici

  1. Placez le package de pilotes jdbc téléchargé dans le dossier lib que vous venez de créer.
    Insérez la description de l'image ici

  2. Créez vos propres packages et classes dans le dossier src. (Identique à java se)

  3. Créez un fichier File sous le dossier src et nommez-le DBConfig.properties. Les informations contenues dans le fichier sont indiquées dans la figure. (Ce n'est pas nécessaire. Vous pouvez également mettre les informations dans le fichier dans la classe. Mais l'avantage de ceci est que même si vous modifiez la base de données, il vous suffit de modifier les informations du fichier de configuration, sans avoir à changer le classer.)Insérez la description de l'image ici

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. Modifier pour obtenir la fonction de connexion à la base de données
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. Créez une classe de test pour tester si la connexion peut être obtenue.
    Insérez la description de l'image ici
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);
    }
}

Cliquez avec le bouton droit de la souris dans l'espace vide pour exécuter.
Insérez la description de l'image ici
11. Créez le fichier index.jsp sous le dossier Web, ajoutez le <h1>我爱北京天安门!<h1>code à l' étiquette. Insérez la description de l'image ici
12. Sélectionnez ensuite la course configurée ci-dessus et cliquez sur le triangle à exécuter. Insérez la description de l'image ici
13. Connectez-vous au navigateur et http://localhost:8080/web/index.jspvous pouvez voir I love Beijing Tiananmen Carré
Insérez la description de l'image ici

Commencer l'expérience

Après avoir terminé les étapes ci-dessus, félicitations à votre environnement est enfin mis en place, vous pouvez démarrer l'expérience.
Si vous avez une poursuite, vous pouvez réaliser la séparation frontale la plus simple (je pense que c'est faisable mais je ne l'ai pas appris, vous pouvez faire un message privé ou laisser un message dans la zone de commentaire)

  1. Ajouter une classe Hello_table au package
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;
        }
}

Insérez la description de l'image ici
2. Modifiez le code 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. Copiez le code suivant dans index.jsp et exécutez-le.
<%--
  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>

Utilisez Tomcat pour exécuter, ouvrir le navigateur et localhost:8080/web/index.jspenfin c'est tout.
Insérez la description de l'image ici
Insérez la description de l'image ici
Dans une table mysql comme celle-ci
Insérez la description de l'image ici

Quatrièmement, le résumé de l'expérience

Rencontrer des problèmes:

1. Il n'y a pas d'option Java Enterprise dans IDEA pour créer un projet Web Java.

On dit que cela est dû à la nouvelle version d'IDEA, créez d'abord un projet java ordinaire, puis passez à un projet Web. (Le nom que j'ai créé ici est readMysql) Insérez la description de l'image ici
Cliquez avec le bouton droit pour ajouter le support du framework
Insérez la description de l'image ici
et il sera là, comme indiqué sur la figure et cliquez sur OK.

2. Tomcat déformé

Dans le dossier conf, recherchez le fichier logging.properties et ouvrez-le. Utilisez les touches Ctrl + F pour trouver "ConsoleHandler.encoding"
sera

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

Changer le codage UTF-8 en GBK en GBK

java.util.logging.ConsoleHandler.encoding = GBK

Insérez la description de l'image ici
Puis redémarrez tomcat

Je suppose que tu aimes

Origine blog.csdn.net/weixin_44223946/article/details/114633893
conseillé
Classement