Como fazer um pool connection usando struts2 / Aplicação cadastro?

3 respostas
mcereja

Saudações amigos !!!

trabalho com JAVA já a algum tempo mas para aplicações locais, agora tenho que ampliar o pouco conhecimento que tenho para fazer aplicações WEB por exigência do mercado profissional, lendo alguns artigos parece que a struts2 é uma boa opção.
Por isso, procuro a algumas semanas sem sucesso um tutorial, do tipo passo-a-passo, que exemplifique como fazer um pool connection usando a struts2 - na realidade eu preciso fazer uma simples aplicação de cadastro de usuários(Inclusão/Consulta). Já segui todos os tutoriais do site http://struts.apache.org/2.x/docs/bootstrap.html - e consegui entender e rodá-los normalmente; ainda está em construção o http://struts.apache.org/2.x/docs/learn-struts-2-by-example.html mas não existe previsão e preciso aprender isso logo.

Confesso que li alguns artigos aqui no GUJ mas fiquei assustado por serem muito avançado, não estou ainda nesse nível, portanto, se algum amigo iluminado com maior conhecimento puder me ajudar com uma explanação simples mas funcional, ficarei profundamente grato !!!

boa sorte nos trabalhos …

3 Respostas

fabiozoroastro

Eu sou o iluminado. rs…
Dê uma olhada neste tutorial. Ele mostra como fazer um hello world utilizando webwork(Que é praticamente, se não, a mesma coisa que o struts2).

Abraço.

W

Vamos lá.:
Struts University ==> MailReader Training Course .:
http://opensource.atlassian.com/confluence/oss/display/STRUTS/MailReader+Training+Course
Livro em PDF.
http://code.google.com/p/sq1-struts2/

Starting Struts 2 - è preciso cadastrar e-mail.:

Tutorials .:
http://struts.apache.org/2.x/docs/tutorials.html

que exemplifique como fazer um pool connection usando a struts2
Quem vai gerenciar isso é o teu Web Container como ex. o Tomcat.
http://www.onjava.com/pub/a/onjava/2006/04/19/database-connection-pooling-with-tomcat.html?page=1
http://www.guj.com.br/posts/list/18429.java
http://www.crazysquirrel.com/computing/java/connection-pooling.jspx
http://www.hibernate.org/hib_docs/reference/en/html/quickstart.html

Database Connection Pool (DBCP) Configurations .:
http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html#Database%20Connection%20Pool%20(DBCP)%20Configurations

Ufa acho que dá para começar né…
sds

mcereja

Obrigado pelas dicas meus amigos, já segui todos esses tutoriais e me ajudaram muito a fixar conhecimentos nessa tecnologia. Postei os exemplos funcionando em minha page http://lanmaster.sites.uol.com.br .
Infelizmente todos esses materiais que passaram, não abordam por exemplo, como obter a conexão do pool / usá-la e devolvê-la, por isso estou deixando aqui também o caminho que estou seguindo:

No server.xml referente a minha aplicação no tomcat +/- assim, essas entradas devem ser adicionadas antes da tag de finalização e alterada conforme:

obs. obviamente a vc que está fazendo sua própria conexão, utilize esse exemplo e altere de acordo com suas especificações.

E na aplicação JAVA +/- isso:

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.LinkedList;
import javax.naming.InitialContext;

import javax.naming.NamingException;

import javax.sql.DataSource;

public class AdminUsers {

protected static DataSource dataSource;

public AdminUsers() throws Exception {
    if (dataSource == null) {
        try {
            InitialContext ic = new InitialContext();
            // se for tomcat
            dataSource = (DataSource) ic.lookup("java:jdbc/StrutsDemoDS");

        } catch (NamingException ex) {
            System.out.println(ex.getMessage());
            throw ex;
        }
    }
}

protected Connection getConnection() throws SQLException {
    Connection conn = null;
    try {
        conn = dataSource.getConnection();
    }
    catch (SQLException e) {
        throw e;
    }
    return conn;
}


protected void closeConnection(
    Connection conn,
    PreparedStatement stmt,
    ResultSet rs) {
    if (rs != null) {
        try {
            rs.close();
        } catch (SQLException e) {
        }
    }
    if (stmt != null) {
        try {
            stmt.close();
        } catch (SQLException e) {
        }
    }
    if (conn != null) {
        try {
            conn.close();
        } catch (SQLException e) {
        }
    }
}

====================================

Agora a nova pergunta que deixo aos meus amigos é:

será que estou no caminho correto ? se conhecerem outra forma ou exemplos mais claros por favor, não deixem de postar-me aqui…

FELICITAÇÕES A TODOS E MUITO BOA SORTE NOS TRABALHOS…

Criado 13 de junho de 2007
Ultima resposta 18 de jun. de 2007
Respostas 3
Participantes 3