ホームページ > Java > &#&ベース > Javaがmysqlにデータを挿入するときに文字化けするコードの解決策

Javaがmysqlにデータを挿入するときに文字化けするコードの解決策

リリース: 2019-12-07 15:14:43
オリジナル
2216 人が閲覧しました

Javaがmysqlにデータを挿入するときに文字化けするコードの解決策

mysql にデータを挿入するときに文字化けするデータと疑問符に対する Java の解決策: (推奨: java ビデオ チュートリアル )

Java 挿入時の疑問符コードが文字化けする問題については、まずデータベースのエンコード形式が正しいかどうかを確認します。MySQL データベースにステートメントを挿入して、中国語が正常に表示できるかどうかを確認できます。正常に表示できれば、それは意味します。 Java がデータベースに接続する場合、データベースはエンコードなしでアクセスされます。

解決策

static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    static final String DB_URL = "jdbc:mysql://localhost:3306/dbname?characterEncoding=UTF-8";
ログイン後にコピー

完全なエンコード

package com.music.test;

import java.sql.*;

public class DBMySQL {
    // JDBC 驱动名及数据库 URL
    static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    static final String DB_URL = "jdbc:mysql://localhost:3306/dbname?characterEncoding=UTF-8";

    // 数据库的用户名与密码,需要根据自己的设置
    static final String USER = "***";
    static final String PASS = "***";
    private Connection conn = null;

    public DBMySQL() {
        try {
            // 注册 JDBC 驱动
            Class.forName("com.mysql.jdbc.Driver");
            // 打开链接
            System.out.println("连接数据库...");
            conn = DriverManager.getConnection(DB_URL, USER, PASS);
        } catch (SQLException se) {
            // 处理 JDBC 错误
            se.printStackTrace();
        } catch (Exception e) {
            // 处理 Class.forName 错误
            e.printStackTrace();
        }
    }

    public int insert(Album album) {
        int i = 0;
        String sql = "insert into album (album_name,singer,album_url) values(?,?,?)";
        try {

            PreparedStatement preStmt = conn.prepareStatement(sql);
            preStmt.setString(1, album.getAlbum_name());
            preStmt.setString(2, album.getSinger());// 或者:preStmt.setInt(1,值);
            preStmt.setString(3, album.getAlbum_url());// 或者:preStmt.setInt(1,值);

            i = preStmt.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return i;// 返回影响的行数,1为执行成功
    }
}
ログイン後にコピー

データベース名の後に ?characterEncoding=UTF-8 を追加すると、データを正常に挿入できます。

Java についてさらに詳しく知りたい場合は、Java 基本チュートリアル 列に注目してください。

以上がJavaがmysqlにデータを挿入するときに文字化けするコードの解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート