| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/12/2011 22:07:54
|
newuser
JavaBaby
![[Avatar]](/images/avatar/050b56826a32ad4d14af9c8a5ca71b4f.png)
Membro desde: 12/12/2011 21:36:23
Mensagens: 76
Localização: Anápolis GO
Offline
|
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<Produto> 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"/>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel=stylesheet href="paginas.css" type="text/css">
<link rel=stylesheet href="listagem.css" type="text/css">
<title>Listar Produtos</title>
</head>
<body>
<div id="geral">
<div id="banner"></div>
<div id="menu"><%@ include file="/menu.jsp" %></div>
<div id="conteudocorpo">
<h3 class="htres">Lista de Produtos</h3>
<form name="frmProduto" method="post">
<div id="resultado">
<table class="titulo">
<tr>
<td class="cel">Código</td>
<td class="cel">Descrição</td>
<td class="cel">Embalagem</td>
<td class="cel">Código de Barras</td>
<td class="cel">Categoria</td>
<td class="cel">Data Cadastro</td>
<td class="cel">Unidade</td>
<td class="cel">Fornecedor</td>
<td class="cel">Data Exclusão</td>
<td class="cel">Preço de Compra</td>
<td class="cel">Preço de Venda</td>
<td class="cel">Excluir</td>
</tr>
<c:forEach items="${listaProduto}" var="lista">
<tr>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.codProduto}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.descricao}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.embalagem}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.codigoBarra}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.categoria}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.dataCadastro}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.unidade}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarCliente&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.fornecedor}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codCliente=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.dataExclusao}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.precoCompra}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=AlterarProduto&codProduto=<c:out value="${lista.codProduto}"></c:out>">
<c:out value="${lista.precoVenda}"></c:out></a></td>
<td class="cel"><a href="ServletProduto?acao=ExcluirProduto&cod=<c:out value="${lista.codProduto}"></c:out>">X</a></td>
</tr>
</c:forEach>
</table>
</div>
</form>
</div>
<div id="rodape">
<p>Sistema JavaWeB desenvolvido por Walgnei Luiz Cardoso 2011. © Todos os direitos reservados.</p>
</div>
</div>
</body>
</html>
${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.
This message was edited 1 time. Last update was at 12/12/2011 22:44:01
|
user = new User(); |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/12/2011 22:40:22
|
dreampeppers99
Virtual Machine Man
![[Avatar]](/images/avatar/6fb993285d56e6927284ff9b11ac6851.jpg)
Membro desde: 29/08/2006 21:50:17
Mensagens: 523
Offline
|
Duas dicas, use a tag CODE para códigos (jsp, java, javascript, qualquer coisa) e poste sua dúvida, você disse que o problema está na JSP mas não disse qual o problema ou exceção, fica dificil de quem quer te ajudar ler tudo e interpretar. Tente focar, tanto o código quanto sua dúvida, e reduza a quantidade de código ou jsp, mostrando só onde há o erro.
|
- Não respondo dúvida por PM!
- Blog -> Software development - Clojure, Ruby, Java, Test and little pumpkins
- Blog - Desenvolvimento de software - Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/12/2011 13:19:08
|
newuser
JavaBaby
![[Avatar]](/images/avatar/050b56826a32ad4d14af9c8a5ca71b4f.png)
Membro desde: 12/12/2011 21:36:23
Mensagens: 76
Localização: Anápolis GO
Offline
|
Desculpe, por não ser tão claro e postar este tanto de código, é que eu queria mostrar tudo para análise. Mas a questão é a seguinte, eu faço páginas em php e agora com POO em java eu estou meio perdido onde colocar tal código.
Eu criei a seguinte tabela no postgresql.
Eu listei esta tabela da seguinte forma pelo Dao:
E no JSP eu fiz o seguinte:
A questão é que eu quero mostrar o nome e não o código da categoria e do fornecedor. Em PHP eu faço isso tranquilo mas em java eu não sei o modo de fazer e nem de chamar o método.
Obrigado pela atenção.
|
user = new User(); |
|
|
 |
|
|
|
|