Desculpe a ignorância quanto a este assunto mas é que estou estudando javaweb e nunca tinha programado orientado a objeto e estou com uma dificuldade boba mas que me travou.
É o seguinte:
Tenho a classe bean Produto:
import java.sql.Date;
public class Produto {
private Integer codProduto;
private String descricao;
private String embalagem;
private Integer categoria;
private Integer codigoBarra;
private Date dataCadastro;
private String unidade;
private Integer fornecedor;
private Date dataExclusao;
private Double precoCompra;
private Double precoVenda;
public Integer getCodProduto() {
return codProduto;
}
public void setCodProduto(Integer codProduto) {
this.codProduto = codProduto;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public String getEmbalagem() {
return embalagem;
}
public void setEmbalagem(String embalagem) {
this.embalagem = embalagem;
}
public Integer getCategoria() {
return categoria;
}
public void setCategoria(Integer categoria) {
this.categoria = categoria;
}
public Integer getCodigoBarra() {
return codigoBarra;
}
public void setCodigoBarra(Integer codigoBarra) {
this.codigoBarra = codigoBarra;
}
public Date getDataCadastro() {
return dataCadastro;
}
public void setDataCadastro(Date dataCadastro) {
this.dataCadastro = dataCadastro;
}
public String getUnidade() {
return unidade;
}
public void setUnidade(String unidade) {
this.unidade = unidade;
}
public Integer getFornecedor() {
return fornecedor;
}
public void setFornecedor(Integer fornecedor) {
this.fornecedor = fornecedor;
}
public Date getDataExclusao() {
return dataExclusao;
}
public void setDataExclusao(Date dataExclusao) {
this.dataExclusao = dataExclusao;
}
public Double getPrecoCompra() {
return precoCompra;
}
public void setPrecoCompra(Double precoCompra) {
this.precoCompra = precoCompra;
}
public Double getPrecoVenda() {
return precoVenda;
}
public void setPrecoVenda(Double precoVenda) {
this.precoVenda = precoVenda;
}
}
O método listar dentro do ProdutoDao:
package aplic.controle.model.dao;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import aplic.controle.model.util.Conexao;
import aplic.controle.model.vo.Produto;
public class ProdutoDao {
static Connection conexao;
public ProdutoDao(){
conexao = Conexao.conectar();
}
public static ArrayList<Produto> listar(){
try {
conexao = Conexao.conectar();
ArrayList<Produto> lista = null;
String sql="SELECT \"CODPROD\",\"DESCRICAO\",\"EMBALAGEM\",\"CODIGOBARRA\",\"CODCATEG\"," +
"\"DTCADASTRO\",\"UNIDADE\",\"CODFORNEC\",\"DTEXCLUSAO\",\"PCOMPRA\",\"PVENDA\" " +
"from produto ";
PreparedStatement consulta = conexao.prepareStatement(sql);
ResultSet resultado = consulta.executeQuery();
lista = new ArrayList<Produto>();
while(resultado.next()){
Produto produto = new Produto();
produto.setCodProduto(resultado.getInt("CODPROD"));
produto.setDescricao(resultado.getString("DESCRICAO"));
produto.setEmbalagem(resultado.getString("EMBALAGEM"));
produto.setCodigoBarra(resultado.getInt("CODIGOBARRA"));
produto.setCategoria(resultado.getInt("CODCATEG"));
produto.setDataCadastro(resultado.getDate("DTCADASTRO"));
produto.setUnidade(resultado.getString("UNIDADE"));
produto.setFornecedor(resultado.getInt("CODFORNEC"));
produto.setDataExclusao(resultado.getDate("DTEXCLUSAO"));
produto.setPrecoCompra(resultado.getDouble("PCOMPRA"));
produto.setPrecoVenda(resultado.getDouble("PVENDA"));
lista.add(produto);
}
return lista;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
A classe de service ListarProduto:
package aplic.controle.controller.service;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import aplic.controle.model.dao.ProdutoDao;
import aplic.controle.model.vo.Produto;
public class ListarProduto {
public static String execute(HttpServletRequest request){
String jsp = “”;
try {
ArrayList listaProduto = ProdutoDao.listar();
if(listaProduto != null){
request.setAttribute(“listaProduto”, listaProduto);
jsp="/listarproduto.jsp";
}else{
String erro = “Não existe registro!”;
request.setAttribute(“erro”, erro);
jsp="/erro.jsp";
}
} catch (Exception e) {
e.printStackTrace();
jsp ="";
}
return jsp;
}
}
A classe bean Categoria:
package aplic.controle.model.vo;
public class Categoria {
private Integer codCateg;
private String Categoria;
public Integer getCodCateg() {
return codCateg;
}
public void setCodCateg(Integer codCateg) {
this.codCateg = codCateg;
}
public String getCategoria() {
return Categoria;
}
public void setCategoria(String categoria) {
Categoria = categoria;
}
}
A CategoriaDao:
package aplic.controle.model.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import aplic.controle.model.util.Conexao;
import aplic.controle.model.vo.Categoria;
public class CategoriaDao {
static Connection conexao;
public static ArrayList<Categoria> listarCategoria(){
try {
conexao = Conexao.conectar();
ArrayList<Categoria> lista = null;
String sql="SELECT * From categorias order by \"CATEGORIA\" ";
PreparedStatement consulta = conexao.prepareStatement(sql);
ResultSet resultado = consulta.executeQuery();
lista = new ArrayList<Categoria>();
while(resultado.next()){
Categoria categoria = new Categoria();
categoria.setCodCateg(resultado.getInt("CODCATEG"));
categoria.setCategoria(resultado.getString("CATEGORIA"));
lista.add(categoria);
}
return lista;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
O Problema está em listarproduto.jsp abaixo:
<%@ page language=“java” contentType=“text/html; charset=UTF-8” pageEncoding=“UTF-8”%>
<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c”%>
<%@page import=“aplic.controle.model.dao.CategoriaDao”%>
<jsp:useBean id=“produto” scope=“session” class= “aplic.controle.model.vo.Produto” />
<jsp:useBean id=“categoria” scope=“session” class= “aplic.controle.model.vo.Categoria” />
<jsp:useBean id=“categoriadao” scope=“session” class= “aplic.controle.model.dao.CategoriaDao” />
<jsp:useBean id=“listaProduto” scope=“request” class=“java.util.ArrayList”/>
Lista de Produtos
Sistema JavaWeB desenvolvido por Walgnei Luiz Cardoso 2011. © Todos os direitos reservados.
${lista.categoria} é o codigo da categoria na classe Produto e não o nome da categoria da classe Categoria que é o que eu desejo mostrar.