Guest User

Untitled

a guest
Mar 14th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.44 KB | None | 0 0
  1. package local.demo.models;
  2.  
  3. import java.io.Serializable;
  4.  
  5. import javax.persistence.Entity;
  6. import javax.persistence.GeneratedValue;
  7. import javax.persistence.GenerationType;
  8. import javax.persistence.Id;
  9.  
  10. @Entity
  11. public class Evento implements Serializable {
  12.  
  13. private static final long serialVersionUID = 1L;
  14.  
  15. @Id
  16. @GeneratedValue(strategy = GenerationType.AUTO)
  17. private long codigo;
  18. private String nome;
  19. private String local;
  20. private String data;
  21. private String horario;
  22.  
  23. //gets e sets
  24.  
  25. }
  26.  
  27. package local.demo.controllers;
  28.  
  29. import org.springframework.beans.factory.annotation.Autowired;
  30. import org.springframework.stereotype.Controller;
  31. import org.springframework.web.bind.annotation.PathVariable;
  32. import org.springframework.web.bind.annotation.RequestMapping;
  33. import org.springframework.web.bind.annotation.RequestMethod;
  34. import org.springframework.web.servlet.ModelAndView;
  35. import local.demo.models.Evento;
  36. import local.demo.repository.EventoRepository;
  37.  
  38. @Controller
  39. public class EventoController {
  40.  
  41. @Autowired
  42. private EventoRepository er;
  43.  
  44. @RequestMapping(value = "/cadastrarEvento", method = RequestMethod.GET)
  45. public String form() {
  46. return "evento/formEvento";
  47. }
  48.  
  49. @RequestMapping(value = "/cadastrarEvento", method = RequestMethod.POST)
  50. public String form(Evento evento) {
  51. er.save(evento);
  52. return "redirect:/cadastrarEvento";
  53. }
  54.  
  55. @RequestMapping("/eventos")
  56. public ModelAndView listaEventos() {
  57. ModelAndView mav = new ModelAndView("index");
  58. Iterable<Evento> eventos = er.findAll();
  59. mav.addObject("eventos", eventos);
  60. return mav;
  61. }
  62.  
  63. @RequestMapping("/{codigo}")
  64. public ModelAndView detalhesEvento(@PathVariable("codigo") long codigo) {
  65. Evento evento = er.findByCodigo(codigo);
  66. ModelAndView mv = new ModelAndView("evento/detalhesEvento");
  67. mv.addObject("evento", evento);
  68. return mv;
  69. }
  70. }
  71.  
  72. package local.demo.repository;
  73.  
  74. import org.springframework.data.repository.CrudRepository;
  75. import local.demo.models.Evento;
  76.  
  77. public interface EventoRepository extends CrudRepository<Evento, String> {
  78. Evento findByCodigo(long codigo);
  79. }
  80.  
  81. <!DOCTYPE html>
  82. <html xmlns:th="http://thymeleaf.org"
  83. xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
  84. <head>
  85. <title>Cria Eventos Facil</title>
  86. <!--Import Google Icon Font-->
  87. <link href="https://fonts.googleapis.com/icon?family=Material+Icons"
  88. rel="stylesheet"/>
  89. <!--Import materialize.css-->
  90. <link type="text/css" rel="stylesheet" href="css/materialize.min.css"
  91. media="screen,projection"/>
  92.  
  93. <!--Let browser know website is optimized for mobile-->
  94. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  95. </head>
  96. <body>
  97. <h1>Lista de Eventos</h1>
  98. <h3>
  99. <a href="/cadastrarEvento">Cadastrar Evento</a>
  100. </h3>
  101. <table class="container">
  102. <thead>
  103. <tr>
  104. <th>Id</th>
  105. <th>Nome</th>
  106. <th>Local</th>
  107. <th>Data</th>
  108. <th>Horario</th>
  109. </tr>
  110. </thead>
  111. <tbody>
  112. <tr th:each="evento : ${eventos}">
  113. <!--<td><a th:href="${(#mvc.url('EC#detalhesEvento').arg(0, evento.codigo)).build()}"><span th:text="${evento.nome}"></span></a></td>-->
  114. <td><span th:text="${evento.codigo}"></span></td>
  115. <td><span th:text="${evento.nome}"></span></td>
  116. <td><span th:text="${evento.local}"></span></td>
  117. <td><span th:text="${evento.data}"></span></td>
  118. <td><span th:text="${evento.horario}"></span></td>
  119. </tr>
  120. </tbody>
  121. </table>
  122. <!--Import jQuery before materialize.js-->
  123. <script type="text/javascript"
  124. src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
  125. <script type="text/javascript" src="js/materialize.min.js"></script>
  126. </body>
  127. </html>
  128.  
  129. <tbody>
  130. <tr th:each="evento : ${eventos}">
  131. <td><a th:href="${(#mvc.url('EC#detalhesEvento').arg(0, evento.codigo)).build()}"><span th:text="${evento.nome}"></span></a></td>
  132. <!--<td><span th:text="${evento.codigo}"></span></td>-->
  133. <td><span th:text="${evento.nome}"></span></td>
  134. <td><span th:text="${evento.local}"></span></td>
  135. <td><span th:text="${evento.data}"></span></td>
  136. <td><span th:text="${evento.horario}"></span></td>
  137. </tr>
  138. </tbody>
  139.  
  140. package local.demo.data;
  141.  
  142. import javax.sql.DataSource;
  143.  
  144. import org.springframework.context.annotation.Bean;
  145. import org.springframework.context.annotation.Configuration;
  146. import org.springframework.context.annotation.Profile;
  147. import org.springframework.jdbc.datasource.DriverManagerDataSource;
  148. import org.springframework.orm.jpa.JpaVendorAdapter;
  149. import org.springframework.orm.jpa.vendor.Database;
  150. import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
  151.  
  152. @Configuration
  153. @Profile("dev")
  154. public class DataConfiguration {
  155.  
  156. @Bean
  157. public DataSource dataSource(){
  158. DriverManagerDataSource dataSource = new DriverManagerDataSource();
  159. dataSource.setDriverClassName("com.mysql.jdbc.Driver");
  160. dataSource.setUrl("jdbc:mysql://localhost:3306/demoteste");
  161. dataSource.setUsername("root");
  162. dataSource.setPassword("");
  163. return dataSource;
  164. }
  165.  
  166. @Bean
  167. public JpaVendorAdapter jpaVendorAdapter(){
  168. HibernateJpaVendorAdapter adapter = new HibernateJpaVendorAdapter();
  169. adapter.setDatabase(Database.MYSQL);
  170. adapter.setShowSql(true);
  171. adapter.setGenerateDdl(true);
  172. adapter.setDatabasePlatform("org.hibernate.dialect.MySQLDialect");
  173. adapter.setPrepareConnection(true);
  174. return adapter;
  175. }
  176. }
Add Comment
Please, Sign In to add comment