Java/Servlets/WebLogic

Материал из Java эксперт
Перейти к: навигация, поиск

Weblogic database Servlet

   <source lang="java">

import java.sql.Connection; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import java.util.Hashtable; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.sql.DataSource; public class WeblogicDbServlet extends HttpServlet {

 DataSource pool;
 public void init() throws ServletException {
   Context env = null;
   Hashtable ht = new Hashtable();
   ht.put(Context.INITIAL_CONTEXT_FACTORY,
       "weblogic.jndi.WLInitialContextFactory");
   //ht.put(Context.PROVIDER_URL,"t3://localhost:7001");
   try {
     env = new InitialContext(ht);
     pool = (javax.sql.DataSource) env.lookup("oracle-8i-athletes");
     if (pool == null)
       throw new ServletException(
           ""oracle-8i-athletes" is an unknown DataSource");
   } catch (NamingException ne) {
     throw new ServletException(ne);
   }
 }
 public void doGet(HttpServletRequest request, HttpServletResponse response)
     throws ServletException, java.io.IOException {
   String sql = "select * from athlete";
   Connection conn = null;
   Statement stmt = null;
   ResultSet rs = null;
   ResultSetMetaData rsm = null;
   response.setContentType("text/html");
   java.io.PrintWriter out = response.getWriter();
   out
       .println("<html><head><title>Weblogic Database Access</title></head><body>");
out.println("

Database info

"); out.println(""); try { conn = pool.getConnection(); stmt = conn.createStatement(); rs = stmt.executeQuery(sql); rsm = rs.getMetaData(); int colCount = rsm.getColumnCount(); //print column names for (int i = 1; i <= colCount; ++i) { out.println("");
     }
out.println(""); while (rs.next()) { out.println(""); for (int i = 1; i <= colCount; ++i) out.println(""); out.println(""); } } catch (Exception e) { throw new ServletException(e.getMessage()); } finally { try { stmt.close(); conn.close(); } catch (SQLException sqle) { } } out.println("
" + rsm.getColumnName(i) + "
" + rs.getString(i) + "
</body></html>");
   out.close();
 } //doGet

}


      </source>