├── Modulo07 ├── JPA │ ├── db │ │ ├── PostgreSQL │ │ │ └── create.sql │ │ ├── MySQL │ │ │ └── create.sql │ │ └── Derby │ │ │ └── create.sql │ └── src │ │ ├── main │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── dao │ │ │ ├── GenericDAO.java │ │ │ └── ProfessorDAO.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── AppTest.java ├── Modulo07.pdf ├── LivrariaJPA │ └── src │ │ ├── test │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── LivrariaJpaApplicationTests.java │ │ └── main │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── dao │ │ └── ILivroDAO.java ├── SpringDataJPA │ └── src │ │ ├── test │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── SpringData │ │ │ └── SpringDataJpaApplicationTests.java │ │ └── main │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── dao │ │ ├── IProfessorDAO.java │ │ ├── IPessoaDAO.java │ │ ├── IDisciplinaDAO.java │ │ └── IDepartamentoDAO.java └── README.md ├── .gitignore ├── Modulo02 ├── Navegacao │ └── src │ │ └── main │ │ └── webapp │ │ ├── rodape.html │ │ ├── cabecalho.html │ │ ├── pagina.html │ │ └── WEB-INF │ │ └── web.xml ├── Modulo02.pdf ├── AloMundo │ ├── AloMundo.war │ └── dist │ │ └── WEB-INF │ │ ├── classes │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── AloMundoServlet.class │ │ └── web-old.xml ├── EscopoSessao │ └── src │ │ └── main │ │ └── webapp │ │ ├── index.jsp │ │ └── WEB-INF │ │ └── web.xml ├── EscopoRequisicao │ └── src │ │ └── main │ │ └── webapp │ │ ├── index.jsp │ │ └── WEB-INF │ │ └── web.xml ├── EscopoAplicacao │ └── src │ │ └── main │ │ └── webapp │ │ ├── index.jsp │ │ └── WEB-INF │ │ └── web.xml ├── AloMundoMVN │ └── src │ │ └── main │ │ └── webapp │ │ ├── index.jsp │ │ └── WEB-INF │ │ └── web.xml ├── HttpRequest │ └── src │ │ └── main │ │ └── webapp │ │ └── WEB-INF │ │ └── web.xml └── README.md ├── Modulo06 ├── AloMundoMVC-v1 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── templates │ │ │ │ └── index.html │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── AloMundoMvcApplication.java │ │ │ └── controller │ │ │ └── AloMundoController.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── AloMundoMvcApplicationTests.java ├── Modulo06.pdf ├── AloMundoMVC-v2 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ ├── messages_ja.properties │ │ │ ├── messages.properties │ │ │ ├── messages_en.properties │ │ │ ├── messages_fr.properties │ │ │ └── templates │ │ │ │ └── index.html │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── AloMundoMvcApplication.java │ │ │ └── controller │ │ │ └── AloMundoController.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── AloMundoMvcApplicationTests.java ├── AloMundoMVC-v3 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ ├── messages_ja.properties │ │ │ ├── messages.properties │ │ │ ├── messages_en.properties │ │ │ ├── messages_fr.properties │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── EUA.gif │ │ │ │ │ ├── Japao.gif │ │ │ │ │ ├── Brasil.gif │ │ │ │ │ └── Franca.gif │ │ │ └── templates │ │ │ │ └── index.html │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── AloMundoMvcApplication.java │ │ │ └── controller │ │ │ └── AloMundoController.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── AloMundoMvcApplicationTests.java ├── AloMundoMVC-v4 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ ├── messages_ja.properties │ │ │ ├── messages.properties │ │ │ ├── messages_en.properties │ │ │ ├── messages_fr.properties │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── EUA.gif │ │ │ │ │ ├── Japao.gif │ │ │ │ │ ├── Brasil.gif │ │ │ │ │ └── Franca.gif │ │ │ └── templates │ │ │ │ └── index.html │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── AloMundoMvcApplication.java │ │ │ └── controller │ │ │ └── AloMundoController.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── AloMundoMvcApplicationTests.java └── README.md ├── Modulo09 ├── CidadesRS-v2 │ ├── AJAX │ │ └── src │ │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── application.properties │ │ │ │ ├── static │ │ │ │ │ └── favicon.ico │ │ │ │ └── templates │ │ │ │ │ ├── index.html │ │ │ │ │ ├── tabelaDinamica.html │ │ │ │ │ ├── buscaEstado.html │ │ │ │ │ └── buscaNome.html │ │ │ └── java │ │ │ │ └── br │ │ │ │ └── ufscar │ │ │ │ └── dc │ │ │ │ └── dsw │ │ │ │ ├── AJAXApplication.java │ │ │ │ └── config │ │ │ │ └── MvcConfig.java │ │ │ └── test │ │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── AJAXApplicationTests.java │ ├── Client │ │ └── src │ │ │ └── main │ │ │ ├── resources │ │ │ └── application.properties │ │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── service │ │ │ └── spec │ │ │ │ └── IRestClientService.java │ │ │ └── domain │ │ │ ├── Cidade.java │ │ │ └── Estado.java │ └── Server │ │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── static │ │ │ │ │ └── favicon.ico │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── br │ │ │ │ └── ufscar │ │ │ │ └── dc │ │ │ │ └── dsw │ │ │ │ ├── service │ │ │ │ └── spec │ │ │ │ │ ├── IEstadoService.java │ │ │ │ │ └── ICidadeService.java │ │ │ │ └── dao │ │ │ │ ├── IEstadoDAO.java │ │ │ │ └── ICidadeDAO.java │ │ └── test │ │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── CidadesRSApplicationTests.java │ │ └── estados.txt ├── Modulo09.pdf ├── resources.zip ├── CidadesRS │ ├── src │ │ ├── main │ │ │ ├── resources │ │ │ │ ├── static │ │ │ │ │ └── favicon.ico │ │ │ │ ├── templates │ │ │ │ │ ├── index.html │ │ │ │ │ ├── buscaNome.html │ │ │ │ │ └── buscaEstado.html │ │ │ │ └── application.properties │ │ │ └── java │ │ │ │ └── br │ │ │ │ └── ufscar │ │ │ │ └── dc │ │ │ │ └── dsw │ │ │ │ ├── service │ │ │ │ └── spec │ │ │ │ │ ├── IEstadoService.java │ │ │ │ │ └── ICidadeService.java │ │ │ │ ├── dao │ │ │ │ ├── IEstadoDAO.java │ │ │ │ └── ICidadeDAO.java │ │ │ │ └── domain │ │ │ │ └── Estado.java │ │ └── test │ │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── CidadesRSApplicationTests.java │ └── estados.txt ├── LivrariaMVC-v4 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── EUA.gif │ │ │ │ │ ├── error.ico │ │ │ │ │ ├── image.png │ │ │ │ │ ├── Brasil.gif │ │ │ │ │ ├── favicon.png │ │ │ │ │ └── image2.png │ │ │ └── templates │ │ │ │ ├── home.html │ │ │ │ ├── fragments │ │ │ │ ├── validacao.html │ │ │ │ ├── footer.html │ │ │ │ └── alert.html │ │ │ │ └── layout2.html │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── service │ │ │ └── spec │ │ │ │ ├── ILivroService.java │ │ │ │ ├── IUsuarioService.java │ │ │ │ ├── ICompraService.java │ │ │ │ ├── IEditoraService.java │ │ │ │ └── IClienteRestService.java │ │ │ ├── dao │ │ │ ├── ILivroDAO.java │ │ │ ├── ICompraDAO.java │ │ │ ├── IEditoraDAO.java │ │ │ └── IUsuarioDAO.java │ │ │ ├── conversor │ │ │ ├── BigDecimalConversor.java │ │ │ ├── LivroConversor.java │ │ │ ├── EditoraConversor.java │ │ │ └── CartaoConversor.java │ │ │ └── validation │ │ │ └── UniqueCNPJ.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── LivrariaMvcApplicationTests.java ├── LivrariaMVC-v5 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── EUA.gif │ │ │ │ │ ├── error.ico │ │ │ │ │ ├── image.png │ │ │ │ │ ├── Brasil.gif │ │ │ │ │ ├── favicon.png │ │ │ │ │ └── image2.png │ │ │ └── templates │ │ │ │ ├── home.html │ │ │ │ ├── fragments │ │ │ │ ├── validacao.html │ │ │ │ ├── footer.html │ │ │ │ └── alert.html │ │ │ │ └── layout2.html │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── service │ │ │ └── spec │ │ │ │ ├── IUsuarioService.java │ │ │ │ ├── IEditoraService.java │ │ │ │ ├── ILivroService.java │ │ │ │ └── ICompraService.java │ │ │ ├── dao │ │ │ ├── IEditoraDAO.java │ │ │ ├── ILivroDAO.java │ │ │ ├── ICompraDAO.java │ │ │ └── IUsuarioDAO.java │ │ │ ├── conversor │ │ │ ├── BigDecimalConversor.java │ │ │ ├── LivroConversor.java │ │ │ └── EditoraConversor.java │ │ │ └── validation │ │ │ └── UniqueCNPJ.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── LivrariaMvcApplicationTests.java ├── TransacoesRS │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── error.ico │ │ │ │ │ ├── image.png │ │ │ │ │ └── favicon.png │ │ │ ├── templates │ │ │ │ ├── fragments │ │ │ │ │ ├── footer.html │ │ │ │ │ ├── header.html │ │ │ │ │ ├── validacao.html │ │ │ │ │ └── alert.html │ │ │ │ └── home.html │ │ │ └── application.properties │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── controller │ │ │ └── HomeController.java │ │ │ ├── service │ │ │ └── spec │ │ │ │ ├── ITransacaoService.java │ │ │ │ └── ICartaoService.java │ │ │ ├── dao │ │ │ ├── ITransacaoDAO.java │ │ │ └── ICartaoDAO.java │ │ │ └── domain │ │ │ └── enumeration │ │ │ ├── Categoria.java │ │ │ └── Status.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── TransacoesRSApplicationTests.java └── README.md ├── Mail ├── fig │ ├── 01-01.png │ ├── 01-02.png │ ├── 01-03.png │ ├── 02-01.png │ ├── 02-02.png │ ├── 02-03.png │ ├── 03-01.png │ ├── 03-02.png │ └── 03-03.png ├── GmailSMTP │ ├── SIGA.pdf │ └── src │ │ └── main │ │ └── resources │ │ └── config.properties ├── Mailtrap │ ├── SIGA.pdf │ └── src │ │ └── main │ │ └── resources │ │ └── config.properties └── SpringEmail │ ├── SIGA.pdf │ └── src │ └── main │ └── resources │ └── application.properties ├── Modulo01 ├── Modulo01.pdf ├── README.md └── Triade │ └── script.js ├── Modulo03 ├── Modulo03.pdf ├── ELJSP-v2 │ └── src │ │ └── main │ │ ├── resources │ │ ├── messages_en.properties │ │ ├── messages_ja.properties │ │ ├── messages_pt.properties │ │ └── messages_fr.properties │ │ ├── webapp │ │ ├── WEB-INF │ │ │ └── web.xml │ │ ├── login.jsp │ │ └── index.jsp │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── beans │ │ ├── ItemMenu.java │ │ └── Menu.java ├── TransferenciaControle │ └── src │ │ └── main │ │ └── webapp │ │ ├── rodape.jsp │ │ ├── WEB-INF │ │ └── web.xml │ │ ├── cabecalho.jsp │ │ ├── index.jsp │ │ ├── login.jsp │ │ └── sucesso.jsp ├── ELJSP-v1 │ └── src │ │ └── main │ │ └── webapp │ │ ├── WEB-INF │ │ └── web.xml │ │ ├── login.jsp │ │ ├── principal.jsp │ │ └── index.jsp ├── ErrosJSP │ └── src │ │ └── main │ │ └── webapp │ │ ├── WEB-INF │ │ └── web.xml │ │ └── index.jsp ├── AloMundoJSP │ └── src │ │ └── main │ │ └── webapp │ │ ├── WEB-INF │ │ └── web.xml │ │ └── index.jsp ├── ObjetosImplicitos │ └── src │ │ └── main │ │ └── webapp │ │ ├── WEB-INF │ │ └── web.xml │ │ └── index.jsp └── README.md ├── Modulo04 ├── Modulo04.pdf ├── Livraria-v1 │ └── src │ │ └── main │ │ └── webapp │ │ ├── index.jsp │ │ └── WEB-INF │ │ └── web.xml └── README.md ├── Modulo05 ├── Livraria-v4 │ ├── .env │ ├── src │ │ └── main │ │ │ ├── webapp │ │ │ ├── layout.css │ │ │ ├── WEB-INF │ │ │ │ └── web.xml │ │ │ ├── erro.jsp │ │ │ └── noAuth.jsp │ │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── util │ │ │ └── Erro.java │ └── docker-compose.yml ├── Modulo05.pdf ├── AJAX │ ├── src │ │ └── main │ │ │ ├── webapp │ │ │ ├── index.jsp │ │ │ └── WEB-INF │ │ │ │ └── web.xml │ │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── bean │ │ │ ├── BuscaPorNomeBean.java │ │ │ ├── BuscaPorEstadoBean.java │ │ │ └── ListaCidadesBean.java │ ├── db │ │ ├── MySQL │ │ │ └── create.sql │ │ └── Derby │ │ │ └── create.sql │ └── estados.txt ├── AJAX-v2 │ ├── Client │ │ └── src │ │ │ └── main │ │ │ └── webapp │ │ │ ├── index.jsp │ │ │ ├── WEB-INF │ │ │ └── web.xml │ │ │ └── tabelaDinamica.jsp │ ├── Server │ │ ├── src │ │ │ └── main │ │ │ │ ├── webapp │ │ │ │ └── WEB-INF │ │ │ │ │ └── web.xml │ │ │ │ └── java │ │ │ │ └── br │ │ │ │ └── ufscar │ │ │ │ └── dc │ │ │ │ └── dsw │ │ │ │ └── bean │ │ │ │ ├── BuscaPorNomeBean.java │ │ │ │ └── BuscaPorEstadoBean.java │ │ ├── db │ │ │ ├── MySQL │ │ │ │ └── create.sql │ │ │ └── Derby │ │ │ │ └── create.sql │ │ └── estados.txt │ ├── down │ └── up ├── Login │ ├── src │ │ └── main │ │ │ ├── webapp │ │ │ ├── layout.css │ │ │ ├── WEB-INF │ │ │ │ └── web.xml │ │ │ ├── logado │ │ │ │ ├── usuario │ │ │ │ │ └── index.jsp │ │ │ │ └── admin │ │ │ │ │ └── index.jsp │ │ │ └── noAuth.jsp │ │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ └── util │ │ │ └── Erro.java │ └── db │ │ ├── MySQL │ │ └── create.sql │ │ └── Derby │ │ └── create.sql ├── Livraria-v2 │ └── src │ │ └── main │ │ └── webapp │ │ ├── index.jsp │ │ ├── WEB-INF │ │ └── web.xml │ │ └── erro.jsp ├── Livraria-v3 │ └── src │ │ └── main │ │ ├── webapp │ │ ├── WEB-INF │ │ │ └── web.xml │ │ ├── denied.jsp │ │ ├── erro.jsp │ │ └── index.jsp │ │ └── resources │ │ ├── message_en.properties │ │ └── message_pt.properties └── README.md ├── Modulo08 ├── Modulo08.pdf ├── resources.zip ├── LoginMVC-v1 │ └── src │ │ └── main │ │ ├── resources │ │ ├── static │ │ │ └── image │ │ │ │ ├── EUA.gif │ │ │ │ ├── Brasil.gif │ │ │ │ └── logo.png │ │ ├── application.properties │ │ └── templates │ │ │ ├── index.html │ │ │ ├── user │ │ │ └── index.html │ │ │ ├── admin │ │ │ └── index.html │ │ │ ├── error.html │ │ │ ├── fragments │ │ │ └── layout.html │ │ │ └── home.html │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── LoginMVCApplication.java ├── LoginMVC-v2 │ └── src │ │ └── main │ │ ├── resources │ │ ├── static │ │ │ └── image │ │ │ │ ├── EUA.gif │ │ │ │ ├── Brasil.gif │ │ │ │ └── logo.png │ │ └── templates │ │ │ ├── index.html │ │ │ ├── admin │ │ │ └── index.html │ │ │ ├── user │ │ │ └── index.html │ │ │ ├── error.html │ │ │ ├── fragments │ │ │ └── layout.html │ │ │ └── home.html │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── dao │ │ └── IUsuarioDAO.java ├── LivrariaMVC-v2 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── EUA.gif │ │ │ │ │ ├── error.ico │ │ │ │ │ ├── image.png │ │ │ │ │ ├── Brasil.gif │ │ │ │ │ ├── favicon.png │ │ │ │ │ └── image2.png │ │ │ ├── templates │ │ │ │ ├── fragments │ │ │ │ │ ├── footer.html │ │ │ │ │ ├── validacao.html │ │ │ │ │ ├── alert.html │ │ │ │ │ └── header.html │ │ │ │ └── home.html │ │ │ ├── ValidationMessages.properties │ │ │ └── ValidationMessages_en.properties │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── controller │ │ │ └── HomeController.java │ │ │ ├── service │ │ │ └── spec │ │ │ │ ├── ILivroService.java │ │ │ │ └── IEditoraService.java │ │ │ ├── dao │ │ │ ├── ILivroDAO.java │ │ │ └── IEditoraDAO.java │ │ │ ├── conversor │ │ │ ├── BigDecimalConversor.java │ │ │ └── EditoraConversor.java │ │ │ └── validation │ │ │ └── UniqueCNPJ.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── LivrariaMvcApplicationTests.java ├── LivrariaMVC-v3 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── EUA.gif │ │ │ │ │ ├── error.ico │ │ │ │ │ ├── image.png │ │ │ │ │ ├── Brasil.gif │ │ │ │ │ ├── favicon.png │ │ │ │ │ └── image2.png │ │ │ └── templates │ │ │ │ ├── home.html │ │ │ │ ├── fragments │ │ │ │ ├── validacao.html │ │ │ │ ├── footer.html │ │ │ │ └── alert.html │ │ │ │ └── layout2.html │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── service │ │ │ └── spec │ │ │ │ ├── ILivroService.java │ │ │ │ ├── IUsuarioService.java │ │ │ │ ├── ICompraService.java │ │ │ │ └── IEditoraService.java │ │ │ ├── dao │ │ │ ├── ILivroDAO.java │ │ │ ├── ICompraDAO.java │ │ │ ├── IEditoraDAO.java │ │ │ └── IUsuarioDAO.java │ │ │ ├── conversor │ │ │ ├── BigDecimalConversor.java │ │ │ ├── LivroConversor.java │ │ │ └── EditoraConversor.java │ │ │ └── validation │ │ │ └── UniqueCNPJ.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── LivrariaMvcApplicationTests.java ├── LivrariaMVC-v1 │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── static │ │ │ │ └── image │ │ │ │ │ ├── error.ico │ │ │ │ │ ├── image.png │ │ │ │ │ ├── favicon.png │ │ │ │ │ └── image2.png │ │ │ ├── templates │ │ │ │ ├── fragments │ │ │ │ │ ├── footer.html │ │ │ │ │ ├── header.html │ │ │ │ │ ├── validacao.html │ │ │ │ │ └── alert.html │ │ │ │ └── home.html │ │ │ └── ValidationMessages.properties │ │ └── java │ │ │ └── br │ │ │ └── ufscar │ │ │ └── dc │ │ │ └── dsw │ │ │ ├── controller │ │ │ └── HomeController.java │ │ │ ├── service │ │ │ └── spec │ │ │ │ ├── ILivroService.java │ │ │ │ └── IEditoraService.java │ │ │ ├── dao │ │ │ ├── ILivroDAO.java │ │ │ └── IEditoraDAO.java │ │ │ ├── conversor │ │ │ ├── BigDecimalConversor.java │ │ │ └── EditoraConversor.java │ │ │ ├── validation │ │ │ ├── UniqueCNPJ.java │ │ │ └── UniqueCNPJValidator.java │ │ │ └── config │ │ │ └── MvcConfig.java │ │ └── test │ │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── LivrariaMvcApplicationTests.java └── README.md └── UploadFile ├── UploadFileJPA ├── SIGA.pdf ├── UFSCar.png └── src │ ├── test │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ └── UploadFileJpaApplicationTests.java │ └── main │ ├── java │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ ├── service │ │ ├── spec │ │ │ └── IFileService.java │ │ └── impl │ │ │ └── FileService.java │ │ ├── dao │ │ └── IFileDAO.java │ │ └── controller │ │ └── ListFileController.java │ └── resources │ └── application.properties ├── UploadFileMVC └── src │ ├── main │ ├── resources │ │ ├── application.properties │ │ └── templates │ │ │ └── index.html │ └── java │ │ └── br │ │ └── ufscar │ │ └── dc │ │ └── dsw │ │ ├── model │ │ ├── ResponseMessage.java │ │ └── FileInfo.java │ │ ├── service │ │ └── spec │ │ │ └── FilesStorageService.java │ │ └── UploadFileMvcApplication.java │ └── test │ └── java │ └── br │ └── ufscar │ └── dc │ └── dsw │ └── UploadFileMvcApplicationTests.java ├── UploadFileJSP └── src │ └── main │ ├── webapp │ └── WEB-INF │ │ └── web.xml │ └── java │ └── br │ └── ufscar │ └── dc │ └── dsw │ └── Constants.java ├── Roteiro01.md └── Roteiro02.md /Modulo07/JPA/db/PostgreSQL/create.sql: -------------------------------------------------------------------------------- 1 | create database "JPA"; -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | **/*.odp 2 | **/Roteiro*.pdf 3 | Modulo00/** 4 | 5 | -------------------------------------------------------------------------------- /Modulo02/Navegacao/src/main/webapp/rodape.html: -------------------------------------------------------------------------------- 1 |

Rodape

2 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v1/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Modulo02/Navegacao/src/main/webapp/cabecalho.html: -------------------------------------------------------------------------------- 1 |

Cabecalho

2 | -------------------------------------------------------------------------------- /Modulo07/JPA/db/MySQL/create.sql: -------------------------------------------------------------------------------- 1 | create database JPA; 2 | 3 | use JPA; 4 | -------------------------------------------------------------------------------- /Mail/fig/01-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/01-01.png -------------------------------------------------------------------------------- /Mail/fig/01-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/01-02.png -------------------------------------------------------------------------------- /Mail/fig/01-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/01-03.png -------------------------------------------------------------------------------- /Mail/fig/02-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/02-01.png -------------------------------------------------------------------------------- /Mail/fig/02-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/02-02.png -------------------------------------------------------------------------------- /Mail/fig/02-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/02-03.png -------------------------------------------------------------------------------- /Mail/fig/03-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/03-01.png -------------------------------------------------------------------------------- /Mail/fig/03-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/03-02.png -------------------------------------------------------------------------------- /Mail/fig/03-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/fig/03-03.png -------------------------------------------------------------------------------- /Mail/GmailSMTP/SIGA.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/GmailSMTP/SIGA.pdf -------------------------------------------------------------------------------- /Mail/Mailtrap/SIGA.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/Mailtrap/SIGA.pdf -------------------------------------------------------------------------------- /Modulo01/Modulo01.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo01/Modulo01.pdf -------------------------------------------------------------------------------- /Modulo02/Modulo02.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo02/Modulo02.pdf -------------------------------------------------------------------------------- /Modulo03/Modulo03.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo03/Modulo03.pdf -------------------------------------------------------------------------------- /Modulo04/Modulo04.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo04/Modulo04.pdf -------------------------------------------------------------------------------- /Modulo05/Livraria-v4/.env: -------------------------------------------------------------------------------- 1 | MYSQL_USER=root 2 | MYSQL_ROOT_PASSWORD=root 3 | MYSQL_HOST=mysql 4 | -------------------------------------------------------------------------------- /Modulo05/Modulo05.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo05/Modulo05.pdf -------------------------------------------------------------------------------- /Modulo06/Modulo06.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/Modulo06.pdf -------------------------------------------------------------------------------- /Modulo07/Modulo07.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo07/Modulo07.pdf -------------------------------------------------------------------------------- /Modulo08/Modulo08.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/Modulo08.pdf -------------------------------------------------------------------------------- /Modulo08/resources.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/resources.zip -------------------------------------------------------------------------------- /Modulo09/Modulo09.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/Modulo09.pdf -------------------------------------------------------------------------------- /Modulo09/resources.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/resources.zip -------------------------------------------------------------------------------- /Mail/SpringEmail/SIGA.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Mail/SpringEmail/SIGA.pdf -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.messages.basename=messages 2 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.messages.basename=messages 2 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.messages.basename=messages 2 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Client/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.main.web-application-type=none -------------------------------------------------------------------------------- /Modulo02/AloMundo/AloMundo.war: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo02/AloMundo/AloMundo.war -------------------------------------------------------------------------------- /Modulo02/Navegacao/src/main/webapp/pagina.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |

Hello World!

4 | 5 | 6 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/resources/messages_en.properties: -------------------------------------------------------------------------------- 1 | user=User: 2 | password=Password: 3 | login=Login 4 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/resources/messages_ja.properties: -------------------------------------------------------------------------------- 1 | login = ログインする 2 | user = ユーザー: 3 | password = パスワード: 4 | -------------------------------------------------------------------------------- /Modulo04/Livraria-v1/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | 2 | 3 |

Hello World!

4 | 5 | 6 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/SIGA.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/UploadFile/UploadFileJPA/SIGA.pdf -------------------------------------------------------------------------------- /Modulo02/EscopoSessao/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | 2 | 3 |

Hello World!

4 | 5 | 6 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/resources/messages_pt.properties: -------------------------------------------------------------------------------- 1 | login=Login 2 | user=Usuário: 3 | password=Senha: 4 | 5 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/UFSCar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/UploadFile/UploadFileJPA/UFSCar.png -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/resources/messages_fr.properties: -------------------------------------------------------------------------------- 1 | login=Login 2 | user=Identifiant: 3 | password=Mot de passe: 4 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/resources/messages_ja.properties: -------------------------------------------------------------------------------- 1 | welcome.text = こんにちは、皆さん、ようこそ。 2 | title.text = こんにちは世界 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/messages_ja.properties: -------------------------------------------------------------------------------- 1 | welcome.text = こんにちは、皆さん、ようこそ。 2 | title.text = こんにちは世界 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/messages_ja.properties: -------------------------------------------------------------------------------- 1 | welcome.text = こんにちは、皆さん、ようこそ。 2 | title.text = こんにちは世界 3 | -------------------------------------------------------------------------------- /Modulo05/AJAX/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo05/AJAX/src/main/webapp/index.jsp -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/resources/messages.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Olá. Bem-vindo a todos. 2 | title.text = Olá Mundo 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/messages.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Olá. Bem-vindo a todos. 2 | title.text = Olá Mundo 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/messages.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Olá. Bem-vindo a todos. 2 | title.text = Olá Mundo 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/resources/messages_en.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Hi. Welcome to Everyone. 2 | title.text = Hello World 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/messages_en.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Hi. Welcome to Everyone. 2 | title.text = Hello World 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/messages_en.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Hi. Welcome to Everyone. 2 | title.text = Hello World 3 | -------------------------------------------------------------------------------- /Modulo07/JPA/db/Derby/create.sql: -------------------------------------------------------------------------------- 1 | connect 'jdbc:derby:JPA;create=true;user=root;password=root'; 2 | 3 | disconnect; 4 | 5 | quit; 6 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/resources/messages_fr.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Salut. Bienvenue à tous. 2 | title.text = Salut le Monde 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/messages_fr.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Salut. Bienvenue à tous. 2 | title.text = Salut le Monde 3 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/messages_fr.properties: -------------------------------------------------------------------------------- 1 | welcome.text = Salut. Bienvenue à tous. 2 | title.text = Salut le Monde 3 | -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Client/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo05/AJAX-v2/Client/src/main/webapp/index.jsp -------------------------------------------------------------------------------- /Modulo05/Login/src/main/webapp/layout.css: -------------------------------------------------------------------------------- 1 | #erro { 2 | width: 80%; 3 | margin: 0 auto; 4 | border: 1px solid red; 5 | background-color: beige; 6 | } -------------------------------------------------------------------------------- /Modulo05/Livraria-v4/src/main/webapp/layout.css: -------------------------------------------------------------------------------- 1 | #erro { 2 | width: 80%; 3 | margin: 0 auto; 4 | border: 1px solid red; 5 | background-color: beige; 6 | } -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/CidadesRS/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LoginMVC-v1/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LoginMVC-v2/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v3/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v4/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v2/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v3/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LoginMVC-v1/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/static/image/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LoginMVC-v1/src/main/resources/static/image/logo.png -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LoginMVC-v2/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/static/image/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LoginMVC-v2/src/main/resources/static/image/logo.png -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v4/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/static/image/EUA.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v5/src/main/resources/static/image/EUA.gif -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/static/image/error.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/TransacoesRS/src/main/resources/static/image/error.ico -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/static/image/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/TransacoesRS/src/main/resources/static/image/image.png -------------------------------------------------------------------------------- /Modulo02/EscopoRequisicao/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 3 | 4 |

Hello World!

5 | 6 | 7 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/static/image/Japao.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v3/src/main/resources/static/image/Japao.gif -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/static/image/Japao.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v4/src/main/resources/static/image/Japao.gif -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/static/image/error.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v1/src/main/resources/static/image/error.ico -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/static/image/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v1/src/main/resources/static/image/image.png -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/static/image/error.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v2/src/main/resources/static/image/error.ico -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/static/image/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v2/src/main/resources/static/image/image.png -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/static/image/error.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v3/src/main/resources/static/image/error.ico -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/static/image/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v3/src/main/resources/static/image/image.png -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | # THYMELEAF 2 | 3 | spring.thymeleaf.cache = false 4 | 5 | # I18n 6 | 7 | spring.messages.basename = messages 8 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/CidadesRS-v2/AJAX/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/static/image/error.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v4/src/main/resources/static/image/error.ico -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/static/image/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v4/src/main/resources/static/image/image.png -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/static/image/error.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v5/src/main/resources/static/image/error.ico -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/static/image/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v5/src/main/resources/static/image/image.png -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/static/image/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/TransacoesRS/src/main/resources/static/image/favicon.png -------------------------------------------------------------------------------- /Modulo02/EscopoAplicacao/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 3 | 4 | 5 |

Hello World!

6 | 7 | 8 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v3/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/static/image/Franca.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v3/src/main/resources/static/image/Franca.gif -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v4/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/static/image/Franca.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo06/AloMundoMVC-v4/src/main/resources/static/image/Franca.gif -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/static/image/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v1/src/main/resources/static/image/favicon.png -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/static/image/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v1/src/main/resources/static/image/image2.png -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v2/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/static/image/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v2/src/main/resources/static/image/favicon.png -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/static/image/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v2/src/main/resources/static/image/image2.png -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v3/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/static/image/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v3/src/main/resources/static/image/favicon.png -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/static/image/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo08/LivrariaMVC-v3/src/main/resources/static/image/image2.png -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/CidadesRS-v2/Server/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v4/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/static/image/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v4/src/main/resources/static/image/favicon.png -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/static/image/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v4/src/main/resources/static/image/image2.png -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/static/image/Brasil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v5/src/main/resources/static/image/Brasil.gif -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/static/image/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v5/src/main/resources/static/image/favicon.png -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/static/image/image2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo09/LivrariaMVC-v5/src/main/resources/static/image/image2.png -------------------------------------------------------------------------------- /Mail/Mailtrap/src/main/resources/config.properties: -------------------------------------------------------------------------------- 1 | mail.smtp.host = smtp.mailtrap.io 2 | mail.smtp.port = 2525 3 | mail.smtp.auth = true 4 | username = 5 | password = 6 | -------------------------------------------------------------------------------- /Modulo02/AloMundo/dist/WEB-INF/classes/br/ufscar/dc/dsw/AloMundoServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/delanobeder/DSW1/HEAD/Modulo02/AloMundo/dist/WEB-INF/classes/br/ufscar/dc/dsw/AloMundoServlet.class -------------------------------------------------------------------------------- /Modulo03/TransferenciaControle/src/main/webapp/rodape.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page import="java.util.Date" %> 3 |
4 |

<%= new Date() %>

-------------------------------------------------------------------------------- /Modulo02/AloMundoMVN/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 3 | 4 | 5 | 6 | 7 |

Hello World!

8 | 9 | 10 | -------------------------------------------------------------------------------- /Mail/GmailSMTP/src/main/resources/config.properties: -------------------------------------------------------------------------------- 1 | mail.smtp.host = smtp.gmail.com 2 | mail.smtp.port = 465 3 | mail.smtp.ssl.enable = true 4 | mail.smtp.auth = true 5 | username = [username]@gmail.com 6 | password = 7 | -------------------------------------------------------------------------------- /UploadFile/UploadFileMVC/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.servlet.multipart.max-file-size=40MB 2 | spring.servlet.multipart.max-request-size=50MB 3 | 4 | spring.servlet.multipart.enabled=true 5 | spring.servlet.multipart.location=${java.io.tmpdir} -------------------------------------------------------------------------------- /Modulo05/AJAX/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo02/Navegacao/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v1/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo03/ErrosJSP/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo05/Login/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo02/AloMundoMVN/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo02/HttpRequest/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo03/AloMundoJSP/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo04/Livraria-v1/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Client/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Server/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v4/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo02/EscopoAplicacao/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo02/EscopoRequisicao/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo03/ObjetosImplicitos/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJSP/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Modulo03/TransferenciaControle/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | -------------------------------------------------------------------------------- /Mail/SpringEmail/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.mail.host = smtp.gmail.com 2 | spring.mail.port = 465 3 | spring.mail.properties.mail.smtp.auth = true 4 | spring.mail.properties.mail.smtp.ssl.enable = true 5 | spring.mail.username = [username]@gmail.com 6 | spring.mail.password = 7 | -------------------------------------------------------------------------------- /Modulo03/ErrosJSP/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 3 | 4 | 5 | 6 |

Hello World!

7 | <% int a = 2; 8 | String str = null; 9 | a = str.length(); 10 | %> 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Modulo03/TransferenciaControle/src/main/webapp/cabecalho.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | Bem-vindo <%=request.getParameter("nomeCompleto")%>! 3 |
4 | Seu último acesso foi em <%=request.getParameter("ultimoAcesso")%>! 5 |
6 | Você está em: <%= voceEstaEm %>! 7 |
8 |
9 | -------------------------------------------------------------------------------- /Modulo04/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 04 - Java Database Connectivity (JDBC) 7 | - - - 8 | 9 | 10 | 11 | #### Exemplo de código 12 | 13 | 14 | 15 | - [01 - Usando JDBC para acesso a banco de dados](Roteiro04-01.md) 16 | -------------------------------------------------------------------------------- /Modulo01/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 01 - Tríade: HTML5, CSS e Javascript 7 | 8 | - - - 9 | 10 | 11 | 12 | #### Exemplo de código 13 | 14 | 15 | 16 | - [01 - Exemplo da utilização Tríade: HTML5, CSS e Javascript](Roteiro01-01.md) -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/down: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | undeploy_server() { 4 | 5 | cd Server 6 | 7 | mvn tomcat7:undeploy 8 | 9 | cd .. 10 | } 11 | 12 | undeploy_client() { 13 | 14 | cd Client 15 | 16 | mvn tomcat7:undeploy 17 | 18 | cd .. 19 | } 20 | 21 | undeploy_server 22 | undeploy_client -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/test/java/br/ufscar/dc/dsw/CidadesRSApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class CidadesRSApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo07/LivrariaJPA/src/test/java/br/ufscar/dc/dsw/LivrariaJpaApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class LivrariaJpaApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/test/java/br/ufscar/dc/dsw/AJAXApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class CidadesRSApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v1/src/test/java/br/ufscar/dc/dsw/AloMundoMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class AloMundoMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/test/java/br/ufscar/dc/dsw/AloMundoMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class AloMundoMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/test/java/br/ufscar/dc/dsw/AloMundoMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class AloMundoMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/test/java/br/ufscar/dc/dsw/AloMundoMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class AloMundoMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/test/java/br/ufscar/dc/dsw/LivrariaMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class LivrariaMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/test/java/br/ufscar/dc/dsw/LivrariaMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class LivrariaMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/test/java/br/ufscar/dc/dsw/LivrariaMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class LivrariaMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/src/test/java/br/ufscar/dc/dsw/CidadesRSApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class CidadesRSApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/test/java/br/ufscar/dc/dsw/LivrariaMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class LivrariaMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/test/java/br/ufscar/dc/dsw/LivrariaMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class LivrariaMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/test/java/br/ufscar/dc/dsw/TransacoesRSApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class TransacoesRSApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo02/EscopoSessao/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Archetype Created Web Application 5 | 6 | 1 7 | 8 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/src/test/java/br/ufscar/dc/dsw/UploadFileJpaApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class UploadFileJpaApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /UploadFile/UploadFileMVC/src/test/java/br/ufscar/dc/dsw/UploadFileMvcApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class UploadFileMvcApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v1/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Alô Mundo 6 | 7 | 8 | 9 |

Alô Mundo

10 | 11 |

16 Março 2020

12 | 13 | 14 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/templates/fragments/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 |
7 | © Departamento de Computação © 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/templates/fragments/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 |
7 | © Departamento de Computação © 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/templates/fragments/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 |
7 | © Departamento de Computação © 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /Modulo07/SpringDataJPA/src/test/java/br/ufscar/dc/dsw/SpringData/SpringDataJpaApplicationTests.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.SpringData; 2 | 3 | import org.junit.jupiter.api.Test; 4 | import org.springframework.boot.test.context.SpringBootTest; 5 | 6 | @SpringBootTest 7 | class SpringDataJpaApplicationTests { 8 | 9 | @Test 10 | void contextLoads() { 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/java/br/ufscar/dc/dsw/service/spec/IEstadoService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Estado; 6 | 7 | public interface IEstadoService { 8 | Estado findById(long id); 9 | 10 | List findAll(); 11 | 12 | void save(Estado estado); 13 | 14 | void delete(Long id); 15 | } -------------------------------------------------------------------------------- /Modulo07/LivrariaJPA/src/main/java/br/ufscar/dc/dsw/dao/ILivroDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | 9 | public interface ILivroDAO extends CrudRepository{ 10 | 11 | List findAll(); 12 | 13 | Livro findById(long id); 14 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/controller/HomeController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.web.bind.annotation.GetMapping; 5 | 6 | @Controller 7 | public class HomeController { 8 | 9 | @GetMapping("/") 10 | public String home() { 11 | return "home"; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/controller/HomeController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.web.bind.annotation.GetMapping; 5 | 6 | @Controller 7 | public class HomeController { 8 | 9 | @GetMapping("/") 10 | public String home() { 11 | return "home"; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/src/main/java/br/ufscar/dc/dsw/service/spec/IEstadoService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Estado; 6 | 7 | public interface IEstadoService { 8 | Estado findById(long id); 9 | 10 | List findAll(); 11 | 12 | void save(Estado estado); 13 | 14 | void delete(Long id); 15 | } -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/java/br/ufscar/dc/dsw/controller/HomeController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.web.bind.annotation.GetMapping; 5 | 6 | @Controller 7 | public class HomeController { 8 | 9 | @GetMapping("/") 10 | public String home() { 11 | return "home"; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v2/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | 4 | 5 | 6 | 7 | Livraria Virtual 8 | 9 | 10 | CRUD Livros 11 | 12 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/service/spec/ILivroService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Livro; 6 | 7 | public interface ILivroService { 8 | 9 | Livro buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Livro livro); 14 | 15 | void excluir(Long id); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/service/spec/ILivroService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Livro; 6 | 7 | public interface ILivroService { 8 | 9 | Livro buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Livro livro); 14 | 15 | void excluir(Long id); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/service/spec/ILivroService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Livro; 6 | 7 | public interface ILivroService { 8 | 9 | Livro buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Livro livro); 14 | 15 | void excluir(Long id); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/service/spec/ILivroService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Livro; 6 | 7 | public interface ILivroService { 8 | 9 | Livro buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Livro livro); 14 | 15 | void excluir(Long id); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/service/spec/IUsuarioService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Usuario; 6 | 7 | public interface IUsuarioService { 8 | 9 | Usuario buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Usuario editora); 14 | 15 | void excluir(Long id); 16 | } 17 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/service/spec/IUsuarioService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Usuario; 6 | 7 | public interface IUsuarioService { 8 | 9 | Usuario buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Usuario editora); 14 | 15 | void excluir(Long id); 16 | } 17 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/service/spec/IUsuarioService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Usuario; 6 | 7 | public interface IUsuarioService { 8 | 9 | Usuario buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Usuario editora); 14 | 15 | void excluir(Long id); 16 | } 17 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/java/br/ufscar/dc/dsw/AJAXApplication.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class AJAXApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(AJAXApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/java/br/ufscar/dc/dsw/service/spec/ITransacaoService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Transacao; 6 | 7 | public interface ITransacaoService { 8 | 9 | Transacao buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Transacao transacao); 14 | 15 | void excluir(Long id); 16 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/service/spec/ICompraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Compra; 6 | import br.ufscar.dc.dsw.domain.Usuario; 7 | 8 | public interface ICompraService { 9 | 10 | Compra buscarPorId(Long id); 11 | 12 | List buscarTodosPorUsuario(Usuario u); 13 | 14 | void salvar(Compra editora); 15 | } 16 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/service/spec/ICompraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Compra; 6 | import br.ufscar.dc.dsw.domain.Usuario; 7 | 8 | public interface ICompraService { 9 | 10 | Compra buscarPorId(Long id); 11 | 12 | List buscarTodosPorUsuario(Usuario u); 13 | 14 | void salvar(Compra editora); 15 | } 16 | -------------------------------------------------------------------------------- /Modulo05/AJAX/db/MySQL/create.sql: -------------------------------------------------------------------------------- 1 | drop database if exists Cidades; 2 | 3 | create database Cidades; 4 | 5 | use Cidades; 6 | 7 | create table Estado (id bigint not null auto_increment, nome varchar(30) not null, sigla varchar(2) not null, primary key (id)); 8 | 9 | create table Cidade (id bigint not null auto_increment, nome varchar(80) not null, estado_id bigint not null, primary key (id), foreign key (estado_id) references Estado(id)); 10 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v1/src/main/java/br/ufscar/dc/dsw/AloMundoMvcApplication.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class AloMundoMvcApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(AloMundoMvcApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/java/br/ufscar/dc/dsw/AloMundoMvcApplication.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class AloMundoMvcApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(AloMundoMvcApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/java/br/ufscar/dc/dsw/AloMundoMvcApplication.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class AloMundoMvcApplication { 8 | 9 | public static void main(String[] args) { 10 | SpringApplication.run(AloMundoMvcApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/src/main/java/br/ufscar/dc/dsw/service/spec/IFileService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.FileEntity; 6 | 7 | public interface IFileService { 8 | 9 | public FileEntity salvar(FileEntity file); 10 | 11 | public void excluir(Long id); 12 | 13 | public FileEntity buscarPorId(Long id); 14 | 15 | public List buscarTodos(); 16 | } -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Server/db/MySQL/create.sql: -------------------------------------------------------------------------------- 1 | drop database if exists Cidades; 2 | 3 | create database Cidades; 4 | 5 | use Cidades; 6 | 7 | create table Estado (id bigint not null auto_increment, nome varchar(30) not null, sigla varchar(2) not null, primary key (id)); 8 | 9 | create table Cidade (id bigint not null auto_increment, nome varchar(80) not null, estado_id bigint not null, primary key (id), foreign key (estado_id) references Estado(id)); 10 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/java/br/ufscar/dc/dsw/LoginMVCApplication.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class LoginMVCApplication { 8 | 9 | public static void main(String[] args) throws Throwable { 10 | SpringApplication.run(LoginMVCApplication.class, args); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /UploadFile/UploadFileMVC/src/main/java/br/ufscar/dc/dsw/model/ResponseMessage.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.model; 2 | 3 | public class ResponseMessage { 4 | private String message; 5 | 6 | public ResponseMessage(String message) { 7 | this.message = message; 8 | } 9 | 10 | public String getMessage() { 11 | return message; 12 | } 13 | 14 | public void setMessage(String message) { 15 | this.message = message; 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v2/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | 9 | jakarta.servlet.ServletException 10 | 11 | /erro.jsp 12 | 13 | 14 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v3/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | Archetype Created Web Application 7 | 8 | 9 | jakarta.servlet.ServletException 10 | 11 | /erro.jsp 12 | 13 | 14 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/service/spec/IEditoraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Editora; 6 | 7 | public interface IEditoraService { 8 | 9 | Editora buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Editora editora); 14 | 15 | void excluir(Long id); 16 | 17 | boolean editoraTemLivros(Long id); 18 | } 19 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/service/spec/IEditoraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Editora; 6 | 7 | public interface IEditoraService { 8 | 9 | Editora buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Editora editora); 14 | 15 | void excluir(Long id); 16 | 17 | boolean editoraTemLivros(Long id); 18 | } 19 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/service/spec/IEditoraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Editora; 6 | 7 | public interface IEditoraService { 8 | 9 | Editora buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Editora editora); 14 | 15 | void excluir(Long id); 16 | 17 | boolean editoraTemLivros(Long id); 18 | } 19 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/java/br/ufscar/dc/dsw/service/spec/ICidadeService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Cidade; 6 | 7 | public interface ICidadeService { 8 | 9 | Cidade findById(Long id); 10 | List findAll(); 11 | void save(Cidade estado); 12 | void delete(Long id); 13 | 14 | List findByEstado(Long id); 15 | List findByNome(String nome); 16 | } -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/service/spec/IEditoraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Editora; 6 | 7 | public interface IEditoraService { 8 | 9 | Editora buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Editora editora); 14 | 15 | void excluir(Long id); 16 | 17 | boolean editoraTemLivros(Long id); 18 | } 19 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/service/spec/IEditoraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Editora; 6 | 7 | public interface IEditoraService { 8 | 9 | Editora buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | void salvar(Editora editora); 14 | 15 | void excluir(Long id); 16 | 17 | boolean editoraTemLivros(Long id); 18 | } 19 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/service/spec/ILivroService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Livro; 6 | 7 | public interface ILivroService { 8 | 9 | Livro buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | List buscarPorTitulo(String titulo); 14 | 15 | void salvar(Livro livro); 16 | 17 | void excluir(Long id); 18 | 19 | } 20 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJSP/src/main/java/br/ufscar/dc/dsw/Constants.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | public class Constants { 4 | 5 | public static final String UPLOAD_DIRECTORY = "upload"; 6 | public static final String DEFAULT_FILENAME = "default.file"; 7 | 8 | public static final int MEMORY_THRESHOLD = 1024 * 1024 * 3; 9 | public static final int MAX_FILE_SIZE = 1024 * 1024 * 40; 10 | public static final int MAX_REQUEST_SIZE = 1024 * 1024 * 50; 11 | } 12 | -------------------------------------------------------------------------------- /Modulo07/SpringDataJPA/src/main/java/br/ufscar/dc/dsw/dao/IProfessorDAO.java: -------------------------------------------------------------------------------- 1 | 2 | package br.ufscar.dc.dsw.dao; 3 | 4 | import java.util.List; 5 | 6 | import org.springframework.data.repository.CrudRepository; 7 | 8 | import br.ufscar.dc.dsw.domain.Departamento; 9 | import br.ufscar.dc.dsw.domain.Professor; 10 | 11 | public interface IProfessorDAO extends CrudRepository { 12 | List findByDepartamento(Departamento departamento); 13 | } 14 | 15 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/src/main/java/br/ufscar/dc/dsw/service/spec/ICidadeService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Cidade; 6 | 7 | public interface ICidadeService { 8 | 9 | Cidade findById(Long id); 10 | List findAll(); 11 | void save(Cidade estado); 12 | void delete(Long id); 13 | 14 | List findByEstado(Long id); 15 | List findByNome(String nome); 16 | } -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 |
10 |

Transações (CC)

11 | 12 |
13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 |
10 |

Livraria Virtual

11 | 12 |
13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 |
9 |

Livraria Virtual

10 | 11 |
12 | 13 |
14 | 15 | 16 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 |
9 |

Livraria Virtual

10 | 11 |
12 | 13 |
14 | 15 | 16 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 |
9 |

Livraria Virtual

10 | 11 |
12 | 13 |
14 | 15 | 16 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 8 |
9 |

Livraria Virtual

10 | 11 |
12 | 13 |
14 | 15 | 16 | -------------------------------------------------------------------------------- /Modulo07/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 07 - Java Persistence API (JPA) 7 | - - - 8 | 9 | 10 | 11 | #### Exemplos de códigos 12 | 13 | 14 | 15 | - [01 - Exemplo de aplicação JPA](Roteiro07-01.md) 16 | 17 | 18 | - [02 - Exemplo de aplicação JPA (Spring Data JPA)](Roteiro07-02.md) 19 | 20 | 21 | - [03 - Usando JPA para acesso a banco de dados - LivrariaJPA](Roteiro07-03.md) 22 | 23 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/java/br/ufscar/dc/dsw/dao/IEstadoDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Estado; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IEstadoDAO extends CrudRepository { 11 | Estado findById(long id); 12 | List findAll(); 13 | Estado save(Estado estado); 14 | void deleteById(Long id); 15 | } -------------------------------------------------------------------------------- /Modulo05/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 05 - MVC utilizando as tecnologias Servlet, JSP, JSTL & JDBC 7 | - - - 8 | 9 | 10 | 11 | #### Exemplos de código 12 | 13 | 14 | 15 | - [01 - CRUD MVC utilizando as tecnologias Servlet, JSP, JSTL & JDBC](Roteiro05-01.md) 16 | 17 | 18 | - [02 - Autenticação/Autorização](Roteiro05-02.md) 19 | 20 | 21 | - [03 - AJAX](Roteiro05-03.md) 22 | 23 | 24 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/src/main/java/br/ufscar/dc/dsw/dao/IEstadoDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Estado; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IEstadoDAO extends CrudRepository { 11 | Estado findById(long id); 12 | List findAll(); 13 | Estado save(Estado estado); 14 | void deleteById(Long id); 15 | } -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/service/spec/ICompraService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Compra; 6 | import br.ufscar.dc.dsw.domain.Usuario; 7 | 8 | public interface ICompraService { 9 | 10 | Compra buscarPorId(Long id); 11 | 12 | List buscarTodosPorUsuario(Usuario u); 13 | 14 | List buscarTodosPorUsuario(Long id); 15 | 16 | void salvar(Compra editora); 17 | } 18 | -------------------------------------------------------------------------------- /Modulo05/AJAX/estados.txt: -------------------------------------------------------------------------------- 1 | AC,Acre 2 | AL,Alagoas 3 | AM,Amazonas 4 | AP,Amapá 5 | BA,Bahia 6 | CE,Ceará 7 | DF,Distrito Federal 8 | ES,Espírito Santo 9 | GO,Goiás 10 | MA,Maranhão 11 | MG,Minas Gerais 12 | MS,Mato Grosso do Sul 13 | MT,Mato Grosso 14 | PA,Pará 15 | PB,Paraíba 16 | PE,Pernambuco 17 | PI,Piauí 18 | PR,Paraná 19 | RJ,Rio de Janeiro 20 | RN,Rio Grande do Norte 21 | RO,Rondônia 22 | RR,Roraima 23 | RS,Rio Grande do Sul 24 | SC,Santa Catarina 25 | SE,Sergipe 26 | SP,São Paulo 27 | TO,Tocantins 28 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/dao/ILivroDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface ILivroDAO extends CrudRepository{ 11 | 12 | Livro findById(long id); 13 | 14 | List findAll(); 15 | 16 | Livro save(Livro livro); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/dao/ILivroDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface ILivroDAO extends CrudRepository{ 11 | 12 | Livro findById(long id); 13 | 14 | List findAll(); 15 | 16 | Livro save(Livro livro); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/dao/ILivroDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface ILivroDAO extends CrudRepository{ 11 | 12 | Livro findById(long id); 13 | 14 | List findAll(); 15 | 16 | Livro save(Livro livro); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/dao/ILivroDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface ILivroDAO extends CrudRepository{ 11 | 12 | Livro findById(long id); 13 | 14 | List findAll(); 15 | 16 | Livro save(Livro livro); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/java/br/ufscar/dc/dsw/service/spec/ICartaoService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Cartao; 6 | 7 | public interface ICartaoService { 8 | 9 | Cartao buscarPorId(Long id); 10 | 11 | List buscarTodos(); 12 | 13 | List buscarPorCPF(String cpf); 14 | 15 | void salvar(Cartao cartao); 16 | 17 | void excluir(Long id); 18 | 19 | boolean cartaoTemTransacoes(Long id); 20 | } -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | Alô Mundo 7 | 8 | 9 | 10 |

11 | 12 |

13 | 16 Março 2020 14 |

15 |

16 | 16 Março 2020 17 |

18 | 19 | 20 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS/estados.txt: -------------------------------------------------------------------------------- 1 | AC,Acre 2 | AL,Alagoas 3 | AM,Amazonas 4 | AP,Amapá 5 | BA,Bahia 6 | CE,Ceará 7 | DF,Distrito Federal 8 | ES,Espírito Santo 9 | GO,Goiás 10 | MA,Maranhão 11 | MG,Minas Gerais 12 | MS,Mato Grosso do Sul 13 | MT,Mato Grosso 14 | PA,Pará 15 | PB,Paraíba 16 | PE,Pernambuco 17 | PI,Piauí 18 | PR,Paraná 19 | RJ,Rio de Janeiro 20 | RN,Rio Grande do Norte 21 | RO,Rondônia 22 | RR,Roraima 23 | RS,Rio Grande do Sul 24 | SC,Santa Catarina 25 | SE,Sergipe 26 | SP,São Paulo 27 | TO,Tocantins 28 | -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Server/estados.txt: -------------------------------------------------------------------------------- 1 | AC,Acre 2 | AL,Alagoas 3 | AM,Amazonas 4 | AP,Amapá 5 | BA,Bahia 6 | CE,Ceará 7 | DF,Distrito Federal 8 | ES,Espírito Santo 9 | GO,Goiás 10 | MA,Maranhão 11 | MG,Minas Gerais 12 | MS,Mato Grosso do Sul 13 | MT,Mato Grosso 14 | PA,Pará 15 | PB,Paraíba 16 | PE,Pernambuco 17 | PI,Piauí 18 | PR,Paraná 19 | RJ,Rio de Janeiro 20 | RN,Rio Grande do Norte 21 | RO,Rondônia 22 | RR,Roraima 23 | RS,Rio Grande do Sul 24 | SC,Santa Catarina 25 | SE,Sergipe 26 | SP,São Paulo 27 | TO,Tocantins 28 | -------------------------------------------------------------------------------- /Modulo05/AJAX/db/Derby/create.sql: -------------------------------------------------------------------------------- 1 | connect 'jdbc:derby:Cidades;create=true;user=root;password=root'; 2 | 3 | create table Estado (id bigint not null generated always as identity, nome varchar(30) not null, sigla varchar(2) not null, 4 | constraint Estado_PK primary key (id)); 5 | 6 | create table Cidade (id bigint not null generated always as identity, nome varchar(80) not null, estado_id bigint constraint FK_CIDADE references ESTADO, constraint Cidade_PK primary key (id)); 7 | 8 | disconnect; 9 | 10 | quit; 11 | -------------------------------------------------------------------------------- /Modulo07/SpringDataJPA/src/main/java/br/ufscar/dc/dsw/dao/IPessoaDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Pessoa; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IPessoaDAO extends CrudRepository{ 11 | 12 | Pessoa findById(long id); 13 | 14 | List findAll(); 15 | 16 | Pessoa save(Pessoa pessoa); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo05/Login/db/MySQL/create.sql: -------------------------------------------------------------------------------- 1 | drop database if exists Login; 2 | 3 | create database Login; 4 | 5 | use Login 6 | 7 | create table Usuario(id bigint not null auto_increment, nome varchar(256) not null, login varchar(20) not null unique, senha varchar(64) not null, papel varchar(10), primary key (id)); 8 | 9 | insert into Usuario(nome, login, senha, papel) values ('Administrador', 'admin', 'admin', 'ADMIN'); 10 | 11 | insert into Usuario(nome, login, senha, papel) values ('Usuario', 'user', 'user', 'USER'); 12 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/estados.txt: -------------------------------------------------------------------------------- 1 | AC,Acre 2 | AL,Alagoas 3 | AM,Amazonas 4 | AP,Amapá 5 | BA,Bahia 6 | CE,Ceará 7 | DF,Distrito Federal 8 | ES,Espírito Santo 9 | GO,Goiás 10 | MA,Maranhão 11 | MG,Minas Gerais 12 | MS,Mato Grosso do Sul 13 | MT,Mato Grosso 14 | PA,Pará 15 | PB,Paraíba 16 | PE,Pernambuco 17 | PI,Piauí 18 | PR,Paraná 19 | RJ,Rio de Janeiro 20 | RN,Rio Grande do Norte 21 | RO,Rondônia 22 | RR,Roraima 23 | RS,Rio Grande do Sul 24 | SC,Santa Catarina 25 | SE,Sergipe 26 | SP,São Paulo 27 | TO,Tocantins 28 | -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Server/db/Derby/create.sql: -------------------------------------------------------------------------------- 1 | connect 'jdbc:derby:Cidades;create=true;user=root;password=root'; 2 | 3 | create table Estado (id bigint not null generated always as identity, nome varchar(30) not null, sigla varchar(2) not null, 4 | constraint Estado_PK primary key (id)); 5 | 6 | create table Cidade (id bigint not null generated always as identity, nome varchar(80) not null, estado_id bigint constraint FK_CIDADE references ESTADO, constraint Cidade_PK primary key (id)); 7 | 8 | disconnect; 9 | 10 | quit; 11 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v3/src/main/webapp/denied.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8" isErrorPage="true" %> 3 | <%@ page isELIgnored="false"%> 4 | 6 | 7 | 8 | Erro 9 | 10 | 11 |
12 |

Página não existente

13 |
14 | 15 | -------------------------------------------------------------------------------- /Modulo03/TransferenciaControle/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 3 | 4 | 5 | 6 |
7 |
8 | Login 9 | Usuário:
10 | Senha:
11 | 12 |
13 |
14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Modulo03/TransferenciaControle/src/main/webapp/login.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <% 3 | String usuario = request.getParameter("usuario"); 4 | String senha = request.getParameter("senha"); 5 | if (usuario.equalsIgnoreCase(senha)) { 6 | %> 7 | 8 | 9 | 10 | 11 | <% } else { %> 12 | 13 | <% }%> 14 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Client/src/main/java/br/ufscar/dc/dsw/service/spec/IRestClientService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Cidade; 6 | import br.ufscar.dc.dsw.domain.Estado; 7 | 8 | public interface IRestClientService { 9 | 10 | Long create(Cidade cidade); 11 | 12 | List get(); 13 | List get(Estado estado); 14 | Cidade get(Long id); 15 | 16 | boolean update(Cidade cidade); 17 | 18 | boolean delete(Long id); 19 | } 20 | -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/java/br/ufscar/dc/dsw/dao/ITransacaoDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Transacao; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface ITransacaoDAO extends CrudRepository { 11 | List findAll(); 12 | 13 | Transacao findById(long id); 14 | 15 | Transacao save(Transacao transacao); 16 | 17 | void deleteById(Long id); 18 | } -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/src/main/java/br/ufscar/dc/dsw/dao/IFileDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.FileEntity; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IFileDAO extends CrudRepository{ 11 | 12 | FileEntity findById(long id); 13 | 14 | List findAll(); 15 | 16 | FileEntity save(FileEntity file); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/dao/ICompraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Compra; 8 | import br.ufscar.dc.dsw.domain.Usuario; 9 | 10 | @SuppressWarnings("unchecked") 11 | public interface ICompraDAO extends CrudRepository{ 12 | 13 | Compra findById(long id); 14 | 15 | List findAllByUsuario(Usuario u); 16 | 17 | Compra save(Compra compra); 18 | } -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/dao/ICompraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Compra; 8 | import br.ufscar.dc.dsw.domain.Usuario; 9 | 10 | @SuppressWarnings("unchecked") 11 | public interface ICompraDAO extends CrudRepository{ 12 | 13 | Compra findById(long id); 14 | 15 | List findAllByUsuario(Usuario u); 16 | 17 | Compra save(Compra compra); 18 | } -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/service/spec/IClienteRestService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.util.List; 4 | 5 | import br.ufscar.dc.dsw.domain.Cartao; 6 | import br.ufscar.dc.dsw.domain.Transacao; 7 | 8 | public interface IClienteRestService { 9 | 10 | Cartao buscaCartao(Long id); 11 | 12 | List buscaCartoes(String cpf); 13 | 14 | Transacao buscaTransacao(Long id); 15 | 16 | Long salva(Transacao transacao); 17 | 18 | boolean remove(Long id); 19 | 20 | } 21 | -------------------------------------------------------------------------------- /Modulo07/SpringDataJPA/src/main/java/br/ufscar/dc/dsw/dao/IDisciplinaDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Disciplina; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IDisciplinaDAO extends CrudRepository{ 11 | 12 | Disciplina findById(long id); 13 | 14 | List findAll(); 15 | 16 | Disciplina save(Disciplina disciplina); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo02/AloMundo/dist/WEB-INF/web-old.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | AloMundo 5 | br.ufscar.dc.dsw.AloMundoServlet 6 | 7 | 8 | AloMundo 9 | /TestarAloMundo 10 | 11 | 12 | 13 | 30 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v2/src/main/webapp/erro.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8" isErrorPage="true" %> 3 | <%@ page isELIgnored="false"%> 4 | 6 | 7 | 8 | Erro 9 | 10 | 11 |
12 |

Erro

13 |

<%= exception.getMessage()%>

14 |
15 | 16 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v4/src/main/webapp/erro.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8" isErrorPage="true" %> 3 | <%@ page isELIgnored="false"%> 4 | 6 | 7 | 8 | Erro 9 | 10 | 11 |
12 |

Erro

13 |

<%= exception.getMessage()%>

14 |
15 | 16 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/java/br/ufscar/dc/dsw/dao/IUsuarioDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import org.springframework.data.jpa.repository.Query; 4 | import org.springframework.data.repository.CrudRepository; 5 | import org.springframework.data.repository.query.Param; 6 | 7 | import br.ufscar.dc.dsw.domain.Usuario; 8 | 9 | public interface IUsuarioDAO extends CrudRepository { 10 | @Query("SELECT u FROM Usuario u WHERE u.username = :username") 11 | public Usuario getUserByUsername(@Param("username") String username); 12 | } -------------------------------------------------------------------------------- /Modulo07/SpringDataJPA/src/main/java/br/ufscar/dc/dsw/dao/IDepartamentoDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Departamento; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IDepartamentoDAO extends CrudRepository{ 11 | 12 | Departamento findById(long id); 13 | 14 | List findAll(); 15 | 16 | Departamento save(Departamento departamento); 17 | 18 | void deleteById(Long id); 19 | } -------------------------------------------------------------------------------- /Modulo03/ELJSP-v1/src/main/webapp/login.jsp: -------------------------------------------------------------------------------- 1 | <%@ page import="br.ufscar.dc.dsw.beans.Usuario" %> 2 | <% 3 | String nomeLogin = request.getParameter("usuario"); 4 | String senha = request.getParameter("senha"); 5 | if(senha.equals(nomeLogin)) { 6 | Usuario usuario = new Usuario(); 7 | usuario.setNome("Steve Jobs"); 8 | usuario.setNomeLogin(nomeLogin); 9 | usuario.setSenha(senha); 10 | session.setAttribute("usuarioLogado", usuario); 11 | %> 12 | 13 | <% } 14 | else { %> 15 | 16 | <% } %> 17 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v3/src/main/webapp/erro.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8" isErrorPage="true" %> 3 | <%@ page isELIgnored="false"%> 4 | 6 | 7 | 8 | Erro 9 | 10 | 11 |
12 |

Erro

13 |

<%= exception.getMessage() %>

14 |
15 | 16 | 17 | -------------------------------------------------------------------------------- /Modulo05/Login/db/Derby/create.sql: -------------------------------------------------------------------------------- 1 | connect 'jdbc:derby:Login;create=true;user=root;password=root'; 2 | 3 | create table Usuario(id bigint not null generated always as identity, nome varchar(256) not null, login varchar(20) not null unique, senha varchar(64) not null, papel varchar(10), CONSTRAINT Usuario_PK PRIMARY KEY (id)); 4 | 5 | insert into Usuario(nome, login, senha, papel) values ('Administrador', 'admin', 'admin', 'ADMIN'); 6 | 7 | insert into Usuario(nome, login, senha, papel) values ('Usuario', 'user', 'user', 'USER'); 8 | 9 | disconnect; 10 | 11 | quit; 12 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/dao/IEditoraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IEditoraDAO extends CrudRepository{ 11 | 12 | Editora findById(long id); 13 | 14 | Editora findByCNPJ (String CNPJ); 15 | 16 | List findAll(); 17 | 18 | Editora save(Editora editora); 19 | 20 | void deleteById(Long id); 21 | } 22 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/dao/IEditoraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IEditoraDAO extends CrudRepository{ 11 | 12 | Editora findById(long id); 13 | 14 | Editora findByCNPJ (String CNPJ); 15 | 16 | List findAll(); 17 | 18 | Editora save(Editora editora); 19 | 20 | void deleteById(Long id); 21 | } 22 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/dao/IEditoraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IEditoraDAO extends CrudRepository{ 11 | 12 | Editora findById(long id); 13 | 14 | Editora findByCNPJ (String CNPJ); 15 | 16 | List findAll(); 17 | 18 | Editora save(Editora editora); 19 | 20 | void deleteById(Long id); 21 | } 22 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/dao/IEditoraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IEditoraDAO extends CrudRepository{ 11 | 12 | Editora findById(long id); 13 | 14 | Editora findByCNPJ (String CNPJ); 15 | 16 | List findAll(); 17 | 18 | Editora save(Editora editora); 19 | 20 | void deleteById(Long id); 21 | } 22 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/dao/IEditoraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.repository.CrudRepository; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | 9 | @SuppressWarnings("unchecked") 10 | public interface IEditoraDAO extends CrudRepository{ 11 | 12 | Editora findById(long id); 13 | 14 | Editora findByCNPJ (String CNPJ); 15 | 16 | List findAll(); 17 | 18 | Editora save(Editora editora); 19 | 20 | void deleteById(Long id); 21 | } 22 | -------------------------------------------------------------------------------- /Modulo09/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 09 - REST API (Servidor & Cliente) 7 | - - - 8 | 9 | 10 | 11 | #### Exemplos de código 12 | 13 | 14 | 15 | - [01 - Exemplo de servidor REST (Cidades REST Server)](Roteiro09-01.md) 16 | 17 | 18 | - [02 - Exemplo de cliente de um servidor REST (Cidades REST Server & AJAX)](Roteiro09-02.md) 19 | 20 | - [03 - Transações (CRUD REST API)](Roteiro09-03.md) 21 | 22 | 23 | - [04 - Livraria Virtual - Cliente do REST API (TransacoesRS)](Roteiro09-04.md) -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/conversor/BigDecimalConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import java.math.BigDecimal; 4 | 5 | import org.springframework.core.convert.converter.Converter; 6 | 7 | public class BigDecimalConversor implements Converter { 8 | 9 | @Override 10 | public BigDecimal convert(String text) { 11 | 12 | if (text.isEmpty()) { 13 | return null; 14 | } else { 15 | text = text.replace(',','.'); 16 | } 17 | 18 | return new BigDecimal(Double.parseDouble(text)); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/conversor/BigDecimalConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import java.math.BigDecimal; 4 | 5 | import org.springframework.core.convert.converter.Converter; 6 | 7 | public class BigDecimalConversor implements Converter { 8 | 9 | @Override 10 | public BigDecimal convert(String text) { 11 | 12 | if (text.isEmpty()) { 13 | return null; 14 | } else { 15 | text = text.replace(',','.'); 16 | } 17 | 18 | return new BigDecimal(Double.parseDouble(text)); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/conversor/BigDecimalConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import java.math.BigDecimal; 4 | 5 | import org.springframework.core.convert.converter.Converter; 6 | 7 | public class BigDecimalConversor implements Converter { 8 | 9 | @Override 10 | public BigDecimal convert(String text) { 11 | 12 | if (text.isEmpty()) { 13 | return null; 14 | } else { 15 | text = text.replace(',','.'); 16 | } 17 | 18 | return new BigDecimal(Double.parseDouble(text)); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | Index 7 | 8 | 9 |
10 |

11 |

12 |
    13 |
  • 14 |
15 |
16 | 17 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | Index 7 | 8 | 9 |
10 |

11 |

12 |
    13 |
  • 14 |
15 |
16 | 17 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/conversor/BigDecimalConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import java.math.BigDecimal; 4 | 5 | import org.springframework.core.convert.converter.Converter; 6 | 7 | public class BigDecimalConversor implements Converter { 8 | 9 | @Override 10 | public BigDecimal convert(String text) { 11 | 12 | if (text.isEmpty()) { 13 | return null; 14 | } else { 15 | text = text.replace(',','.'); 16 | } 17 | 18 | return new BigDecimal(Double.parseDouble(text)); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/conversor/BigDecimalConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import java.math.BigDecimal; 4 | 5 | import org.springframework.core.convert.converter.Converter; 6 | 7 | public class BigDecimalConversor implements Converter { 8 | 9 | @Override 10 | public BigDecimal convert(String text) { 11 | 12 | if (text.isEmpty()) { 13 | return null; 14 | } else { 15 | text = text.replace(',','.'); 16 | } 17 | 18 | return new BigDecimal(Double.parseDouble(text)); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/java/br/ufscar/dc/dsw/domain/enumeration/Categoria.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.domain.enumeration; 2 | 3 | public enum Categoria { 4 | 5 | COMPRA("COMPRA"), PAGAMENTO("PAGAMENTO"); 6 | 7 | private String value; 8 | 9 | private Categoria(String value) { 10 | this.value = value; 11 | } 12 | 13 | public String getValue() { 14 | return value; 15 | } 16 | 17 | public static Categoria parse(String value) { 18 | if (value.equals(COMPRA.getValue())) { 19 | return COMPRA; 20 | } else { 21 | return PAGAMENTO; 22 | } 23 | } 24 | 25 | } -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/java/br/ufscar/dc/dsw/domain/enumeration/Status.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.domain.enumeration; 2 | 3 | public enum Status { 4 | 5 | CONFIRMADA("CONFIRMADA"), CANCELADA("CANCELADA"); 6 | 7 | private String value; 8 | 9 | private Status(String value) { 10 | this.value = value; 11 | } 12 | 13 | public String getValue() { 14 | return value; 15 | } 16 | 17 | public static Status parse(String value) { 18 | if (value.equals(CONFIRMADA.getValue())) { 19 | return CONFIRMADA; 20 | } else { 21 | return CANCELADA; 22 | } 23 | } 24 | 25 | } -------------------------------------------------------------------------------- /Modulo03/AloMundoJSP/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8" %> 2 | <%@ page import="java.util.Date" %> 3 | 4 | 5 | 6 | 7 | 8 | JSP Page 9 | 10 | 11 | 12 |

Alô Mundo

13 | 14 |

<%= new Date() %>

15 | 16 | <% for (int i = 0; i < 10; i++) { 17 | String linha = "Linha " + i; 18 | %> 19 | <%= i%>: <%= linha%>
20 | <% }%> 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Modulo06/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 06 - Spring MVC 7 | - - - 8 | 9 | 10 | 11 | #### Exemplos de código 12 | 13 | 14 | 15 | - [01 - Aplicação "Alô Mundo" usando Spring MVC](Roteiro06-01.md) 16 | 17 | 18 | - [02 - Internacionalizando a aplicação "Alô Mundo MVC" (Idioma do Browser)](Roteiro06-02.md) 19 | 20 | 21 | - [03 - Internacionalizando a aplicação "Alô Mundo MVC" (Através de um menu de opções)](Roteiro06-03.md) 22 | 23 | - [04 - Implantando a aplicação "Alô Mundo MVC" no Tomcat](Roteiro06-04.md) -------------------------------------------------------------------------------- /Modulo05/Livraria-v4/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: "3.3" 2 | services: 3 | mysql: 4 | image: mysql:5.6.36 5 | restart: always 6 | container_name: mysql 7 | env_file: 8 | - .env 9 | volumes: 10 | - './db/MySQL:/tmp/db' 11 | command: mysqld --init-file="/tmp/db/create.sql" --max-connections=500 12 | tomcat: 13 | image: tomcat:9.0.75 14 | container_name: tomcat 15 | env_file: 16 | - .env 17 | ports: 18 | - "8080:8080" 19 | volumes: 20 | - ./target/Livraria.war:/usr/local/tomcat/webapps/Livraria.war 21 | depends_on: 22 | - mysql 23 | -------------------------------------------------------------------------------- /UploadFile/UploadFileMVC/src/main/java/br/ufscar/dc/dsw/model/FileInfo.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.model; 2 | 3 | public class FileInfo { 4 | private String name; 5 | private String url; 6 | 7 | public FileInfo(String name, String url) { 8 | this.name = name; 9 | this.url = url; 10 | } 11 | 12 | public String getName() { 13 | return this.name; 14 | } 15 | 16 | public void setName(String name) { 17 | this.name = name; 18 | } 19 | 20 | public String getUrl() { 21 | return this.url; 22 | } 23 | 24 | public void setUrl(String url) { 25 | this.url = url; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v1/src/main/webapp/principal.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | 4 | 5 | 6 | 7 | 8 | Principal 9 | 10 | 11 | 12 | Bem-vindo ${sessionScope.usuarioLogado.nome} 13 | 14 | (${sessionScope.usuarioLogado.nomeLogin})! 15 |
16 | Seu último acesso foi em ${sessionScope.usuarioLogado.ultimoAcesso}!
17 | Sua senha é ${sessionScope.usuarioLogado.senha} 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/templates/fragments/header.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 | 17 |
18 | 19 | -------------------------------------------------------------------------------- /Modulo05/Login/src/main/webapp/logado/usuario/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | 4 | 5 | 6 | 7 | Menu do Sistema 8 | 9 | 10 |

Página do Usuário

11 |

Olá ${sessionScope.usuarioLogado.nome}

12 |
    13 |
  • 14 | Sair 15 |
  • 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/templates/fragments/header.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 | 17 |
18 | 19 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | AJAX 4 | 5 | 6 | 7 | 8 | Busca por estado: Clique aqui (Dynamic select) 9 |

10 | Busca por nome: Clique aqui (Autocomplete) 11 |

12 | Tabela Dinâmica: clique aqui (filtro por nome) 13 |

14 | 15 | -------------------------------------------------------------------------------- /UploadFile/UploadFileMVC/src/main/java/br/ufscar/dc/dsw/service/spec/FilesStorageService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.spec; 2 | 3 | import java.nio.file.Path; 4 | import java.util.stream.Stream; 5 | 6 | import org.springframework.core.io.Resource; 7 | import org.springframework.web.multipart.MultipartFile; 8 | 9 | public interface FilesStorageService { 10 | 11 | public void init(); 12 | 13 | public void save(MultipartFile file); 14 | 15 | public Resource load(String filename); 16 | 17 | public boolean delete(String filename); 18 | 19 | public void deleteAll(); 20 | 21 | public Stream loadAll(); 22 | } 23 | -------------------------------------------------------------------------------- /Modulo05/Login/src/main/webapp/logado/admin/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | 4 | 5 | 6 | 7 | Menu do Sistema 8 | 9 | 10 |

Página do Administrador

11 |

Olá ${sessionScope.usuarioLogado.nome}

12 |
    13 |
  • 14 | Sair 15 |
  • 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/resources/templates/tabelaDinamica.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | AJAX (dynamic table) 6 | 7 | 8 | 9 | 10 |
11 |
12 |

Lista de Cidades

13 | 14 |
15 |
16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/templates/fragments/validacao.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/templates/fragments/validacao.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/templates/fragments/validacao.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/templates/fragments/validacao.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/templates/fragments/validacao.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/templates/fragments/validacao.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 |
7 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/java/br/ufscar/dc/dsw/beans/ItemMenu.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.beans; 2 | 3 | public class ItemMenu { 4 | private String nome; 5 | private String link; 6 | 7 | public ItemMenu(String nome, String link) { 8 | this.nome = nome; 9 | this.link = link; 10 | } 11 | 12 | public void setNome(String nome) { 13 | this.nome = nome; 14 | } 15 | 16 | public String getNome() { 17 | return nome; 18 | } 19 | 20 | public void setLink(String link) { 21 | this.link = link; 22 | } 23 | 24 | public String getLink() { 25 | return link; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Modulo03/ObjetosImplicitos/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 3 | 4 | 5 | 6 |

Hello World!

7 | 8 | <% 9 | String numValue = request.getParameter("num"); 10 | int num = (numValue == null) ? 5 : Integer.parseInt(numValue); 11 | 12 | String nome = "Fulano"; 13 | String param = request.getParameter("nome"); 14 | if (param != null) { 15 | nome = param; 16 | } 17 | 18 | for(int i=0; i < num; i++) { 19 | %> 20 | Olá <%= nome %>!
21 | <% } %> 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Modulo05/AJAX/src/main/java/br/ufscar/dc/dsw/bean/BuscaPorNomeBean.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.bean; 2 | 3 | import br.ufscar.dc.dsw.dao.CidadeDAO; 4 | import br.ufscar.dc.dsw.domain.Cidade; 5 | 6 | import java.util.List; 7 | 8 | public class BuscaPorNomeBean { 9 | 10 | public List getCidades() { 11 | CidadeDAO dao = new CidadeDAO(); 12 | return dao.getAll(); 13 | } 14 | 15 | public List getCidades(String nome) { 16 | CidadeDAO dao = new CidadeDAO(); 17 | List lista; 18 | if (nome.length() > 0) { 19 | lista = dao.getByNome(nome); 20 | } else { 21 | lista = dao.getAll(); 22 | } 23 | return lista; 24 | } 25 | } -------------------------------------------------------------------------------- /Modulo03/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 03 - Java Server Pages (JSPs) 7 | 8 | - - - 9 | 10 | 11 | 12 | #### Exemplos de código 13 | 14 | 15 | 16 | - [01 - Aplicação "Alô Mundo" usando JSP](Roteiro03-01.md) 17 | 18 | 19 | - [02 - Diferentes tipos de erros com JSP](Roteiro03-02.md) 20 | 21 | 22 | - [03 - Objetos implícitos](Roteiro03-03.md) 23 | 24 | 25 | - [04 - Transferindo controle para outros recursos web](Roteiro03-04.md) 26 | 27 | 28 | - [05 - Expression Language](Roteiro03-05.md) 29 | 30 | 31 | - [06 - JSP Standard Tag Library (JSTL)](Roteiro03-06.md) -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Server/src/main/java/br/ufscar/dc/dsw/bean/BuscaPorNomeBean.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.bean; 2 | 3 | import br.ufscar.dc.dsw.dao.CidadeDAO; 4 | import br.ufscar.dc.dsw.domain.Cidade; 5 | 6 | import java.util.List; 7 | 8 | public class BuscaPorNomeBean { 9 | 10 | public List getCidades() { 11 | CidadeDAO dao = new CidadeDAO(); 12 | return dao.getAll(); 13 | } 14 | 15 | public List getCidades(String nome) { 16 | CidadeDAO dao = new CidadeDAO(); 17 | List lista; 18 | if (nome.length() > 0) { 19 | lista = dao.getByNome(nome); 20 | } else { 21 | lista = dao.getAll(); 22 | } 23 | return lista; 24 | } 25 | } -------------------------------------------------------------------------------- /Modulo05/Livraria-v3/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> 4 | 5 | 6 | 7 | 8 | 9 | 10 | <fmt:message key="page.title" /> 11 | 12 | 13 | 14 | 15 | CRUD 16 | 17 |
18 | CRUD 19 | 20 | 21 |
22 | 23 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/dao/ILivroDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | 8 | import br.ufscar.dc.dsw.domain.Livro; 9 | 10 | @SuppressWarnings("unchecked") 11 | public interface ILivroDAO extends CrudRepository{ 12 | 13 | Livro findById(long id); 14 | 15 | List findAll(); 16 | 17 | @Query("select l from Livro l where l.titulo like %?1%") 18 | List findAllByTitulo(String titulo); 19 | 20 | Livro save(Livro livro); 21 | 22 | void deleteById(Long id); 23 | } -------------------------------------------------------------------------------- /Modulo03/ELJSP-v1/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 3 | 4 | 5 | 6 | Login page 7 | 8 | 9 |
10 |
11 | Login 12 | Usuário:
13 | Senha:
14 | 15 |
16 |
17 | 18 | 19 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/java/br/ufscar/dc/dsw/beans/Menu.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.beans; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | public class Menu { 7 | 8 | List itensMenu; 9 | 10 | public Menu() { 11 | itensMenu = new ArrayList<>(); 12 | itensMenu.add(new ItemMenu("Principal", "principal.jsp")); 13 | itensMenu.add(new ItemMenu("Notícias", "noticias.jsp")); 14 | itensMenu.add(new ItemMenu("Produtos", "produtos.jsp")); 15 | itensMenu.add(new ItemMenu("Fale conosco", "contato.jsp")); 16 | } 17 | 18 | public List getItensMenu() { 19 | return itensMenu; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /UploadFile/Roteiro01.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | ***Upload* de arquivos** 5 | 6 | - - - 7 | 8 | #### 01 - *Upload* de arquivos: Servlets e JSPs 9 | [Código](https://github.com/delanobeder/DSW1/blob/master/UploadFile/UploadFileJSP) 10 | 11 | - - - 12 | 13 | Exemplo de aplicação web que disponibiliza a funcionalidade de *Upload* de arquivos. Arquivos são armazenados em um diretório -- presente no servidor de aplicações (por exemplo, o Tomcat). 14 | 15 | Exemplo adaptado do apresentado em https://www.baeldung.com/upload-file-servlet 16 | 17 | Tecnologias utilizadas: Servlets, JSPs e Apache Commons FileUpload. 18 | 19 | -------------------------------------------------------------------------------- /UploadFile/Roteiro02.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | ***Upload* de arquivos** 5 | 6 | - - - 7 | 8 | #### 02 - *Upload* de arquivos: SpringMVC 9 | [Código](https://github.com/delanobeder/DSW1/blob/master/UploadFile/UploadFileMVC) 10 | 11 | - - - 12 | 13 | Exemplo de aplicação web que disponibiliza a funcionalidade de *Upload* de arquivos. Arquivos são armazenados em um diretório -- presente no servidor de aplicações (por exemplo, o Tomcat). 14 | 15 | Exemplo adaptado do apresentado em https://www.baeldung.com/spring-file-upload 16 | 17 | Tecnologias utilizadas: SpringMVC, Thymeleaf e Apache Commons FileUpload. 18 | 19 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/dao/ICompraDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | 8 | import br.ufscar.dc.dsw.domain.Compra; 9 | import br.ufscar.dc.dsw.domain.Usuario; 10 | 11 | @SuppressWarnings("unchecked") 12 | public interface ICompraDAO extends CrudRepository{ 13 | 14 | Compra findById(long id); 15 | 16 | List findAllByUsuario(Usuario u); 17 | 18 | @Query("select c from Compra c where c.usuario.id = ?1") 19 | List findAllByUsuarioID(Long id); 20 | 21 | Compra save(Compra compra); 22 | } -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | AJAX 4 | 5 | 6 | 7 | 8 | Busca por estado: Clique aqui (Dynamic select) 9 |

10 | Busca por nome: Clique aqui (Autocomplete) 11 |

12 | Tabela Dinâmica: clique aqui (filtro por nome) 13 |

14 | Lista Cidades: clique aqui (Lista Cidades) 15 | 16 | -------------------------------------------------------------------------------- /Modulo05/AJAX/src/main/java/br/ufscar/dc/dsw/bean/BuscaPorEstadoBean.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.bean; 2 | 3 | import br.ufscar.dc.dsw.dao.CidadeDAO; 4 | import br.ufscar.dc.dsw.dao.EstadoDAO; 5 | import br.ufscar.dc.dsw.domain.Cidade; 6 | import br.ufscar.dc.dsw.domain.Estado; 7 | 8 | import java.util.List; 9 | 10 | public class BuscaPorEstadoBean { 11 | 12 | public List getEstados() { 13 | EstadoDAO dao = new EstadoDAO(); 14 | return dao.getAll(); 15 | } 16 | 17 | public List getCidades(String sigla) { 18 | EstadoDAO dao = new EstadoDAO(); 19 | Estado estado = dao.getBySigla(sigla); 20 | return new CidadeDAO().getByEstado(estado); 21 | } 22 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/validation/UniqueCNPJ.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.validation; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | import jakarta.validation.Constraint; 9 | import jakarta.validation.Payload; 10 | 11 | @Constraint(validatedBy = UniqueCNPJValidator.class) 12 | @Target(ElementType.FIELD) 13 | @Retention(RetentionPolicy.RUNTIME) 14 | public @interface UniqueCNPJ { 15 | String message() default "CNPJ is already registered"; 16 | Class[] groups() default { }; 17 | Class[] payload() default { }; 18 | } 19 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/validation/UniqueCNPJ.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.validation; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | import jakarta.validation.Constraint; 9 | import jakarta.validation.Payload; 10 | 11 | @Constraint(validatedBy = UniqueCNPJValidator.class) 12 | @Target(ElementType.FIELD) 13 | @Retention(RetentionPolicy.RUNTIME) 14 | public @interface UniqueCNPJ { 15 | String message() default "CNPJ is already registered"; 16 | Class[] groups() default { }; 17 | Class[] payload() default { }; 18 | } 19 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/validation/UniqueCNPJ.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.validation; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | import jakarta.validation.Constraint; 9 | import jakarta.validation.Payload; 10 | 11 | @Constraint(validatedBy = UniqueCNPJValidator.class) 12 | @Target(ElementType.FIELD) 13 | @Retention(RetentionPolicy.RUNTIME) 14 | public @interface UniqueCNPJ { 15 | String message() default "CNPJ is already registered"; 16 | Class[] groups() default { }; 17 | Class[] payload() default { }; 18 | } 19 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/validation/UniqueCNPJ.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.validation; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | import jakarta.validation.Constraint; 9 | import jakarta.validation.Payload; 10 | 11 | @Constraint(validatedBy = UniqueCNPJValidator.class) 12 | @Target(ElementType.FIELD) 13 | @Retention(RetentionPolicy.RUNTIME) 14 | public @interface UniqueCNPJ { 15 | String message() default "CNPJ is already registered"; 16 | Class[] groups() default { }; 17 | Class[] payload() default { }; 18 | } 19 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/validation/UniqueCNPJ.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.validation; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | import jakarta.validation.Constraint; 9 | import jakarta.validation.Payload; 10 | 11 | @Constraint(validatedBy = UniqueCNPJValidator.class) 12 | @Target(ElementType.FIELD) 13 | @Retention(RetentionPolicy.RUNTIME) 14 | public @interface UniqueCNPJ { 15 | String message() default "CNPJ is already registered"; 16 | Class[] groups() default { }; 17 | Class[] payload() default { }; 18 | } 19 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | # MYSQL 2 | 3 | spring.datasource.url = jdbc:mysql://localhost:3306/UploadFile?createDatabaseIfNotExist=true 4 | spring.datasource.username = root 5 | spring.datasource.password = root 6 | 7 | # JPA 8 | 9 | spring.jpa.hibernate.ddl-auto = create 10 | spring.jpa.show-sql = true 11 | spring.jpa.open-in-view = true 12 | spring.jpa.hibernate.naming.physical-strategy = org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl 13 | 14 | # MultipartFile 15 | 16 | spring.servlet.multipart.max-file-size=40MB 17 | spring.servlet.multipart.max-request-size=50MB 18 | 19 | spring.servlet.multipart.enabled=true 20 | spring.servlet.multipart.location=${java.io.tmpdir} -------------------------------------------------------------------------------- /Modulo08/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 08 - SpringMVC, Thymeleaf & Spring Data JPA 7 | - - - 8 | 9 | 10 | 11 | #### Exemplos de código 12 | 13 | 14 | 15 | - [01 - CRUD MVC utilizando as tecnologias Spring MVC, Thymeleaf & JPA](Roteiro08-01.md) 16 | 17 | 18 | - [02 - Internacionalizando a aplicação "LivrariaMVC" (Através de um menu de opções)](Roteiro08-02.md) 19 | 20 | 21 | - [03 - Autenticação/Autorização (Spring Security)](Roteiro08-03.md) 22 | 23 | 24 | - [04 - Autenticação/Autorização (Spring Security/Acesso a banco de dados)](Roteiro08-04.md) 25 | 26 | 27 | - [05 - Livraria Virtual com Autenticação/Autorização](Roteiro08-05.md) -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/java/br/ufscar/dc/dsw/dao/ICartaoDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | import org.springframework.data.repository.query.Param; 8 | 9 | import br.ufscar.dc.dsw.domain.Cartao; 10 | 11 | @SuppressWarnings("unchecked") 12 | public interface ICartaoDAO extends CrudRepository { 13 | List findAll(); 14 | 15 | Cartao findById(long id); 16 | 17 | Cartao save(Cartao editora); 18 | 19 | void deleteById(Long id); 20 | 21 | @Query("select c from Cartao c where CPF = :cpf") 22 | public List findByCPF(@Param("cpf") String cpf); 23 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/config/MvcConfig.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.config; 2 | 3 | import org.springframework.context.annotation.ComponentScan; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.format.FormatterRegistry; 6 | import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; 7 | 8 | import br.ufscar.dc.dsw.conversor.BigDecimalConversor; 9 | 10 | 11 | @Configuration 12 | @ComponentScan(basePackages = "br.ufscar.dc.dsw.config") 13 | public class MvcConfig implements WebMvcConfigurer { 14 | 15 | @Override 16 | public void addFormatters(FormatterRegistry registry) { 17 | registry.addConverter(new BigDecimalConversor()); 18 | } 19 | } -------------------------------------------------------------------------------- /Modulo03/TransferenciaControle/src/main/webapp/sucesso.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | 4 | 5 | 6 | 7 | 8 | JSP Page 9 | 10 | 11 | <% String voceEstaEm = "AT9 - Sala 197"; %> 12 | 13 | <%@include file="cabecalho.jsp" %> 14 | 15 | Menu de opções:

16 | Conteúdo da página
17 | Conteúdo da página
18 | Conteúdo da página
19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /Modulo05/Login/src/main/java/br/ufscar/dc/dsw/util/Erro.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.util; 2 | 3 | import java.io.Serializable; 4 | import java.util.ArrayList; 5 | import java.util.List; 6 | 7 | public final class Erro implements Serializable { 8 | 9 | private static final long serialVersionUID = 1L; 10 | 11 | private final List erros; 12 | 13 | public Erro() { 14 | erros = new ArrayList<>(); 15 | } 16 | 17 | public Erro(String mensagem) { 18 | erros = new ArrayList<>(); 19 | erros.add(mensagem); 20 | } 21 | 22 | public void add(String mensagem) { 23 | erros.add(mensagem); 24 | } 25 | 26 | public boolean isExisteErros() { 27 | return !erros.isEmpty(); 28 | } 29 | 30 | public List getErros() { 31 | return erros; 32 | } 33 | } -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | # MYSQL 2 | 3 | spring.datasource.url = jdbc:mysql://localhost:3306/Cidades 4 | spring.datasource.username = root 5 | spring.datasource.password = root 6 | spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver 7 | 8 | # DERBY 9 | 10 | # spring.datasource.url = jdbc:derby://localhost:1527/Cidades 11 | # spring.datasource.username = root 12 | # spring.datasource.password = root 13 | # spring.datasource.driver-class-name = org.apache.derby.jdbc.ClientDriver 14 | 15 | # JPA 16 | 17 | spring.jpa.hibernate.ddl-auto = update 18 | spring.jpa.show-sql = true 19 | spring.jpa.open-in-view = true 20 | spring.jpa.hibernate.naming.physical-strategy = org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl 21 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/src/main/java/br/ufscar/dc/dsw/controller/ListFileController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import java.io.IOException; 4 | 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.stereotype.Controller; 7 | import org.springframework.ui.ModelMap; 8 | import org.springframework.web.bind.annotation.GetMapping; 9 | 10 | import br.ufscar.dc.dsw.service.spec.IFileService; 11 | 12 | @Controller 13 | public class ListFileController { 14 | 15 | @Autowired 16 | private IFileService service; 17 | 18 | @GetMapping("/") 19 | public String list(ModelMap model) throws IOException { 20 | 21 | model.addAttribute("files", service.buscarTodos()); 22 | 23 | return "index"; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v4/src/main/java/br/ufscar/dc/dsw/util/Erro.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.util; 2 | 3 | import java.io.Serializable; 4 | import java.util.ArrayList; 5 | import java.util.List; 6 | 7 | public final class Erro implements Serializable { 8 | 9 | private static final long serialVersionUID = 1L; 10 | 11 | private final List erros; 12 | 13 | public Erro() { 14 | erros = new ArrayList<>(); 15 | } 16 | 17 | public Erro(String mensagem) { 18 | erros = new ArrayList<>(); 19 | erros.add(mensagem); 20 | } 21 | 22 | public void add(String mensagem) { 23 | erros.add(mensagem); 24 | } 25 | 26 | public boolean isExisteErros() { 27 | return !erros.isEmpty(); 28 | } 29 | 30 | public List getErros() { 31 | return erros; 32 | } 33 | } -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v1/src/main/java/br/ufscar/dc/dsw/controller/AloMundoController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import java.text.SimpleDateFormat; 4 | import java.util.Calendar; 5 | 6 | import org.springframework.stereotype.Controller; 7 | import org.springframework.ui.Model; 8 | import org.springframework.web.bind.annotation.GetMapping; 9 | 10 | @Controller 11 | public class AloMundoController { 12 | 13 | @GetMapping("/") 14 | public String index(Model model) { 15 | 16 | SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss - dd MMMM yyyy"); 17 | 18 | Calendar cal = Calendar.getInstance(); 19 | model.addAttribute("date", dateFormat.format(cal.getTime())); 20 | 21 | return "index"; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/conversor/LivroConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | import br.ufscar.dc.dsw.service.spec.ILivroService; 9 | 10 | @Component 11 | public class LivroConversor implements Converter{ 12 | 13 | @Autowired 14 | private ILivroService service; 15 | 16 | @Override 17 | public Livro convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/conversor/LivroConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | import br.ufscar.dc.dsw.service.spec.ILivroService; 9 | 10 | @Component 11 | public class LivroConversor implements Converter{ 12 | 13 | @Autowired 14 | private ILivroService service; 15 | 16 | @Override 17 | public Livro convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/conversor/LivroConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Livro; 8 | import br.ufscar.dc.dsw.service.spec.ILivroService; 9 | 10 | @Component 11 | public class LivroConversor implements Converter{ 12 | 13 | @Autowired 14 | private ILivroService service; 15 | 16 | @Override 17 | public Livro convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/java/br/ufscar/dc/dsw/config/MvcConfig.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.config; 2 | 3 | import org.springframework.context.annotation.Configuration; 4 | import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; 5 | import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; 6 | 7 | @Configuration 8 | public class MvcConfig implements WebMvcConfigurer { 9 | public void addViewControllers(ViewControllerRegistry registry) { 10 | registry.addViewController("/").setViewName("index"); 11 | registry.addViewController("/buscaEstado").setViewName("buscaEstado"); 12 | registry.addViewController("/buscaNome").setViewName("buscaNome"); 13 | registry.addViewController("/tabelaDinamica").setViewName("tabelaDinamica"); 14 | } 15 | } -------------------------------------------------------------------------------- /UploadFile/UploadFileMVC/src/main/java/br/ufscar/dc/dsw/UploadFileMvcApplication.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.springframework.boot.CommandLineRunner; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | import org.springframework.context.annotation.Bean; 7 | 8 | import br.ufscar.dc.dsw.service.spec.FilesStorageService; 9 | 10 | @SpringBootApplication 11 | public class UploadFileMvcApplication { 12 | 13 | public static void main(String[] args) { 14 | SpringApplication.run(UploadFileMvcApplication.class, args); 15 | } 16 | 17 | @Bean 18 | CommandLineRunner run(FilesStorageService service) throws Exception { 19 | return args -> { 20 | service.init(); 21 | }; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/dao/IUsuarioDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | import org.springframework.data.repository.query.Param; 8 | 9 | import br.ufscar.dc.dsw.domain.Usuario; 10 | 11 | @SuppressWarnings("unchecked") 12 | public interface IUsuarioDAO extends CrudRepository { 13 | 14 | Usuario findById(long id); 15 | 16 | List findAll(); 17 | 18 | Usuario save(Usuario usuario); 19 | 20 | void deleteById(Long id); 21 | 22 | @Query("SELECT u FROM Usuario u WHERE u.username = :username") 23 | public Usuario getUserByUsername(@Param("username") String username); 24 | } -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/dao/IUsuarioDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | import org.springframework.data.repository.query.Param; 8 | 9 | import br.ufscar.dc.dsw.domain.Usuario; 10 | 11 | @SuppressWarnings("unchecked") 12 | public interface IUsuarioDAO extends CrudRepository { 13 | 14 | Usuario findById(long id); 15 | 16 | List findAll(); 17 | 18 | Usuario save(Usuario usuario); 19 | 20 | void deleteById(Long id); 21 | 22 | @Query("SELECT u FROM Usuario u WHERE u.username = :username") 23 | public Usuario getUserByUsername(@Param("username") String username); 24 | } -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/dao/IUsuarioDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | import org.springframework.data.repository.query.Param; 8 | 9 | import br.ufscar.dc.dsw.domain.Usuario; 10 | 11 | @SuppressWarnings("unchecked") 12 | public interface IUsuarioDAO extends CrudRepository { 13 | 14 | Usuario findById(long id); 15 | 16 | List findAll(); 17 | 18 | Usuario save(Usuario usuario); 19 | 20 | void deleteById(Long id); 21 | 22 | @Query("SELECT u FROM Usuario u WHERE u.username = :username") 23 | public Usuario getUserByUsername(@Param("username") String username); 24 | } -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/webapp/login.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/up: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | populate_database() { 4 | 5 | cd Server 6 | 7 | mysql -uroot -proot < db/MySQL/create.sql 8 | 9 | mvn clean package 10 | 11 | mvn exec:java -Dexec.cleanupDaemonThreads=false -Dexec.mainClass="br.ufscar.dc.dsw.dao.PopulaBD" 12 | 13 | cd .. 14 | } 15 | 16 | deploy_server() { 17 | 18 | cd Server 19 | 20 | mvn tomcat7:redeploy 21 | 22 | mvn clean 23 | 24 | cd .. 25 | } 26 | 27 | deploy_client() { 28 | 29 | cd Client 30 | 31 | mvn tomcat7:redeploy 32 | 33 | mvn clean 34 | 35 | cd .. 36 | } 37 | 38 | while getopts ":p" option; do 39 | case $option in 40 | p) 41 | populate_database 42 | esac 43 | done 44 | 45 | deploy_server 46 | deploy_client -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/conversor/EditoraConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | import br.ufscar.dc.dsw.service.spec.IEditoraService; 9 | 10 | @Component 11 | public class EditoraConversor implements Converter{ 12 | 13 | @Autowired 14 | private IEditoraService service; 15 | 16 | @Override 17 | public Editora convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/java/br/ufscar/dc/dsw/conversor/EditoraConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | import br.ufscar.dc.dsw.service.spec.IEditoraService; 9 | 10 | @Component 11 | public class EditoraConversor implements Converter{ 12 | 13 | @Autowired 14 | private IEditoraService service; 15 | 16 | @Override 17 | public Editora convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/java/br/ufscar/dc/dsw/conversor/EditoraConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | import br.ufscar.dc.dsw.service.spec.IEditoraService; 9 | 10 | @Component 11 | public class EditoraConversor implements Converter{ 12 | 13 | @Autowired 14 | private IEditoraService service; 15 | 16 | @Override 17 | public Editora convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/conversor/EditoraConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | import br.ufscar.dc.dsw.service.spec.IEditoraService; 9 | 10 | @Component 11 | public class EditoraConversor implements Converter{ 12 | 13 | @Autowired 14 | private IEditoraService service; 15 | 16 | @Override 17 | public Editora convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/java/br/ufscar/dc/dsw/conversor/EditoraConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | 7 | import br.ufscar.dc.dsw.domain.Editora; 8 | import br.ufscar.dc.dsw.service.spec.IEditoraService; 9 | 10 | @Component 11 | public class EditoraConversor implements Converter{ 12 | 13 | @Autowired 14 | private IEditoraService service; 15 | 16 | @Override 17 | public Editora convert(String text) { 18 | 19 | if (text.isEmpty()) { 20 | return null; 21 | } 22 | 23 | Long id = Long.valueOf(text); 24 | return service.buscarPorId(id); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/templates/admin/index.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 |
11 |

12 |

13 | 14 | [[${#authentication.principal.username}]]! 15 |

16 | 18 |
19 | 20 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/templates/user/index.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 |
11 |

12 |

13 | 14 | [[${#authentication.principal.username}]]! 15 |

16 | 18 |
19 | 20 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/templates/fragments/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 |
9 |
10 | 11 | 19 |
20 |
21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/templates/user/index.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 |
11 |

12 |

13 | 14 | [[${#authentication.principal.username}]]! 15 |

16 | 18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/templates/fragments/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 |
9 |
10 | 11 | 19 |
20 |
21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/templates/fragments/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 |
9 |
10 | 11 | 19 |
20 |
21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/templates/admin/index.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 |
11 |

12 |

13 | 14 | [[${#authentication.principal.username}]]! 15 |

16 | 18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/java/br/ufscar/dc/dsw/AloMundoMvcApplication.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.boot.builder.SpringApplicationBuilder; 6 | import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; 7 | 8 | @SpringBootApplication 9 | public class AloMundoMvcApplication extends SpringBootServletInitializer { 10 | 11 | public static void main(String[] args) { 12 | SpringApplication.run(AloMundoMvcApplication.class, args); 13 | } 14 | 15 | @Override 16 | protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { 17 | return builder.sources(AloMundoMvcApplication.class); 18 | } 19 | 20 | } -------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | # MYSQL 2 | 3 | spring.datasource.url = jdbc:mysql://localhost:3306/Transacoes?createDatabaseIfNotExist=true 4 | spring.datasource.username = root 5 | spring.datasource.password = root 6 | 7 | # DERBY 8 | 9 | # spring.datasource.url=jdbc:derby://localhost:1527/Transacoes 10 | # spring.datasource.username=root 11 | # spring.datasource.password=root 12 | # spring.datasource.driver-class-name=org.apache.derby.jdbc.ClientDriver 13 | 14 | # JPA 15 | 16 | spring.jpa.hibernate.ddl-auto = create 17 | spring.jpa.show-sql = true 18 | spring.jpa.open-in-view = true 19 | spring.jpa.generate-ddl=true 20 | spring.jpa.hibernate.naming.physical-strategy = org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl 21 | 22 | # SERVER PORT 23 | 24 | server.port = 8081 -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Server/src/main/java/br/ufscar/dc/dsw/bean/BuscaPorEstadoBean.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.bean; 2 | 3 | import br.ufscar.dc.dsw.dao.CidadeDAO; 4 | import br.ufscar.dc.dsw.dao.EstadoDAO; 5 | import br.ufscar.dc.dsw.domain.Cidade; 6 | import br.ufscar.dc.dsw.domain.Estado; 7 | 8 | import java.util.List; 9 | 10 | public class BuscaPorEstadoBean { 11 | 12 | public List getEstados() { 13 | EstadoDAO dao = new EstadoDAO(); 14 | return dao.getAll(); 15 | } 16 | 17 | public List getCidades(String sigla) { 18 | Estado estado = new EstadoDAO().getBySigla(sigla); 19 | if (estado == null) { 20 | return new CidadeDAO().getAll(); 21 | } else { 22 | return new CidadeDAO().getByEstado(estado); 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Modulo07/JPA/src/main/java/br/ufscar/dc/dsw/dao/GenericDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import jakarta.persistence.EntityManager; 6 | import jakarta.persistence.EntityManagerFactory; 7 | import jakarta.persistence.Persistence; 8 | 9 | public abstract class GenericDAO { 10 | 11 | private static final EntityManagerFactory emf = Persistence.createEntityManagerFactory("JPAPU"); 12 | 13 | protected EntityManager getEntityManager() { 14 | return emf.createEntityManager(); 15 | } 16 | 17 | public abstract T find(Long id); 18 | 19 | public abstract List findAll(); 20 | 21 | public abstract void save(T t); 22 | 23 | public abstract void update(T t); 24 | 25 | public abstract void delete(Long id); 26 | 27 | public static void close() { 28 | emf.close(); 29 | } 30 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/templates/fragments/alert.html: -------------------------------------------------------------------------------- 1 |
2 | 11 |
12 | 13 |
14 | 23 |
-------------------------------------------------------------------------------- /Modulo09/TransacoesRS/src/main/resources/templates/fragments/alert.html: -------------------------------------------------------------------------------- 1 |
2 | 11 |
12 | 13 |
14 | 23 |
-------------------------------------------------------------------------------- /Modulo02/README.md: -------------------------------------------------------------------------------- 1 | ## DESENVOLVIMENTO DE SOFTWARE PARA A WEB 1 2 | **Prof. Delano M. Beder (UFSCar)** 3 | 4 | - - - 5 | 6 | #### Módulo 02 - Java Servlets 7 | 8 | - - - 9 | 10 | 11 | 12 | #### Exemplos de código 13 | 14 | 15 | 16 | - [01 - Instalando o Tomcat](Roteiro02-01.md) 17 | 18 | 19 | - [02 - Aplicação “Alô mundo” em linha de comando](Roteiro02-02.md) 20 | 21 | 22 | - [03 - Aplicação “Alô mundo” com Apache Maven](Roteiro02-03.md) 23 | 24 | 25 | - [04 - Obtendo informações de uma requisição (HTTP Request)](Roteiro02-04.md) 26 | 27 | 28 | - [05 - Redirecionamento, Encaminhamento e Inclusão](Roteiro02-05.md) 29 | 30 | 31 | - [06 - Atributos no escopo de requisição](Roteiro02-06.md) 32 | 33 | 34 | - [07 - Atributos no escopo de aplicação](Roteiro02-07.md) 35 | 36 | 37 | - [08 - Atributos no escopo de sessão](Roteiro02-08.md) 38 | 39 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/templates/fragments/alert.html: -------------------------------------------------------------------------------- 1 |
2 | 11 |
12 | 13 |
14 | 23 |
-------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/templates/fragments/alert.html: -------------------------------------------------------------------------------- 1 |
2 | 11 |
12 | 13 |
14 | 23 |
24 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/templates/fragments/alert.html: -------------------------------------------------------------------------------- 1 |
2 | 11 |
12 | 13 |
14 | 23 |
24 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/templates/fragments/alert.html: -------------------------------------------------------------------------------- 1 |
2 | 11 |
12 | 13 |
14 | 23 |
24 | -------------------------------------------------------------------------------- /UploadFile/UploadFileMVC/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Upload File Demo 6 | 7 | 8 | 9 | 10 |

Upload File Demo

11 |
12 | Choose a file:
13 | Choose a file:
14 | 15 |
16 | 17 |
18 | 19 |
20 | 21 |
22 | 23 |

Files

24 | 25 |
    26 |
  • 27 |
28 | 29 | 30 | -------------------------------------------------------------------------------- /Modulo03/ELJSP-v2/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> 3 | 4 | 5 | 6 | Login page 7 | 8 | 9 | 10 |
11 |
12 | 13 |
14 |
15 | " /> 16 |
17 |
18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /Modulo07/JPA/src/test/java/br/ufscar/dc/dsw/AppTest.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw; 2 | 3 | import junit.framework.Test; 4 | import junit.framework.TestCase; 5 | import junit.framework.TestSuite; 6 | 7 | /** 8 | * Unit test for simple App. 9 | */ 10 | public class AppTest 11 | extends TestCase 12 | { 13 | /** 14 | * Create the test case 15 | * 16 | * @param testName name of the test case 17 | */ 18 | public AppTest( String testName ) 19 | { 20 | super( testName ); 21 | } 22 | 23 | /** 24 | * @return the suite of tests being tested 25 | */ 26 | public static Test suite() 27 | { 28 | return new TestSuite( AppTest.class ); 29 | } 30 | 31 | /** 32 | * Rigourous Test :-) 33 | */ 34 | public void testApp() 35 | { 36 | assertTrue( true ); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/resources/templates/buscaEstado.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | AJAX (dynamic select) 6 | 7 | 8 | 9 | 10 |
11 | 15 |
16 | 17 |
18 | 21 |
22 | 23 |
24 | 25 | Voltar 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | # MYSQL 2 | 3 | spring.datasource.url = jdbc:mysql://localhost:3306/Cidades?createDatabaseIfNotExist=true 4 | spring.datasource.username = root 5 | spring.datasource.password = root 6 | spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver 7 | 8 | # DERBY 9 | 10 | # spring.datasource.url = jdbc:derby://localhost:1527/Cidades 11 | # spring.datasource.username = root 12 | # spring.datasource.password = root 13 | # spring.datasource.driver-class-name = org.apache.derby.jdbc.ClientDriver 14 | 15 | # JPA 16 | 17 | spring.jpa.hibernate.ddl-auto = update 18 | spring.jpa.show-sql = true 19 | spring.jpa.open-in-view = true 20 | spring.jpa.hibernate.naming.physical-strategy = org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl 21 | 22 | # Server Port 23 | 24 | server.port = 8081 25 | -------------------------------------------------------------------------------- /Modulo05/AJAX-v2/Client/src/main/webapp/tabelaDinamica.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 4 | <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> 5 | 6 | 7 | 8 | 9 | AJAX (dynamic table) 10 | 11 | 12 | 13 |
14 | 15 |
16 |
17 |

Lista de Cidades

18 | 19 | 20 |
21 |
22 |
23 |
24 |
25 | Voltar 26 | 27 | 28 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v3/src/main/resources/message_en.properties: -------------------------------------------------------------------------------- 1 | page.title = Virtual BookStore 2 | main.link = Main Menu 3 | actions.link = Actions 4 | confirm.link = Are you sure you want to delete this item? 5 | save.link = Save 6 | 7 | books.welcome = Books Management 8 | books.entity = Books 9 | books.create = Create Book 10 | books.list = Books List 11 | books.update = Update 12 | books.delete = Delete 13 | 14 | book.ID = ID 15 | book.title = Title 16 | book.publisher = Publisher 17 | book.author = Author 18 | book.year = Year 19 | book.price = Price 20 | 21 | publishers.welcome = Publishers Management 22 | publishers.entity = Publishers 23 | publishers.create = Create Publisher 24 | publishers.list = Publishers List 25 | publishers.update = Update 26 | publishers.delete = Delete 27 | 28 | publisher.ID = ID 29 | publisher.CNPJ = CNPJ 30 | publisher.name = Name 31 | 32 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/java/br/ufscar/dc/dsw/dao/ICidadeDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | import org.springframework.data.repository.query.Param; 8 | 9 | import br.ufscar.dc.dsw.domain.Cidade; 10 | import br.ufscar.dc.dsw.domain.Estado; 11 | 12 | @SuppressWarnings("unchecked") 13 | public interface ICidadeDAO extends CrudRepository { 14 | 15 | Cidade findById(long id); 16 | 17 | List findAll(); 18 | 19 | Cidade save(Cidade cidade); 20 | 21 | void deleteById(Long id); 22 | 23 | public List findByNomeLikeIgnoreCase(String nome); 24 | 25 | @Query("select c from Cidade c where estado = :estado") 26 | public List findByEstado(@Param("estado") Estado estado); 27 | } -------------------------------------------------------------------------------- /Modulo05/Livraria-v3/src/main/resources/message_pt.properties: -------------------------------------------------------------------------------- 1 | page.title = Livraria Virtual 2 | main.link = Menu Principal 3 | actions.link = Ações 4 | confirm.link = Tem certeza de que deseja excluir este item? 5 | save.link = Salva 6 | 7 | books.welcome=Gerenciamento de Livros 8 | books.entity=Livros 9 | books.create=Novo Livro 10 | books.list= Lista de Livros 11 | books.update = Edição 12 | books.delete = Remoção 13 | 14 | book.ID = ID 15 | book.title = Título 16 | book.publisher = Editora 17 | book.author = Autor 18 | book.year = Ano 19 | book.price = Preço 20 | 21 | publishers.welcome = Gerenciamento de Editoras 22 | publishers.entity = Editoras 23 | publishers.create = Nova Editora 24 | publishers.list = Lista de Editoras 25 | publishers.update = Edição 26 | publishers.delete = Remoção 27 | 28 | publisher.ID = ID 29 | publisher.CNPJ = CNPJ 30 | publisher.name = Nome 31 | 32 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Server/src/main/java/br/ufscar/dc/dsw/dao/ICidadeDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.data.jpa.repository.Query; 6 | import org.springframework.data.repository.CrudRepository; 7 | import org.springframework.data.repository.query.Param; 8 | 9 | import br.ufscar.dc.dsw.domain.Cidade; 10 | import br.ufscar.dc.dsw.domain.Estado; 11 | 12 | @SuppressWarnings("unchecked") 13 | public interface ICidadeDAO extends CrudRepository { 14 | 15 | Cidade findById(long id); 16 | 17 | List findAll(); 18 | 19 | Cidade save(Cidade cidade); 20 | 21 | void deleteById(Long id); 22 | 23 | public List findByNomeLikeIgnoreCase(String nome); 24 | 25 | @Query("select c from Cidade c where estado = :estado") 26 | public List findByEstado(@Param("estado") Estado estado); 27 | } -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v2/src/main/java/br/ufscar/dc/dsw/controller/AloMundoController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import java.text.DateFormat; 4 | import java.util.Calendar; 5 | import java.util.Locale; 6 | 7 | import org.springframework.stereotype.Controller; 8 | import org.springframework.ui.Model; 9 | import org.springframework.web.bind.annotation.GetMapping; 10 | 11 | @Controller 12 | public class AloMundoController { 13 | 14 | @GetMapping("/") 15 | public String index(Model model, Locale locale) { 16 | 17 | DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.FULL, locale); 18 | 19 | Calendar cal = Calendar.getInstance(); 20 | model.addAttribute("dateString", dateFormat.format(cal.getTime())); 21 | model.addAttribute("date", cal.getTime()); 22 | 23 | return "index"; 24 | } 25 | 26 | } -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/java/br/ufscar/dc/dsw/controller/AloMundoController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import java.text.DateFormat; 4 | import java.util.Calendar; 5 | import java.util.Locale; 6 | 7 | import org.springframework.stereotype.Controller; 8 | import org.springframework.ui.Model; 9 | import org.springframework.web.bind.annotation.GetMapping; 10 | 11 | @Controller 12 | public class AloMundoController { 13 | 14 | @GetMapping("/") 15 | public String index(Model model, Locale locale) { 16 | 17 | DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.FULL, locale); 18 | 19 | Calendar cal = Calendar.getInstance(); 20 | model.addAttribute("dateString", dateFormat.format(cal.getTime())); 21 | model.addAttribute("date", cal.getTime()); 22 | 23 | return "index"; 24 | } 25 | 26 | } -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/java/br/ufscar/dc/dsw/controller/AloMundoController.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.controller; 2 | 3 | import java.text.DateFormat; 4 | import java.util.Calendar; 5 | import java.util.Locale; 6 | 7 | import org.springframework.stereotype.Controller; 8 | import org.springframework.ui.Model; 9 | import org.springframework.web.bind.annotation.GetMapping; 10 | 11 | @Controller 12 | public class AloMundoController { 13 | 14 | @GetMapping("/") 15 | public String index(Model model, Locale locale) { 16 | 17 | DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.FULL, locale); 18 | 19 | Calendar cal = Calendar.getInstance(); 20 | model.addAttribute("dateString", dateFormat.format(cal.getTime())); 21 | model.addAttribute("date", cal.getTime()); 22 | 23 | return "index"; 24 | } 25 | 26 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/resources/ValidationMessages.properties: -------------------------------------------------------------------------------- 1 | # Mensagens genéricas 2 | 3 | jakarta.validation.constraints.Size.message = Deve estar entre {min} e {max} caracteres. 4 | jakarta.validation.constraints.NotBlank.message = É obrigatório. 5 | jakarta.validation.constraints.NotNull.message = É obrigatório. 6 | jakarta.validation.constraints.Digits.message = Deve conter no máximo {integer} digitos. 7 | 8 | # Validação campos Livro 9 | 10 | NotBlank.livro.titulo = O título do livro é obrigatório. 11 | NotBlank.livro.autor = O autor do livro é obrigatório. 12 | NotNull.livro.ano = O ano do livro é obrigatório. 13 | NotNull.livro.preco = O preço do livro é obrigatório. 14 | NotNull.livro.editora = Selecione uma editora. 15 | 16 | # Validação campos Editora 17 | 18 | Size.editora.CNPJ = O CNPJ da editora deve ter {max} caracteres. 19 | Unique.editora.CNPJ = O CNPJ deve ser único. 20 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/ValidationMessages.properties: -------------------------------------------------------------------------------- 1 | # Mensagens genéricas 2 | 3 | jakarta.validation.constraints.Size.message = Deve estar entre {min} e {max} caracteres. 4 | jakarta.validation.constraints.NotBlank.message = É obrigatório. 5 | jakarta.validation.constraints.NotNull.message = É obrigatório. 6 | jakarta.validation.constraints.Digits.message = Deve conter no máximo {integer} digitos. 7 | 8 | # Validação campos Livro 9 | 10 | NotBlank.livro.titulo = O título do livro é obrigatório. 11 | NotBlank.livro.autor = O autor do livro é obrigatório. 12 | NotNull.livro.ano = O ano do livro é obrigatório. 13 | NotNull.livro.preco = O preço do livro é obrigatório. 14 | NotNull.livro.editora = Selecione uma editora. 15 | 16 | # Validação campos Editora 17 | 18 | Size.editora.CNPJ = O CNPJ da editora deve ter {max} caracteres. 19 | Unique.editora.CNPJ = O CNPJ deve ser único. 20 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Client/src/main/java/br/ufscar/dc/dsw/domain/Cidade.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.domain; 2 | 3 | public class Cidade { 4 | 5 | private Long id; 6 | 7 | private String nome; 8 | 9 | private Estado estado; 10 | 11 | public Cidade() { 12 | } 13 | 14 | public Cidade(String nome, Estado estado) { 15 | this.nome = nome; 16 | this.estado = estado; 17 | } 18 | 19 | public Long getId() { 20 | return id; 21 | } 22 | public void setId(Long id) { 23 | this.id = id; 24 | } 25 | 26 | public String getNome() { 27 | return nome; 28 | } 29 | public void setNome(String nome) { 30 | this.nome = nome; 31 | } 32 | 33 | public Estado getEstado() { 34 | return estado; 35 | } 36 | public void setEstado(Estado estado) { 37 | this.estado = estado; 38 | } 39 | 40 | @Override 41 | public String toString() { 42 | return nome + "/" + estado.getSigla(); 43 | } 44 | } -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/templates/error.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 |

15 | 16 |

17 | 18 |

19 | 20 |
21 | 22 |
23 |
24 |
26 |
27 | 28 |
29 | 30 | -------------------------------------------------------------------------------- /UploadFile/UploadFileJPA/src/main/java/br/ufscar/dc/dsw/service/impl/FileService.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.service.impl; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.stereotype.Service; 7 | 8 | import br.ufscar.dc.dsw.dao.IFileDAO; 9 | import br.ufscar.dc.dsw.domain.FileEntity; 10 | import br.ufscar.dc.dsw.service.spec.IFileService; 11 | 12 | @Service 13 | public class FileService implements IFileService { 14 | 15 | @Autowired 16 | private IFileDAO dao; 17 | 18 | public FileEntity salvar(FileEntity file) { 19 | return dao.save(file); 20 | } 21 | 22 | public void excluir(Long id) { 23 | dao.deleteById(id); 24 | } 25 | 26 | public FileEntity buscarPorId(Long id) { 27 | return dao.findById(id.longValue()); 28 | } 29 | 30 | public List buscarTodos() { 31 | return dao.findAll(); 32 | } 33 | } -------------------------------------------------------------------------------- /Modulo05/Login/src/main/webapp/noAuth.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 4 | 5 | 6 | 7 | 8 | Autorização de Usuário 9 | 10 | 11 | 12 |

Autorização de Usuário

13 | 14 |
15 |
    16 | 17 |
  • ${erro}
  • 18 |
    19 |
20 |
21 |
22 | 23 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/templates/error.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 |

15 | 16 |

17 | 18 |

19 | 20 |
21 | 22 |
23 |
24 |
26 |
27 | 28 |
29 | 30 | 31 | -------------------------------------------------------------------------------- /Modulo05/Livraria-v4/src/main/webapp/noAuth.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html" pageEncoding="UTF-8"%> 2 | <%@ page isELIgnored="false"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 4 | 5 | 6 | 7 | 8 | Autorização de Usuário 9 | 10 | 11 | 12 |

Autorização de Usuário

13 | 14 |
15 |
    16 | 17 |
  • ${erro}
  • 18 |
    19 |
20 |
21 |
22 | 23 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/Client/src/main/java/br/ufscar/dc/dsw/domain/Estado.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.domain; 2 | 3 | public class Estado { 4 | 5 | private Long id; 6 | 7 | private String sigla; 8 | 9 | private String nome; 10 | 11 | public Estado() { 12 | } 13 | 14 | public Estado(Long id, String sigla, String nome) { 15 | this.id = id; 16 | this.sigla = sigla; 17 | this.nome = nome; 18 | } 19 | 20 | public Long getId() { 21 | return id; 22 | } 23 | public void setId(Long id) { 24 | this.id = id; 25 | } 26 | 27 | public String getSigla() { 28 | return sigla; 29 | } 30 | public void setSigla(String sigla) { 31 | this.sigla = sigla; 32 | } 33 | 34 | public String getNome() { 35 | return nome; 36 | } 37 | public void setNome(String nome) { 38 | this.nome = nome; 39 | } 40 | 41 | @Override 42 | public String toString() { 43 | return nome + " (" + sigla + ")"; 44 | } 45 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v3/src/main/resources/templates/layout2.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 |
20 | 21 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/resources/templates/layout2.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 |
20 | 21 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v5/src/main/resources/templates/layout2.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 |
20 | 21 | -------------------------------------------------------------------------------- /Modulo01/Triade/script.js: -------------------------------------------------------------------------------- 1 | 2 | function hideEven() { 3 | var flag = confirm('Você tem certeza?'); 4 | if (flag) { 5 | var b = document.getElementById("b1"); 6 | var hide = (b.textContent == "Hide Even"); 7 | console.log(hide); 8 | var divsToHide = document.getElementsByClassName("even"); 9 | for (var i = 0; i < divsToHide.length; i++) { 10 | if (hide) { 11 | divsToHide[i].style.visibility = "hidden"; 12 | divsToHide[i].style.display = "none"; 13 | } else { 14 | divsToHide[i].style.visibility = "visible"; 15 | divsToHide[i].style.display = "initial"; 16 | } 17 | } 18 | if (hide) { 19 | b.textContent = "Show Even"; 20 | } else { 21 | b.textContent = "Hide Even"; 22 | } 23 | 24 | } else 25 | return false; 26 | 27 | } 28 | 29 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/ValidationMessages_en.properties: -------------------------------------------------------------------------------- 1 | # Mensagens genéricas 2 | 3 | jakarta.validation.constraints.Size.message = Must be between {min} and {max} characters. 4 | jakarta.validation.constraints.NotBlank.message = It is mandatory. 5 | jakarta.validation.constraints.NotNull.message = It is mandatory. 6 | jakarta.validation.constraints.Digits.message = Must contain a maximum of {integer} digits. 7 | 8 | # Validação campos Livro 9 | 10 | NotBlank.livro.titulo = The title of the book is mandatory. 11 | NotBlank.livro.autor = The author of the book is mandatory. 12 | NotNull.livro.ano = The year of the book is mandatory. 13 | NotNull.livro.preco = The price of the book is mandatory. 14 | NotNull.livro.editora = Select a publisher. 15 | 16 | # Validação campos Editora 17 | 18 | Size.editora.CNPJ = The CNPJ of the publisher must have {max} characters. 19 | Unique.editora.CNPJ = The CNPJ must be unique. 20 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/templates/fragments/layout.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Spring Security Thymeleaf 13 | 14 | 15 | 16 |
17 | 18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/templates/fragments/layout.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Spring Security Thymeleaf 13 | 14 | 15 | 16 |
17 | 18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /Modulo09/LivrariaMVC-v4/src/main/java/br/ufscar/dc/dsw/conversor/CartaoConversor.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.conversor; 2 | 3 | import org.springframework.beans.factory.annotation.Autowired; 4 | import org.springframework.core.convert.converter.Converter; 5 | import org.springframework.stereotype.Component; 6 | import org.springframework.web.client.RestClientException; 7 | 8 | import br.ufscar.dc.dsw.domain.Cartao; 9 | import br.ufscar.dc.dsw.service.spec.IClienteRestService; 10 | 11 | @Component 12 | public class CartaoConversor implements Converter{ 13 | 14 | @Autowired 15 | private IClienteRestService service; 16 | 17 | @Override 18 | public Cartao convert(String text) { 19 | 20 | if (text.isEmpty()) { 21 | return null; 22 | } 23 | 24 | Long id = Long.valueOf(text); 25 | try { 26 | return service.buscaCartao(id); 27 | } catch(RestClientException e) { 28 | return null; 29 | } 30 | 31 | } 32 | } -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/resources/templates/buscaNome.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | AJAX (Autocomplete) 6 | 7 | 8 | 9 | 20 | 21 |
22 | 24 |
25 |
26 | Voltar 27 | 28 | -------------------------------------------------------------------------------- /Modulo07/JPA/src/main/java/br/ufscar/dc/dsw/dao/ProfessorDAO.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.dao; 2 | 3 | import java.util.List; 4 | 5 | import jakarta.persistence.EntityManager; 6 | import jakarta.persistence.EntityTransaction; 7 | import jakarta.persistence.TypedQuery; 8 | 9 | import br.ufscar.dc.dsw.domain.Departamento; 10 | import br.ufscar.dc.dsw.domain.Professor; 11 | 12 | public class ProfessorDAO extends PessoaDAO { 13 | 14 | public List findbyDepartamento(Departamento departamento) { 15 | EntityManager em = this.getEntityManager(); 16 | EntityTransaction tx = em.getTransaction(); 17 | tx.begin(); 18 | String jpql = "SELECT p FROM Professor p where p.departamento = :departamento"; 19 | TypedQuery q = em.createQuery(jpql, Professor.class); 20 | q.setParameter("departamento", departamento); 21 | List lista = q.getResultList(); 22 | tx.commit(); 23 | em.close(); 24 | return lista; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v1/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Menu 8 | 9 | 10 |
11 |

12 | 13 | [[${#authentication.principal.username}]]! 14 |

15 | 16 |

17 | 18 |
19 |

20 |
21 | 22 |
23 |

24 |
25 |
26 | 27 | -------------------------------------------------------------------------------- /Modulo08/LoginMVC-v2/src/main/resources/templates/home.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | Menu 8 | 9 | 10 |
11 |

12 | 13 | [[${#authentication.principal.username}]]! 14 |

15 | 16 |

17 | 18 |
19 |

20 |
21 | 22 |
23 |

24 |
25 |
26 | 27 | -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v2/src/main/resources/templates/fragments/header.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 26 |
27 | 28 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/resources/templates/buscaEstado.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | AJAX (dynamic select) 6 | 7 | 8 | 9 | 10 |
11 | 17 |
18 | 19 |
20 | 23 |
24 | 25 |
26 | 27 | Voltar 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS-v2/AJAX/src/main/resources/templates/buscaNome.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | AJAX (Autocomplete) 6 | 7 | 8 | 9 | 20 | 21 |
22 | 24 |
25 |
26 | Voltar 27 | 28 | -------------------------------------------------------------------------------- /Modulo05/AJAX/src/main/java/br/ufscar/dc/dsw/bean/ListaCidadesBean.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.bean; 2 | 3 | import br.ufscar.dc.dsw.dao.CidadeDAO; 4 | import br.ufscar.dc.dsw.dao.EstadoDAO; 5 | import br.ufscar.dc.dsw.domain.Cidade; 6 | import br.ufscar.dc.dsw.domain.Estado; 7 | 8 | import java.util.List; 9 | 10 | public class ListaCidadesBean { 11 | 12 | private String sigla; 13 | 14 | public List getEstados() { 15 | EstadoDAO dao = new EstadoDAO(); 16 | return dao.getAll(); 17 | } 18 | 19 | public List getCidades() { 20 | CidadeDAO dao = new CidadeDAO(); 21 | if (sigla == null || sigla.isEmpty()) { 22 | return dao.getAll(); 23 | } else { 24 | Estado estado = new EstadoDAO().getBySigla(sigla); 25 | return new CidadeDAO().getByEstado(estado); 26 | } 27 | } 28 | 29 | public void setSigla(String sigla) { 30 | this.sigla = sigla; 31 | } 32 | 33 | public String getSigla() { 34 | return sigla; 35 | } 36 | } -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v3/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | Alô Mundo 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 |
16 |

17 | 18 |

19 | 16 Março 2020 20 |

21 |

22 | 16 Março 2020 23 |

24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Modulo06/AloMundoMVC-v4/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | Alô Mundo 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 |
16 |

17 | 18 |

19 | 16 Março 2020 20 |

21 |

22 | 16 Março 2020 23 |

24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Modulo09/CidadesRS/src/main/java/br/ufscar/dc/dsw/domain/Estado.java: -------------------------------------------------------------------------------- 1 | 2 | package br.ufscar.dc.dsw.domain; 3 | 4 | import jakarta.persistence.Column; 5 | import jakarta.persistence.Entity; 6 | import jakarta.persistence.Table; 7 | 8 | @SuppressWarnings("serial") 9 | @Entity 10 | @Table(name = "Estado") 11 | public class Estado extends AbstractEntity{ 12 | 13 | @Column(nullable = false, length = 2) 14 | private String sigla; 15 | 16 | @Column(nullable = false, length = 30) 17 | private String nome; 18 | 19 | public String getSigla() { 20 | return sigla; 21 | } 22 | 23 | public void setSigla(String sigla) { 24 | this.sigla = sigla; 25 | } 26 | 27 | public String getNome() { 28 | return nome; 29 | } 30 | 31 | public void setNome(String nome) { 32 | this.nome = nome; 33 | } 34 | 35 | @Override 36 | public String toString() { 37 | return nome + " (" + sigla + ")"; 38 | } 39 | } -------------------------------------------------------------------------------- /Modulo08/LivrariaMVC-v1/src/main/java/br/ufscar/dc/dsw/validation/UniqueCNPJValidator.java: -------------------------------------------------------------------------------- 1 | package br.ufscar.dc.dsw.validation; 2 | 3 | import jakarta.validation.ConstraintValidator; 4 | import jakarta.validation.ConstraintValidatorContext; 5 | 6 | import org.springframework.beans.factory.annotation.Autowired; 7 | import org.springframework.stereotype.Component; 8 | 9 | import br.ufscar.dc.dsw.dao.IEditoraDAO; 10 | import br.ufscar.dc.dsw.domain.Editora; 11 | 12 | @Component 13 | public class UniqueCNPJValidator implements ConstraintValidator { 14 | 15 | @Autowired 16 | private IEditoraDAO dao; 17 | 18 | @Override 19 | public boolean isValid(String CNPJ, ConstraintValidatorContext context) { 20 | if (dao != null) { 21 | Editora editora = dao.findByCNPJ(CNPJ); 22 | return editora == null; 23 | } else { 24 | // Durante a execução da classe LivrariaMvcApplication 25 | // não há injeção de dependência 26 | return true; 27 | } 28 | 29 | } 30 | } --------------------------------------------------------------------------------