Home > Java > JavaBase > body text

Solution to garbled data inserted into mysql using java

Release: 2019-12-11 17:24:36
Original
2238 people have browsed it

Solution to garbled data inserted into mysql using java

Method 1: Set encoding uniformity

1. Set the eclipse environment encoding (recommended : java video tutorial)

Solution to garbled data inserted into mysql using java

2. Set the mysql environment encoding

mydb as the database that needs to be modified Name

Solution to garbled data inserted into mysql using java

Method 2: Set the encoding when creating the database

1. Set the encoding when mysql creates the database

create database mydb default character set utf8 collate utf8_general_ci;
Copy after login

2. Set the encoding when creating the table

CREATE TABLE `type` ( 
`id` int(10) unsigned NOT NULL auto_increment, 
`flag_deleted` enum('Y','N') character set utf8 NOT NULL default 'N', 
`flag_type` int(5) NOT NULL default '0', 
`type_name` varchar(50) character set utf8 NOT NULL default '', 
PRIMARY KEY (`id`) 
)  DEFAULT CHARSET=utf8;
Copy after login

Method 3: Set when connecting to the database

Add ?useUnicode=true&characterEncoding=UTF-8

public class TestJdbc {
    private static String URL = "jdbc:mysql://localhost:3306/studentmanage?useUnicode=true&characterEncoding=UTF-8";
    useUnicode=true&characterEncoding=UTF-8
    private static String USER = "root";
    private static String PASSWORD = "root";

    public static void main(String[] args) {
        Connection con = null;

        String sql = "insert into user(uid,uname,password) values(?,?,?)";
        try {
            Class.forName("com.mysql.jdbc.Driver");
            con = DriverManager.getConnection(URL, USER, PASSWORD);
            con.close();
        } catch (Exception e) {
            e.printStackTrace();
        } 
    }
Copy after login

after the URL. The function of adding is to specify the encoding and decoding format of characters.

For example: the mysql database uses gbk encoding, while the project database uses utf-8 encoding. If useUnicode=true&characterEncoding=UTF-8 is added at this time, the effect has the following two aspects:

When storing data:

The database will first use UTF-8 when storing project data The format decodes the data into bytecode, and then reuses the decoded bytecode to store it in the database using GBK encoding.

When retrieving data:

When retrieving data from the database, the database will first decode the data in the database into bytecodes in GBK format, and then convert the decoded bytes The code re-encodes the data in UTF-8 format and finally returns the data to the client.

For more java knowledge, please pay attention to the java basic tutorial column.

The above is the detailed content of Solution to garbled data inserted into mysql using java. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!