Atenção: por essa edição ser muito antiga não há arquivo PDF para download.Os artigos dessa edição estão disponíveis somente através do formato HTML.
Struts Vai às Compras
Um fundamento do e
Implemente um carrinho de compras e uma listagem simples de produtos, utilizando sessões, taglibs do Struts e o MySQL
Muitas vezes, ao desenvolvermos uma aplicação web, precisamos guardar informações de usuários entre solicitações, tornando possível recuperá
Principais componentes
Começaremos descrevendo as partes principais do exemplo. O catálogo exibe os produtos disponíveis e inclui informações como preço, descrição e uma imagem ilustrativa. No exemplo, vamos utilizar um conjunto de produtos obtidos diretamente de uma base de dados previamente criada. As informações textuais dos produtos são obtidas do banco de dados, e as imagens, de um repositório no servidor (apenas os links para as imagens serão armazenados). A única operação que pode ser executada no catálogo é a inserção de um produto no carrinho.
Nota: Para garantir a escalabilidade e a organização da aplicação, o catálogo poderia ser subdividido em categorias, o que simplificaria a localização e a exibição de produtos. Além disso, a listagem poderia ser paginada para limitar a quantidade de itens mostrados por vez. Porém, como o catálogo não é o foco deste artigo, mas sim o carrinho de compras, tais considerações não serão levadas em conta na implementação.
O carrinho de compras contém a identificação dos produtos inseridos, suas quantidades e imagem, ou seja, apenas os atributos necessários para a exibição. As operações possíveis no carrinho são: remover um produto, atualizar uma quantidade e limpar o carrinho. No carrinho é exibido o subtotal da compra, mas omitimos dados como valores de frete e de desconto etc., por simplicidade.
O fluxo da aplicação é detalhado na Figura 1.
Arquitetura Básica
Além de auxiliar no controle de fluxo das telas, o uso do Struts permite uma boa separação entre a lógica de negócio e o código de apresentação. Baseando
Modelo
No exemplo, vamos utilizar o MySQL (mas poderíamos usar qualquer banco de dados com um driver JDBC 2.0). Para criar e popular a base utilizamos o script da Listagem 1, que pode ser executado diretamente no prompt do MySQL (
Os produtos foram modelados pela classe Produto, com atributos produtoId, nome, descrição, imagem e preço, além dos métodos get/set correspondentes. Produtos inseridos no carrinho são representados por objetos "
[...] continue lendo...