powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JDBC+Tomcat+MySQL
11 сообщений из 11, страница 1 из 1
JDBC+Tomcat+MySQL
    #33259055
Denis555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята , поможите начинающему вскарабкаться на Эльбрус!
Необходимо посмотреть работу некоего сервлета, использующего JDBC-драйвер для коннекта с MySQL. На компе: Windows XP,сервер приложений Tomcat (есть 4 и 5 версии), MySQL, j2sdk1.4.2_01, mysql-connector-java-3.1.10-bin.jar. Как чего настроить и прописать (serwer.xml, web-inf,..)? Можно ли запускать сервлет прямо из IDE IntelliJ-IDEA-4.5 (куда развернуть сервлет)? Извините за обилие вопросов, но уже голова слетает!
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259087
Naug
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
/topic/152870


-----------------------------------------------------------------------------------------
Q)-В чём отличие (объектного) от РМДБ джойна?
A)- в том, наверное, что объекты не так охотно "сливаются", как записи ...
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259109
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis555
> Ребята, поможите начинающему вскарабкаться на Эльбрус!
> Необходимо посмотреть работу некоего сервлета, использующего
> JDBC-драйвер для коннекта с MySQL. На компе: Windows XP,сервер
> приложений Tomcat (есть 4 и 5 версии), MySQL, j2sdk1.4.2_01,
> mysql-connector-java-3.1.10-bin.jar. Как чего настроить и прописать
> (serwer.xml, web-inf,..)? Можно ли запускать сервлет прямо из IDE
> IntelliJ-IDEA-4.5 (куда развернуть сервлет)? Извините за обилие
> вопросов, но уже голова слетает!Тема==Ответить




в лоб:
кидаешь коннектор в папку {Tomcat}/WEB_APPS/ROOT/WEB-INF/lib
сервлет в {Tomcat}/WEB_APPS/ROOT/WEB-INF/classes

прописываешь сервлет в {Tomcat}/WEB_APPS/ROOT/WEB-INF/web.xml:

<servlet>
<servlet-name>muuuu</servlet-name>
<servlet-class>...</servlet-class>
</servlet>
<servlet>
<servlet-name>muuuu</servlet-name>
<servlet-class>/muuu</servlet-class>
</servlet>

в сервлете classForName(...); и т. д. и работаешь.

чтоб запустить в идее, надо делать web модуль, в качестве контейнера
выбрать томкат.
-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259113
Denis555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо, но все же как насчет доступа к базе – сейчас для меня это главное!
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259117
Naug
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что с доступом к базе? JDBC он вроде JDBC и есть... или у вас какой-то апп.сервер с пулом соидений есть?
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259128
Denis555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, нет. Ваше сообщение прочитал позже, чем отослал свое. Будем пробовать, Спасибо!!
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259214
Denis555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если можно, подробнее:
В сервлете Query (его имя) мы считываем параметры инициализации из файла web.xml (который будет лежать, по видимому, в {Tomcat}/WEB_APPS/ROOT/WEB-INF/web.xml). Как правильно задать там эти параметры?
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259273
Фотография Penkov Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Denis555
> Если можно, подробнее:
> В сервлете Query (его имя) мы считываем параметры инициализации
> из файла web.xml (который будет лежать, по видимому, в
> {Tomcat}/WEB_APPS/ROOT/WEB-INF/web.xml). Как правильно задать там
> эти параметры?Тема==Ответить




<servlet>
<servlet-name>muuuuuu</servlet-name>
<servlet-class>...</servlet-class>
<init-param>
<param-name>muuuuuuu</param-name>
<param-value>muuuuuuu</param-value>
</init-param>
</servlet>

тока причем тут параметры инициализации и базы данных?

-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33259307
Denis555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот мой сервлет, который очень хочет просмотреть некую базочку:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
import javax.servlet.http.*;
import javax.servlet.*;
import java.sql.*;
import java.io.*;


/**
 * Created by IntelliJ IDEA.
 * User: Администратор
 * Date: 07.09.2005
 * Time: 10:11:34
 * To change this template use File | Settings | File Templates.
 */
public class Query extends HttpServlet
{
    // Это общее JDBC-соединение с базой данных
    Connection connection;

    public void init() throws ServletException
    {
        // Считываем параметры инициализации из файла web.inf
        ServletConfig conf=getServletConfig();
        String driverClassName=conf.getInitParameter("driverClassName");
        String url=conf.getInitParameter("url");
        String username=conf.getInitParameter("username");
        String pasword=conf.getInitParameter("password");
        //Используем эти параметры для установки соединения с бд
        //При возникновении ошибки, записываем ее и повторно генерируем исключение
        try
        {
            Class.forName(driverClassName);
            connection=DriverManager.getConnection(url,username,pasword);
        }
        catch(Exception e)
        {
            log("Невозможно создать соединения с bd",e);
            throw new ServletException("Запрос невозможно инициализировать"+e.getMessage(),e);
        }
    }

    //Закрываем соединение с бд при выгрузке сервлета
    public void destroy()
    {
        try
        {
            connection.close();
        }
        catch(SQLException e)
        {
            //Игнорируем ошибки
        }
    }
    public void doGet(HttpServletRequest request, HttpServletResponse response)
     throws IOException, ServletException
    {
        //Выводим HTML
        response.setContentType("text/html");
        //Куда его выводить
        PrintWriter out=response.getWriter();
        //Выводим заголовок документа и форму для ввода SQL-запросов
        //Когда форма отсылается - сервлет загружается повторно
        out.println("<head><title>DB Query</title>\n<body bgColor=blue text=gray>" +
                "<form><b>Query: </b><input type=text name='q'><br><input type=submit></form></body>");
        //Смотрим, была ли указана SQL-команда в этом запросе
        String query=request.getParameter("q");
        if (query!=null)
        {
        //Если была, отображаем запрос в виде заголовка страницы
            out.println("<h1>"+query+"</h1>");
        //Теперь пытаемся выполнить запрос и отображаем результаты в виде таблицы
        //Объект для выполнения запроса
            Statement statement=null;
            try
            {
                statement=connection.createStatement();
        //Используем его для выполнения заданного запроса и получаем результат
                ResultSet result=statement.executeQuery(query);
        //Запрашиваем дополнительную информацию о результатах
                ResultSetMetaData metadata=result.getMetaData();
        //Сколько полей содержится в результатах
                int cols=metadata.getColumnCount();
        //Выводим таблицу, начиная со строки заголовка, содержащей имена полей
                out.println("<table border=2><tr>");
                for (int i=0; i<cols; i++)
                    out.print("<th>"+metadata.getColumnLabel(i+1)+"</ht>");
                out.println("</tr>");
        //Выполняем цикл по всем строкам итогового набора
                while (result.next())
                {
        //Выводим значения всех полей для каждой строки
                    out.println("<tr>");
                    for (int i=0; i<cols; i++)
                        out.print("<td>"+result.getObject(i+1)+"</td>");
                    out.println("</tr>");
                }
                out.println("</table>");
            }
            catch (SQLException e)
            {
        //Если возникает ошибка (как правило SQL-ошибка) - показываем ее, чтобы user мог ее испрвить
                out.println("Ошибка SQL: "+e.getMessage());
            }
        //Чтобы не произошло, всегда закрываем объект Statement
            finally
            {
                try
                {
                    statement.close();
                }
                catch(Exception e) {}
            }
        }
        out.println("</body>");
    }
}

Начальные параметры он читает из web.xml. Значит, там они должны быть заданы. Как это сделать и куда его кинуть, чтобы приложение могло узнать, какой JDBC драйвер использовать, с какой базочкой соединиться и т.д.
Код: plaintext
1.
                    
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33261142
Tomaso
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Server BD propisivajut v context.xml
...
Рейтинг: 0 / 0
JDBC+Tomcat+MySQL
    #33263114
botpride
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как раз по MySQL есть пример в факе Томката:
http://jakarta.apache.org/tomcat/tomcat-5.5-doc/jndi-datasource-examples-howto.html

Читать начиная отсюда: "MySQL DBCP Example"

Сам, честно скажу, не пробовал, т.к. с MySQL не связывался. Но и Оракловые и JDBC-to-ODBC соединения юзал - работают на ура.

Единственная тонкость - начиная с 5-го томката, лушче прописывать соединения не в общем server.xml, а в той xml-ке, которую ты создаешь для своей аппликухи в conf\catalina\localhost
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JDBC+Tomcat+MySQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]