Tomcat - TOMCAT + MYSQL "SERVLET"

 
Vista:

TOMCAT + MYSQL "SERVLET"

Publicado por ANDRES VALDIVIA (1 intervención) el 08/07/2007 06:41:01
HOLA:
NECESITO SI ALGUIEN FUERA TAN AMABLE DE AYUDARME.
NECESITO HACER UN SERVLET (CUALQUIERA) QUE SE CONECTE A UNA BASE DE DATOS.
MI PROBLEMA ES QUE NO ENTIENDO MUCHO COMO FUNCINA EL TOMCAT. SE QUE TIENE UN DIRECTORIA RAIZ, EL CUAL EN UNA CARPETA QUE SE LLAMA WEBAPP HAY QUE CREAR UNA NUEVA, QUE DEBE TENER OTRA QUE SE LLAMA WEB-INF, TODO ESO ME CONFUNDE. APARTE QUE MI CONOCIMENTO NO ES MUCHO
AGRADECERIA SI ALGUIEN SE PUDIERA CONTACTAR CONMIGO

GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:TOMCAT + MYSQL

Publicado por Roberto Murer (2 intervenciones) el 30/08/2007 06:19:59
1ro. Tenés que instalar Tomcat, descomprimi la carpeta en el C:\ si estás en windows, y te queda así:
C:\apache-tomcat-5.5.23

Iniciás tomcat con el bin/startup.bat

Creás una nueva carpeta ej "test":

C:\apache-tomcat-5.5.23\webapps\testWEB-INF\classes

Dentro de classes van los Servlets

para que te levanten, tenés que agregarlos en el archivo web.xml de la carpeta WEB-INF, así, ej. creaste un servlet llamado MysqlConnect.java, en el xml ponés esto:

/************************ INICIO web.xml **********************/

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">

<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>

<!-- JSPC servlet mappings start -->

<servlet-mapping>
<servlet-name>MysqlConnection</servlet-name>
<url-pattern>/servlet/MysqlConnection</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>MysqlConnection</servlet-name>
<url-pattern>/servlet/MysqlConnection</url-pattern>
</servlet-mapping>


<!-- JSPC servlet mappings end -->

</web-app>

/************************ FIN web.xml **********************/

Creás el archivo MysqlConnection.java en la carpeta C:\apache-tomcat-5.5.23\webapps\testWEB-INF\classes

y lo compilás (El código del archivo para conectarte a mysql te lo pego al final)

Luego de compilar el .java, te queda un .class, podés borrar el .java si querés, y luego de eso, reiniciás el Tomcat Server, y entrás a:

http://localhost:8000/test/servlet/MysqlConnect

y ya estás ejecutando el Servlet

A mi de este modo me funcionó. Te dejo a continuación el código para el archivo MysqlConnect.java (Eso si, cambiale los datos de Base de datos, y user y passwd):


/********************* INICIO MysqlConnect.java **************/

import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;

public class MysqlConnect extends HttpServlet {

//***** Servlet access to data base

public void doGet (HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{

String url = "jdbc:mysql://localhost/test";

String query = "SELECT * FROM test "
+ "WHERE 1 = 1";

try {

Class.forName ("com.mysql.jdbc.Driver");
//Class.forName("org.gjt.mm.mysql.Driver");

Connection con = DriverManager.getConnection
( url, "mysql_user_name", "mysql_password" );

Statement stmt = con.createStatement ();

ResultSet rs = stmt.executeQuery (query);

printResultSet ( resp, rs );

rs.close();
stmt.close();
con.close();

} // end try

catch (SQLException ex) {

PrintWriter out = resp.getWriter();
resp.setContentType("text/html");

while (ex != null) {
out.println ("SQL Exception: " + ex.getMessage ());
ex = ex.getNextException ();
} // end while

} // end catch SQLException

catch (java.lang.Exception ex) {

PrintWriter out = resp.getWriter();
resp.setContentType("text/html");
out.println ("Exception: " + ex.getMessage ());
}

} // end doGet

private void printResultSet ( HttpServletResponse resp, ResultSet rs )
throws SQLException {

try {

PrintWriter out = resp.getWriter();

out.println("<html>");
out.println("<head><title>jbs jdbc/mysql servlet</title></head>");
out.println("<body>");
out.println("<center><font color=AA0000>");
out.println("<h3>jbsJDBCServlet</h3>");
out.println("<h3>Data Retrieved:</h3>");

out.println("<table border='1'>");

int numCols = rs.getMetaData().getColumnCount ();
while ( rs.next() ) {
out.println("<tr>");
for (int i=1; i<=numCols; i++) {
out.print("<td>" + rs.getString(i) + "</td>" );
} // end for
out.println("</tr>");
} // end while

out.println("</table>");

out.println("</font></center>");
out.println("</body>");
out.println("</html>");
out.close();

} // end try
catch ( IOException except) {
} // end catch

} // end returnHTML

} // end jbsJDBCServlet

/********************* FIN MysqlConnect.java **************/

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:TOMCAT + MYSQL

Publicado por yisusl (1 intervención) el 11/09/2007 02:11:21
una pregunta como ve el funcionamiento desde otra pc, es decir los datos se tienen q guardar en la mi cierto ?.
me refiero al conectarte con http://localhost:8000/test/servlet/MysqlConnect ,esto es solo para la pc servidor, gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

tofojjj

Publicado por sam (1 intervención) el 20/01/2010 07:19:36
hhjgyughjfcvgbhjkkm,
ggvghugvhbjk
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar