Mybatisで文字コードを指定
Mybatisで文字コードを指定する際の設定方法は、通常、データソースやJDBCの接続設定で行います。
以下は、test_exampleというテーブルを使った例です。
mybatis-config.xmlを修正する方法
例えば、MySQLを使用している場合の設定は以下のようになります。
useUnicodeとcharacterEncodingが必要になります。
<!-- mybatis-config.xml --> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/test_example?useUnicode=true&characterEncoding=UTF-8"/> <property name="username" value="root"/> <property name="password" value="password"/> </dataSource> </environment> </environments> </configuration>
SpringBootの例
application.propertiesやapplication.ymlファイルに文字コードを指定できます。
application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=UTF-8 spring.datasource.username=root spring.datasource.password=yourpassword spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
application.yml
spring: datasource: url: jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=UTF-8 username: root password: yourpassword driver-class-name: com.mysql.cj.jdbc.Driver
これらの設定で、test_exampleテーブルの文字列データはUTF-8で正しく処理されます。