-неизвестно

 -Поиск по дневнику

Поиск сообщений в ATUM

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 17.02.2006
Записей:
Комментариев:
Написано: 1139


java db connector

+ в цитатник

Cообщение скрыто для удобства комментирования.
Прочитать сообщение


ATUM   обратиться по имени Пятница, 23 Ноября 2012 г. 00:10 (ссылка)
Без web.xml

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ru.isalnikov;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;

/**
*
* @author User
*/
@WebServlet(name = "Authentication1", urlPatterns = {"/Authentication1"})
public class Authentication1 extends HttpServlet {

  private ServletConfig config;

  @Override
  public void init(ServletConfig config) throws ServletException {
    //super.init(config);
    this.config = config;
  }

  /**
   * Processes requests for both HTTP
   * <code>GET</code> and
   * <code>POST</code> methods.
   *
   * @param request servlet request
   * @param response servlet response
   * @throws ServletException if a servlet-specific error occurs
   * @throws IOException if an I/O error occurs
   */
  protected void processRequest(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

   
  response.setContentType("text/html;charset=UTF-8");
  PrintWriter out = response.getWriter();

 

  
  Connection connection = null;
  ResultSet rs = null;
  String userName = new String("");
  String passwrd = new String("");
  response.setContentType("text/html");

  try {
    
    Context initCtx = new InitialContext();
    Context envCtx = (Context) initCtx.lookup("java:comp/env");
    DataSource  datasource = (DataSource) envCtx.lookup("jdbc/mytest");
    
    
    /* TODO output your page here. You may use following sample code. */
    out.println("<html>");
    out.println("<head>");
    out.println("<title>Servlet Authentication</title>");
    out.println("</head>");
    out.println("<body>");
    out.println("<h1>Servlet Authentication at " + request.getContextPath() + "</h1>");

    Class.forName("org.apache.derby.jdbc.ClientDriver");
    // Получаем подключение к базе данных
    connection = datasource.getConnection();
    //Заносим данные в базу
    String sql = "select name,password from TUser";
    Statement s = connection.createStatement();
    s.executeQuery(sql);
    rs = s.getResultSet();
    while (rs.next()) {
      userName = rs.getString("name");
      passwrd = rs.getString("password");
      out.println(userName +" : " + passwrd +"<br>");
      
    }
    rs.close();
    s.close();
    out.println("</body>");
    out.println("</html>");

  } catch (ClassNotFoundException cnf) {
   out.println("1: "+cnf.getMessage());
  }
  
   catch (SQLException sqlex) {
   out.println("2: "+sqlex.getMessage());
   }
      catch (NamingException ex) {
      Logger.getLogger(Authentication1.class.getName()).log(Level.SEVERE, null, ex);
     }
 
  finally {
    out.close();
  }
}
    
 


  // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
  /**
   * Handles the HTTP
   * <code>GET</code> method.
   *
   * @param request servlet request
   * @param response servlet response
   * @throws ServletException if a servlet-specific error occurs
   * @throws IOException if an I/O error occurs
   */
  @Override
  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    processRequest(request, response);
  }

  /**
   * Handles the HTTP
   * <code>POST</code> method.
   *
   * @param request servlet request
   * @param response servlet response
   * @throws ServletException if a servlet-specific error occurs
   * @throws IOException if an I/O error occurs
   */
  @Override
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    processRequest(request, response);
  }

  /**
   * Returns a short description of the servlet.
   *
   * @return a String containing servlet description
   */
  @Override
  public String getServletInfo() {
    return "Short description";
  }// </editor-fold>
}

* This source code was highlighted with Source Code Highlighter.




<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/WenApp">
  
    <Resource auth="Container"
      driverClassName="org.apache.derby.jdbc.ClientDriver"
      maxActive="1"
      maxIdle="1"
      maxWait="1000" name="jdbc/mytest"
      type="javax.sql.DataSource"
      url="jdbc:derby://localhost:1527/MyTest"
      username="app"
      password="app"/>
</Context>


* This source code was highlighted with Source Code Highlighter.
Ответить С цитатой В цитатник
ATUM   обратиться по имени Пятница, 23 Ноября 2012 г. 00:14 (ссылка)
http://www.javatalks.ru/sutra30076.php#30076

Соединение здесь создается в строке con = DriverManager.getConnection(url, name, password). Класс DriverManager заведует драйверами, соединениями, а также трассировкой. В данном случае мы вызвали статический метод getConnection(). Этот метод просматривает список драйверов и, если находит подходящий к указанному URL, то создает и возвращает соединение. В противном случае выбрасывает исключение с текстом: "No suitable driver found". В качестве аргументов данный метод принимает URL к базе, имя и пароль пользователя. По умолчанию для MySQL имя - root, пароль - пустая строка. Существуют также перегруженные версии этого метода, при желании можете на них взглянуть поближе, но нам они пока не понадобятся.
- URL к базе состоит из протокола:подпротокола://других_сведений. Также может потребоваться установить дополнительные параметры, например, сетевым драйверам нужен номер порта, а драйверам ODBC могут потребоваться различные атрибуты. Вобщем, в JDBC используется синтаксис описания источника данных, подобный обычным URL.
протокол - jdbc, указывает, что в данном случае мы используем JDBC;
подпротокол - зависит от выбранного нами сервера БД, необходим для определения JDBC драйвера;
другие_сведенья - формат представления зависит от используемого протокола, в данном случае это адрес базы данных, т.к. она находится на нашем компьютере в host мы указываем адрес - localhost или 127.0.0.1, и название базы - mysql.
Теперь запустим наш пример. Если в результате вывело:
Ответить С цитатой В цитатник
Ответить С цитатой В цитатник
ATUM   обратиться по имени http://forum.vingrad.ru/forum/topic-85687/0.html Пятница, 23 Ноября 2012 г. 00:24 (ссылка)
http://forum.vingrad.ru/forum/topic-85687/0.html

А есть ли такие рецепты только для Tomcat ?

http://tomcat.apache.org/tomcat-5.0-doc/jndi-datasource-examples-howto.html



Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/DefaultDS");
Connection conn = ds.getConnection();
Ответить С цитатой В цитатник
ATUM   обратиться по имени Пятница, 23 Ноября 2012 г. 00:26 (ссылка)
datasource = (DataSource) new InitialContext().lookup("java:comp/env/jdbc/oracle");
Ответить С цитатой В цитатник
ATUM   обратиться по имени Пятница, 23 Ноября 2012 г. 00:29 (ссылка)
Ответить С цитатой В цитатник
ATUM   обратиться по имени Пятница, 23 Ноября 2012 г. 00:36 (ссылка)
Ответить С цитатой В цитатник
ATUM   обратиться по имени Configuring a MySQL Datasource in Apache Tomcat Пятница, 23 Ноября 2012 г. 00:36 (ссылка)
Ответить С цитатой В цитатник
ATUM   обратиться по имени pool Пятница, 23 Ноября 2012 г. 00:37 (ссылка)
Ответить С цитатой В цитатник
ATUM   обратиться по имени Database Connection Pool Пятница, 23 Ноября 2012 г. 00:38 (ссылка)
Ответить С цитатой В цитатник
ATUM   обратиться по имени http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html Пятница, 23 Ноября 2012 г. 00:39 (ссылка)
Ответить С цитатой В цитатник
ATUM   обратиться по имени http://programador.ru/tomcat-jdbc-pool/ Пятница, 23 Ноября 2012 г. 00:42 (ссылка)
Ответить С цитатой В цитатник
Комментировать К дневнику Страницы: [1] [Новые]
 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку