Моё меню Общее меню Пользователи Правила форума Все прочитано
Вернуться   uForum.uz > ИКТ и телеком > IT-индустрия > Софт > Программирование > Другие языки программирования
Знаете ли Вы, что ...
...до того как открыть новую тему, стоит использовать поиск: такая тема уже может существовать.
<< Предыдущий совет - Случайный совет - Следующий совет >>

Другие языки программирования Здесь обсуждаются все, что касается JAVA, проблемы и задачи 1С,


Ответить

 
Опции темы Опции просмотра
Старый 17.10.2007 19:20   #1  
Аватар для Ruslan Aliev
Оффлайн
AKA:Рустамыч
Сообщений: 2,598
+ 475  792/462
– 45  44/28

KazakhstanОтправить сообщение для Ruslan Aliev с помощью Skype™Мой КругАккаунт на Twitter
Подключение к MySQL из gcj

Есть программа на Java? она подключается к MySQL и выполняет определенные действия.
Для нормальной работы закачал MySQL-Connector (jdbc)
Программа нормально компилируется и запускается java.

Откомпилировал ее gcj . После этого при запуске пишет ошибку :
Код:
SQLException: com.mysql.jdbc.Driver not found in gnu.gcj.runtime.SystemClassLoader{urls=[], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
Т.е. не может найти JDBC коннектор.
Пытался откомплиировать mysql-connector-java-5.0.7-bin.jar - но при компиляции нужно указывать основной метод. Там его нету а без указания его выдается ошибку компиляции.

Кто нибудь может помочь ?
Ответить 
Старый 17.10.2007 19:58   #2  
Аватар для shumbola
Оффлайн
Сообщений: 3,327
+ 337  892/590
– 3  31/25

Uzbekistan
Цитата:
Сообщение от Rustam Valiev Посмотреть сообщение
Есть программа на Java? она подключается к MySQL и выполняет определенные действия.
Для нормальной работы закачал MySQL-Connector (jdbc)
Программа нормально компилируется и запускается java.

Откомпилировал ее gcj . После этого при запуске пишет ошибку :
Код:
SQLException: com.mysql.jdbc.Driver not found in gnu.gcj.runtime.SystemClassLoader{urls=[], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
Т.е. не может найти JDBC коннектор.
Пытался откомплиировать mysql-connector-java-5.0.7-bin.jar - но при компиляции нужно указывать основной метод. Там его нету а без указания его выдается ошибку компиляции.

Кто нибудь может помочь ?
Попробуйте:

bash$ export CLASSPATH=$CLASSPATH:/path_to_mysql_driver/mysql-connector-5.0.7-bin.jar
bash$ myprogram
Ответить 
Старый 17.10.2007 20:34   #3  
Open ID Group
Аватар для Rustam Khodjaev
Оффлайн
Buy.uz
Веб Программист
AKA:Explicit
Сообщений: 264
+ 67  30/27
– 0  0/0

UzbekistanОтправить сообщение для Rustam Khodjaev с помощью ICQАккаунт на TwitterМой мир
или просто:
CLASSPATH=/path/to/myql/driver/mysql-connector-5.0.7-bin.jar
__________________
Write code or die trying
Ответить 
Старый 18.10.2007 11:30   #4  
Аватар для Ruslan Aliev
Оффлайн
AKA:Рустамыч
Сообщений: 2,598
+ 475  792/462
– 45  44/28

KazakhstanОтправить сообщение для Ruslan Aliev с помощью Skype™Мой КругАккаунт на Twitter
Цитата:
Сообщение от shumbola Посмотреть сообщение
Попробуйте:

bash$ export CLASSPATH=$CLASSPATH:/path_to_mysql_driver/mysql-connector-5.0.7-bin.jar
bash$ myprogram
Пробовал. Это первое что я попробовал, т.к. это рецепт для запуска программы на java. Но для откомпилированной программы это не проходит. Ищу в чем дело...
Ответить 
Старый 18.10.2007 12:46   #5  
Аватар для shumbola
Оффлайн
Сообщений: 3,327
+ 337  892/590
– 3  31/25

Uzbekistan
Цитата:
Сообщение от Rustam Valiev Посмотреть сообщение
Пробовал. Это первое что я попробовал, т.к. это рецепт для запуска программы на java. Но для откомпилированной программы это не проходит. Ищу в чем дело...
Странно, должно было сработать. Но есть и другие пути.
1. можно откомпилировать mysql-connector.jar и линковать вместе с программой
2. откомпилить в библиотеку и указать в LD_LIBRARY_PATH
3. использовать утилиту gcj-dbtool
Ответить 
Старый 18.10.2007 14:32   #6  
Аватар для Ruslan Aliev
Оффлайн
AKA:Рустамыч
Сообщений: 2,598
+ 475  792/462
– 45  44/28

KazakhstanОтправить сообщение для Ruslan Aliev с помощью Skype™Мой КругАккаунт на Twitter
Сделал так что он нашел mysql-connector.jar
Теперь другая проблема:
Код:
 Error during query: Unexpected Exception: java.io.CharConversionException message given: null
Как я понял он не может конвертировать UTF-8 (соединение с БД по умолчанию) в свою кодировку. Пытался при соединении указать :
Код:
 useJvmCharsetConverters=true
(http://dev.mysql.com/doc/refman/5.1/...tem-27-4-5-3-9)
Так он потом не мог найти столбцы таблицы по названию.
Т.е. при указании
rs.getString('data'); - он вывоит ошибку и говорит что такого столбца нету. Попытался вытащить названия столбцов через ResultSetMetaData - так он мне вместо названия столбцов выдает знаки вопросов.
Нашел в гугле что-то на счет iconv но что не очень хочет переписывать ее.
Может мне JDK поменять?
Кстати можете поподробнее объяснить, что значит откомпилировать и линковать? Я не большой специалист в этом языке программирования.

Последний раз редактировалось Ruslan Aliev; 18.10.2007 в 14:35.
Ответить 
Старый 18.10.2007 15:42   #7  
Аватар для shumbola
Оффлайн
Сообщений: 3,327
+ 337  892/590
– 3  31/25

Uzbekistan
Цитата:
Сообщение от Rustam Valiev Посмотреть сообщение
Сделал так что он нашел mysql-connector.jar
Теперь другая проблема:
Код:
 Error during query: Unexpected Exception: java.io.CharConversionException message given: null
Как я понял он не может конвертировать UTF-8 (соединение с БД по умолчанию) в свою кодировку. Пытался при соединении указать :
Код:
 useJvmCharsetConverters=true
(http://dev.mysql.com/doc/refman/5.1/...tem-27-4-5-3-9)
Так он потом не мог найти столбцы таблицы по названию.
Т.е. при указании
rs.getString('data'); - он вывоит ошибку и говорит что такого столбца нету. Попытался вытащить названия столбцов через ResultSetMetaData - так он мне вместо названия столбцов выдает знаки вопросов.
Нашел в гугле что-то на счет iconv но что не очень хочет переписывать ее.
Может мне JDK поменять?
Кстати можете поподробнее объяснить, что значит откомпилировать и линковать? Я не большой специалист в этом языке программирования.
Честно говоря я не понимаю, почему вы хотите использовать gcj. Тем более, насколько я понял вы никогда не пользовались gcc (вообще термины компиляция, линк и т.д. вам не знакомы).
Мой совет, возмите jdk и пользуйтесь себе на здоровье.
Ответить 
Реклама и уведомления
Старый 18.10.2007 15:59   #8  
Open ID Group
Аватар для Rustam Khodjaev
Оффлайн
Buy.uz
Веб Программист
AKA:Explicit
Сообщений: 264
+ 67  30/27
– 0  0/0

UzbekistanОтправить сообщение для Rustam Khodjaev с помощью ICQАккаунт на TwitterМой мир
Можно попробовать добавить:
[mysqld]
default-character-set=utf8
[client]
default-character-set=utf8

в my.cnf

---------------------------

+ начиная MySQL версии 4.1, подключатся надо так:

useOldUTF8Behavior=true

Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?useOldUTF8Behavior=true","login", "passwd");
__________________
Write code or die trying
Ответить 
Старый 19.10.2007 18:24   #9  
Аватар для Ruslan Aliev
Оффлайн
AKA:Рустамыч
Сообщений: 2,598
+ 475  792/462
– 45  44/28

KazakhstanОтправить сообщение для Ruslan Aliev с помощью Skype™Мой КругАккаунт на Twitter
Цитата:
Сообщение от Rustam Khodjaev Посмотреть сообщение
Можно попробовать добавить:
[mysqld]
default-character-set=utf8
[client]
default-character-set=utf8

в my.cnf

---------------------------

+ начиная MySQL версии 4.1, подключатся надо так:

useOldUTF8Behavior=true

Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb?useOldUTF8Behavior=true","login", "passwd");
Спасибо всем. Сам нашел ошибку.
Оказывается вместо jdk15 почему то установился diablo-jdk15.
Повторная переустановка решила проблему.
Ответить 
Старый 08.11.2007 09:35   #10  
Аватар для Ruslan Aliev
Оффлайн
AKA:Рустамыч
Сообщений: 2,598
+ 475  792/462
– 45  44/28

KazakhstanОтправить сообщение для Ruslan Aliev с помощью Skype™Мой КругАккаунт на Twitter
Пришел вопрос в личку (не понятно почему не на форум)
Цитата:
JDK15 + mysql-connector-java

Привет, не подскажешь как ты установил jdk15 без diablo-jdk15.
У меня проблема аналогична твоей: http://www.uforum.uz/showthread.php?t=2795

не могу законнектиться к базе SQL.
Пожалуйста помоги.
Отвечаю:
1 - При первой установки jdk15 из портов, почему то установился diablo-jdk15.
Для исправления удалил jdk (make deinstall) а потом установил снова (make install). Во второй раз установил jdk15.
2 - Для компиляции и запуска программы сделал два файла BASH
Компиляция
Код:
#!/usr/local/bin/bash
export CLASSPATH=$CLASSPATH:/usr/local/jdk1.5.0/bin/:<dir of  your project>:
/path/mysql-connector-java-5.1.5-bin.jar
echo "export done...";
javac Main.java
echo "Main compiled";
Запуск
Код:
#!/usr/local/bin/bash
export PATH=$PATH:/usr/local/jdk1.5.0/bin/
export PATH=$PATH:/usr/local/jdk1.5.0/bin/:/<path to your project>/

/usr/local/jdk1.5.0/bin/java -classpath /<path to your project>/:
/path/mysql-connector-java-5.1.5-bin.jar Main
Main - это название класса Java. Естественно что оно (то бишь название) может меняться.
Остальное надеюсь добъёте сами
__________________
Свет рождает тени ...
Ответить 
Ответить
Опции темы
Опции просмотра




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Advertisement System V2.5 By Branden
OOO «Единый интегратор UZINFOCOM»


Новые 24 часа Кто на форуме Новички Поиск Кабинет Все прочитано Вверх