Maison > base de données > tutoriel mysql > le corps du texte

Comment se connecter à la base de données MySQL en Java

王林
Libérer: 2023-05-30 15:10:49
avant
3256 Les gens l'ont consulté

Tout d'abord, puisqu'il s'agit de la version 8 de la base de données, la manière d'écrire la classe de configuration est différente de celle de la version 5. Veuillez noter que lorsque vous utilisez idea ou Eclipse en même temps, vous devez importer le package jar

Si vous souhaitez télécharger un package jar différent pour la version 8, modifiez simplement 8.0.28 vers la version spécifiée. La méthode d'importation de

idea le package JAR est la suivante:

Comment se connecter à la base de données MySQL en Java

Comment se connecter à la base de données MySQL en Java

Comment se connecter à la base de données MySQL en Java

Comment se connecter à la base de données MySQL en Java

Comment se connecter à la base de données MySQL en Java

Then vient la partie du code, créez d'abord le tableau:

CREATE TABLE `train_message` (
                                 `id` int NOT NULL AUTO_INCREMENT COMMENT '主键id',
                                 `train_name` varchar(20) NOT NULL COMMENT '列车名',
                                 `origin` varchar(30) NOT NULL COMMENT '始发地',
                                 `terminal` varchar(30) NOT NULL COMMENT '终到地',
                                 `departure_time` timestamp NOT NULL COMMENT '出站时间',
                                 `state` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '正常' COMMENT '列车状态',
                                 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb3
Copier après la connexion

then Créer la configuration connectée classe DbConfig.java, localhost est l'adresse IP de la machine locale, remplissez l'adresse IP du serveur, c'est le nom de la base de données. Voici une image montrant le nom que beaucoup de novices comprennent mal. Ensuite, écrivez la fonction principale Main .java, le corps de la fonction principale ici peut être écrit à la fin. Si vous avez besoin d'une fonction, ouvrez simplement le commentaire, sélectionnez cette phrase, appuyez sur ctrl et ajoutez /, et vous pouvez tout commenter.

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 *  数据库配置类
 *  @author 景苒
 */
public class DbConfig {
    public Connection dbConfig() throws SQLException {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
        }catch (Exception e) {
            System.out.print("加载驱动失败!");
            e.printStackTrace();
        }
        String url = "jdbc:mysql://localhost:3306/message?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true";
        String user = "root";
        String password = "123456";
        return DriverManager.getConnection(url, user, password);
    }
}
Copier après la connexion

Voici ensuite les fonctions de chacun : Comment se connecter à la base de données MySQL en Java

1. Interroger toutes les informations sur le train de Shenyang à Wuhan, triées par heure de départ

Comment se connecter à la base de données MySQL en JavaConstruire la classe GetMessage.java

import java.sql.SQLException;

/**
 * 主函数,调用功能
 * @author 景苒
 */
public class Main {
    public static void main(String[] args) throws SQLException {
//        new GetMessage().getMessage();
//        new UpdateTrainState().updateTrainState();
//        new InsertTrain().insertTrain();
//        new GetNumber().getNumber();
    }
}
Copier après la connexion

2 Modifier le statut du train T2255 en sortie. service

Créez la classe UpdateTrainState.java

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 * 查询沈阳到武汉的所有列车信息,按出发时间先后排序
 * @author 景苒
 */
public class GetMessage {
    public void getMessage() throws SQLException {
        Connection con = new DbConfig().dbConfig();
        String sql = "select * from `train_message` where origin = ? and terminal = ? ORDER BY departure_time ASC";
        String origin = "沈阳";
        String terminal = "武汉";
        PreparedStatement ps = con.prepareStatement(sql);
        ps.setString(1, origin);
        ps.setString(2, terminal);
        ResultSet rs = ps.executeQuery();
        try {
            while (rs.next()) {
                System.out.println("列车名:" + rs.getString("train_name")
                        + " 始发站:" + rs.getString("origin")
                        + " 终到站:" + rs.getString("terminal")
                        + " 出发时间:" + rs.getString("departure_time")
                        + " 列车状态:" + rs.getString("state"));
            }
        }catch (SQLException e) {
            e.printStackTrace();
        }finally {
            ps.close();
            con.close();
        }
    }
}
Copier après la connexion

3. Ajoutez des informations sur le train (saisissez-les vous-même)

Construisez la classe InsertTrain.java

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * 修改T2255列车的状态为停运
 * @author 景苒
 */
public class UpdateTrainState {
    public void updateTrainState() throws SQLException {
        Connection con = new DbConfig().dbConfig();
        String sql = "UPDATE `train_message` SET state = '停运' WHERE train_name = 'T2255'";
        Statement statement = con.createStatement();
        try {
            int i = statement.executeUpdate(sql);
            if (i > 0) {
                System.out.println("更新成功");
            }else {
                System.out.println("更新失败");
            }
        }catch (SQLException e) {
            e.printStackTrace();
        }finally {
            statement.close();
            con.close();
        }
    }
}
Copier après la connexion

4. Recherchez le nombre de trains avec un statut normal

Construisez le GetNumber. java class

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;

/**
 * 新增一辆列车信息(自己输入)
 * 始发时间为timestamp类型,输入时需要确保格式正确,如:2019-01-01 00:00:00
 * @author 景苒
 */
public class InsertTrain {
    public void insertTrain() throws SQLException {
        Connection con = new DbConfig().dbConfig();
        Scanner scanner = new Scanner(System.in);
        String sql = "insert into `train_message` values(null, ?, ?, ?, ?, default)";
        System.out.print("请输入列车名:");
        String trainName = scanner.nextLine();
        System.out.print("请输入始发站:");
        String origin = scanner.nextLine();
        System.out.print("请输入终到站:");
        String terminal = scanner.nextLine();
        System.out.print("请输入始发时间:");
        String departureTime = scanner.nextLine();
        PreparedStatement ps = con.prepareStatement(sql);
        ps.setString(1, trainName);
        ps.setString(2, origin);
        ps.setString(3, terminal);
        ps.setString(4, departureTime);
        try {
            int i = ps.executeUpdate();
            if (i > 0) {
                System.out.println("添加成功");
            }else {
                System.out.println("添加失败");
            }
        }catch (SQLException e) {
            e.printStackTrace();
        }finally {
            ps.close();
            con.close();
        }
    }
}
Copier après la connexion

Enfin, vous trouverez ci-joint le diagramme de structure des attributs de navicat et l'exemple d'instruction d'insertion

Écrivez simplement quelques données en fonction de vos propres besoins. Ce qui précède est l'exemple de code pour que Java se connecte au. La base de données mysql Eclipse est également similaire, il suffit donc d'importer le package jar. La manière est différente.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!