Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 496f186

Browse files
Aula 04 - Arquivos finais - Listando os produtos
1 parent ed29b40 commit 496f186

File tree

5 files changed

+65
-11
lines changed

5 files changed

+65
-11
lines changed

‎casadocodigo/src/main/java/br/com/casadocodigo/loja/conf/JPAConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
2626

2727
DriverManagerDataSource dataSource = new DriverManagerDataSource();
2828
dataSource.setUsername("postgres");
29-
dataSource.setPassword("B*******7"); //configurar a senha
29+
dataSource.setPassword("Bimorethi27"); //configurar a senha
3030
dataSource.setUrl("jdbc:postgresql://localhost:5432/casadocodigo");
3131
dataSource.setDriverClassName("org.postgresql.Driver");
3232

‎casadocodigo/src/main/java/br/com/casadocodigo/loja/conf/ServletSpringMVC.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package br.com.casadocodigo.loja.conf;
22

3+
import javax.servlet.Filter;
4+
5+
import org.springframework.web.filter.CharacterEncodingFilter;
36
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
47

58
public class ServletSpringMVC extends AbstractAnnotationConfigDispatcherServletInitializer {
@@ -18,5 +21,12 @@ protected Class<?>[] getServletConfigClasses() {
1821
protected String[] getServletMappings() {
1922
return new String[] { "/" };
2023
}
24+
25+
@Override
26+
protected Filter[] getServletFilters() {
27+
CharacterEncodingFilter encodingFilter = new CharacterEncodingFilter();
28+
encodingFilter.setEncoding("UTF-8");
29+
return new Filter[] {encodingFilter};
30+
}
2131

2232
}
Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,45 @@
11
package br.com.casadocodigo.loja.controllers;
22

3+
import java.util.List;
4+
35
import org.springframework.beans.factory.annotation.Autowired;
46
import org.springframework.stereotype.Controller;
57
import org.springframework.web.bind.annotation.RequestMapping;
8+
import org.springframework.web.bind.annotation.RequestMethod;
69
import org.springframework.web.servlet.ModelAndView;
710

811
import br.com.casadocodigo.loja.daos.ProdutoDAO;
912
import br.com.casadocodigo.loja.models.Produto;
1013
import br.com.casadocodigo.loja.models.TipoPreco;
1114

1215
@Controller
16+
@RequestMapping("produtos")
1317
public class ProdutosController {
14-
18+
1519
@Autowired
1620
private ProdutoDAO produtoDAO;
17-
18-
19-
@RequestMapping("/produtos/form")
21+
22+
@RequestMapping("/form")
2023
public ModelAndView form() {
2124
ModelAndView modelAndView = new ModelAndView("produtos/form");
22-
modelAndView.addObject("tipos",TipoPreco.values());
23-
25+
modelAndView.addObject("tipos",TipoPreco.values());
26+
2427
return modelAndView;
2528
}
26-
27-
@RequestMapping("/produtos")
28-
public String grava(Produto produto) {
29+
30+
@RequestMapping(method=RequestMethod.POST)
31+
public String gravar(Produto produto) {
2932
System.out.println(produto);
3033
produtoDAO.gravar(produto);
31-
3234
return "produtos/ok";
3335
}
3436

37+
@RequestMapping(method=RequestMethod.GET)
38+
public ModelAndView listar() {
39+
List<Produto> produtos = produtoDAO.listar();
40+
ModelAndView modelAndView = new ModelAndView("/produtos/lista");
41+
modelAndView.addObject("produtos", produtos);
42+
return modelAndView;
43+
}
44+
3545
}

‎casadocodigo/src/main/java/br/com/casadocodigo/loja/daos/ProdutoDAO.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package br.com.casadocodigo.loja.daos;
22

3+
import java.util.List;
4+
35
import javax.persistence.EntityManager;
46
import javax.persistence.PersistenceContext;
57

@@ -19,4 +21,8 @@ public class ProdutoDAO {
1921
public void gravar(Produto produto){
2022
manager.persist(produto);
2123
}
24+
25+
public List<Produto> listar(){
26+
return manager.createQuery("select p from Produto p", Produto.class).getResultList();
27+
}
2228
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<%@ page language="java" contentType="text/html; charset=UTF-8"
2+
pageEncoding="UTF-8"%>
3+
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
4+
<!DOCTYPE html>
5+
<html>
6+
<head>
7+
<meta charset="UTF-8">
8+
<title>Livro de Java, Android, iPhone, Ruby, PHP e muito mais -
9+
Casa do Código</title>
10+
</head>
11+
<body>
12+
<h1>Lista de Produtos</h1>
13+
<table>
14+
<tr>
15+
<td>Título</td>
16+
<td>Descrição</td>
17+
<td>Páginas</td>
18+
</tr>
19+
<c:forEach items="${produtos}" var="produto">
20+
<tr>
21+
<td>${produto.titulo }</td>
22+
<td>${produto.descricao }</td>
23+
<td>${produto.paginas }</td>
24+
</tr>
25+
</c:forEach>
26+
</table>
27+
</body>
28+
</html>

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /