try {
Class.forName(driverName).newInstance();
} catch (Exception e) {
// не нашел класс драйвера
}
try{
Connection conn = = DriverManager.getConnection(dbUrl);
Statement stat = conn.createStatement();
ResultSet res = stat.executeQuery("some sql query");
while(res.next()){
//извлечение результатов запроса из res
}
catch(SQLException e){
}
Как правильно из приложения Java подключиться к MySQL серверу
Подскажите пожалуйста как правильно из Java подключиться к серверу MySQL, используя синтаксис SQL выбирать данные и осуществлять навигацию по ним в прямом и обратном направлении задавая количество возвращаемых записей (например первые 20-ть, затем следующие 20-ть, с 100-го по 200-й. Это необходимо для порционного отображения в HTML используя JSP.
Заранее благодарен.
Создать JDBC подключение к базе исспользуя этот драйвер.
Юзать )
Я ведь, не зря сказал, что ЛЕНЬ ДВИГАТЕЛЬ ПРОГРЕССА, мне бы код Java-вский получить!!!
Код:
driverName - имя mysql JDBC драйвера. Например: "com.mysql.jdbc.Driver"
dbUrl - URL до базы. можно сразу с логином и паролем типа: "jdbc:mysql://10.10.10.10:3306/dbname?user=root&password=superman"
Хотя логин и пароль можно вторым и третим параметром в getConnection передавать.
но как мне теперь избавиться от RecordSet, т.е. закрыть подключение и продолжить работать с записями.
Идея такова:
Например по функции SELECT
1. Приложение на JSP формирует строку SQL и отправляет его приложению на Java
2. Приложение Java получив строку SQL открывает соединение с сервером и формирует RecordSet по строке SQL
3. Затем Приложение Java формирует массив данных из RecordSet, закрывает соединение и передает сформированный массив приложению JSP
4. Приложение на JSP получает массив данных и осуществляет навигацию по нему и выбор действий пользователя
С подключением Я все понял, а как лучше мне избавиться от RecordSet???
Цитата: nickstarnew
Отлично,
но как мне теперь избавиться от RecordSet, т.е. закрыть подключение и продолжить работать с записями.
но как мне теперь избавиться от RecordSet, т.е. закрыть подключение и продолжить работать с записями.
Под RecordSet я так понимаю имеется ввиду ResultSet?
Цитата: nickstarnew
Идея такова:
Например по функции SELECT
1. Приложение на JSP формирует строку SQL и отправляет его приложению на Java
Так JSP - тоже выполняется на JAVA )
Цитата: nickstarnew
2. Приложение Java получив строку SQL открывает соединение с сервером и формирует RecordSet по строке SQL
Формирует ResultSet.
Цитата: nickstarnew
3. Затем Приложение Java формирует массив данных из RecordSet, закрывает соединение и передает сформированный массив приложению JSP
Да потом тупо в цикле перебираются все строки которые вернул запрос ( while(res.next())) и из res извлекаются поля из запроса. Извлекать можно куда угодно, можно никакой промежуточный массив не формировать, а сразу ResultSet и послать. Но это уже дело конкретной реализации - я не знаю как там все. )
Цитата: nickstarnew
С подключением Я все понял, а как лучше мне избавиться от RecordSet???
А зачем от него избавляться? Это же не C++ ) Из него выжали всю нужную информацию, а дельше его garbage collector сам удалит, когда перестанут его исспользовать.
Все сказано правильно, но у меня опять просьба НУЖЕН КОД!!!
Я уже привел код. Что не так?
Переброски в массив???
мляхо, откуда я знаю какие данные хранятся в массиве и каким образом и какие поля в таблице? ))
Все что он хочет: чтобы кто-нибудь все написал.
nickstarnew: попробуй немного почитать. в любой книжке есть примеры по подключению к БД.
За тебя код писать никто не будет.
Раздел для страждущих вот: http://forum.codenet.ru/forumdisplay.php?f=27
нужно, что бы метод сам определял количество и наименование полей:)
Вот ведь, в чем заморочка!!!!
Цитата: Aoli
aks, расслабься. Человеку просто нужен код, а не подсказка.
Я пока и не напрягался )
Господа, а как вы подключаете драйвер (в смысле прописываете в CLASSPATH)? Пожалуйста напишите подробно, по пунктам. Куда распаковывали архив драйвера, где у вас стоит JDK. Второй день прыгаю с бубном вокруг CLASSPATH и вроде все правильно делаю , но не работает нифига! :confused:
Тогда при запуске программы пропишешь в CLASSPATH:
C:\MySQLConnector....jar
усе.