Here I come, there I am.

JDBC и utf-8 поддръжка за MySQL

at 17:01 by nofearinc
Category: Java

 

Трябваше да мигрирам един голям .CSV файл към база, като го parse-на по определени изисквания. Решение: Java + MySQL.

  • Java-та си е Java, има JDBC за връзка, което върши чудесна работа за малки проекти
  • Конектор към MySQL - MySQL Connector/J
  • и работещ проект, естествено.

Трите тънки момента за utf-8 поддръжка:

  • базата и таблиците да бъдат utf8 кодировка и utf8_general_ci или utf8_unicode_ci колация
  • CSV файлът да е в UTF-8, а не ANSI (аз лично го презаписах отново) и да се отвори с подаване на кодировка със Scanner (удобен за четене в J5):

Scanner reader = new Scanner(file, "utf-8");

  • Към хоста на базата да се добавят параметри за UTF:

String url = "jdbc:mysql://localhost/database?useUnicode=yes&characterEncoding=UTF-8";

 

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • MySpace
  • Slashdot
  • Technorati
  • TwitThis
del.icio.us Digg DZone Facebook Google Google Reader Magnolia reddit SlashDot Technorati ReadMe.ru Dobavi.com Dao.bg Lubimi.com Ping.bg Pipe.bg Svejo.net Web-bg.com

Безподобния пост.

Related posts brought to you by Yet Another Related Posts Plugin.

Comments

2 Responses to “JDBC и utf-8 поддръжка за MySQL”

  1. Bo on August 17th, 2009 20:22 [#]

    Марио, здравей,

    Аз няколко пъти в проекти съм ползвал SuperCSV http://supercsv.sourceforge.net/ библиотеката за четене и писане на csv файлове. Довелен съм от нея, лесно се ползва и не последно място добре проверана библиотека е.

  2. admin on August 17th, 2009 20:26 [#]

    Мерси за линка, Боби - и аз съм ползвал разни библиотеки преди години, но ставаше въпрос за проста миграция и ми бе по-лесно да си драсна custom решение. Бях учуден обаче от проблемите с кодировката и затова го блогнах.

Leave a Reply