Artigo Java Magazine 05 - Criando um fórum com JSP

Artigo publicado pela Java Magazine 05.

Esse artigo faz parte da revista Java Magazine edição 05. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler esse artigo em PDF.

Criando um fórum com JSP

Mais JSP e JSTL com acesso a dados

Na Edição 4, iniciamos um portal com a construção de um mural, para a postagem de mensagens sobre notícias ou eventos. Neste artigo, vamos nos dedicar à criação de um fórum onde os usuários podem deixar dúvidas para serem respondidas pelos participantes.

Recapitulando

No primeiro artigo instalamos o Tomcat e o banco MySQL. Além disso, criamos a estrutura de diretórios para o nosso portal iniciada em c:\portal, com os seguintes subdiretórios:

 

 

(Você pode fazer o download da primeira parte do portal no site da Java Magazine, ou baixar um pacote completo com as duas partes.)

Para o fórum, vamos criar mais duas pastas, uma chamada forum, para conter os arquivos da nova aplicação do portal, e outra chamada bPortal que abrigará alguns JavaBeans.

Utilizaremos algumas das pastas criadas no primeiro artigo, como a pasta cmpl, que guarda as páginas cabec.jsp e frcAtual.jsp. A primeira é o cabeçalho usado para todas as páginas; a segunda garante a atualização da página no navegador web, para que o usuário não veja uma versão antiga armazenada em cache.

A pasta conecta contém a página varglobal.jsp, que possui o contexto para o acesso ao banco de dados, além de acesso.jsp, que faz a conexão ao banco. Assim o portal pode ser utilizado em outra configuração de servidor (possivelmente utilizando outro banco de dados) apenas com a modificação do arquivo varglobal.jsp.

Por último, a pasta WEB-INF contém o arquivo web.xml, o arquivo de configuração da aplicação e as pastas classes e lib. Nesta última, temos o arquivo dbtags.tld, que permite o acesso aos tags da biblioteca dbtags.jar. Esta biblioteca, por sua vez, pode ser inserida na pasta lib da instalação do Tomcat ou no diretório WEB-INF/lib de nossa aplicação.

Nova tabela

Vamos utilizar um script SQL para a criação de uma tabela para armazenar as perguntas do fórum. Crie um arquivo texto com o seguinte código e salve-o como preparaForum.sql no diretório \portal:

 

use portal;

 

create table tabForum (

 idtForum int not null AUTO_INCREMENT,

 idtForumPai int not null,

 nomUsuario varchar(60),

 desForum text,

 primary key(idtForum)

);

 

Para executar o script, abra uma janela DOS (prompt de comando), mude para o diretório c:\mysql\bin e digite mysql. Isso ativa o prompt do MySQL, para a execução interativa de comandos SQL. Digite o seguinte comando:

 

\. c:\portal\preparaForum.sql

Você pode alterar o script para inicialmente inserir quantos registros desejar (ou digitar comandos insert diretamente no prompt do utilitário mysql). Para sair do ambiente, digite exit;.

Os dois campos que devem ser observados na nova tabela são idtForum, que contém o identificador único de uma mensagem postada, e idtForumPai, que informa se, na hierarquia de mensagens, a mensagem possui ou não um pai (por padrão, uma mensagem com idtForumPai contendo o valor 0 não possui pai, sendo portanto a raiz de uma árvore de mensagens)." [...] continue lendo...

Artigos relacionados