Advertisement
Guest User

ceva

a guest
Jul 12th, 2018
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.53 KB | None | 0 0
  1. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  2. <%@ page contentType="text/html;charset=UTF-8" language="java" %>
  3.  
  4. <html>
  5. <head>
  6. <title>Read articles</title>
  7. </head>
  8. <body>
  9. <h1>Users</h1>
  10. <table id="UserTable">
  11. <tr>
  12. <th>ID</th>
  13. <th>Username</th>
  14. <th>Email</th>
  15.  
  16. </tr>
  17. <c:forEach var="user" items="${message}">
  18.  
  19. <tr>
  20. <td><c:out value="${user.id_user}"></c:out></td>
  21.  
  22. <td><c:out value="${user.username}"></c:out></td>
  23.  
  24. <td><c:out value="${user.email}"></c:out></td>
  25. </tr>
  26.  
  27. </c:forEach>
  28.  
  29. <!--${json}-->
  30.  
  31. </table>
  32.  
  33.  
  34. </body>
  35. </html>
  36.  
  37. create database test;
  38. use test;
  39.  
  40. create table if not exists User(
  41. id_user int auto_increment unique,
  42. username varchar(255),
  43. email varchar(255),
  44. primary key (id_user)
  45. );
  46.  
  47. INSERT INTO User (id_user, username, email)
  48. VALUES ('1', 'alandalka','a@a.com');
  49.  
  50. INSERT INTO User (id_user, username, email)
  51. VALUES ('2', 'ddafdf','b@b.com');
  52.  
  53. select * from User;
  54.  
  55. package test;
  56.  
  57. import org.springframework.boot.SpringApplication;
  58. import org.springframework.boot.autoconfigure.SpringBootApplication;
  59.  
  60. @SpringBootApplication
  61. public class App {
  62.  
  63. public static void main(String[] args) {
  64. SpringApplication.run(App.class, args);
  65.  
  66. for(User u: UserDAO.getAllUsers())
  67. System.out.println(u.toString());
  68. }
  69.  
  70. }
  71.  
  72. package test;
  73.  
  74. import java.util.Map;
  75.  
  76. import org.springframework.beans.factory.annotation.Value;
  77. import org.springframework.stereotype.Controller;
  78. import org.springframework.ui.Model;
  79. import org.springframework.web.bind.annotation.RequestMapping;
  80. import org.springframework.web.bind.annotation.RequestMethod;
  81. import org.springframework.web.bind.annotation.RequestParam;
  82. import org.springframework.web.bind.annotation.RestController;
  83.  
  84. @Controller
  85. public class HelloController {
  86.  
  87. @Value("${welcome.message:test}")
  88. private String message = "Hello World";
  89.  
  90. @RequestMapping(name="/", method = RequestMethod.GET)
  91. public String welcome(Model model) {
  92. model.addAttribute("message", UserDAO.getAllUsers());
  93. return "welcome";
  94. }
  95. @RequestMapping(name="/add", method = RequestMethod.POST)
  96. public String addUser(@RequestParam String username, @RequestParam String email) {
  97. UserDAO.addUser(username, email);
  98. return "addUser";
  99. }
  100. }
  101.  
  102. package test;
  103.  
  104. import java.io.Serializable;
  105. import javax.persistence.*;
  106. @Entity
  107. @Table(name="User")
  108. public class User implements Serializable{
  109.  
  110. @Id
  111. @GeneratedValue(strategy = GenerationType.IDENTITY)
  112. @Column(name = "id_user", nullable = false)
  113. private int id_user;
  114.  
  115. @Column(name="username", nullable = false)
  116. private String username;
  117.  
  118. @Column(name = "email", nullable = false)
  119. private String email;
  120.  
  121.  
  122.  
  123. public User() {
  124. }
  125. public User(String username, String email) {
  126. this.username=username;
  127. this.email=email;
  128. }
  129. public int getId_user() {
  130. return id_user;
  131. }
  132. public void setId_user(int id_user) {
  133. this.id_user = id_user;
  134. }
  135. public String getUsername() {
  136. return username;
  137. }
  138. public void setUsername(String username) {
  139. this.username = username;
  140. }
  141. public String getEmail() {
  142. return email;
  143. }
  144. public void setEmail(String email) {
  145. this.email = email;
  146. }
  147. @Override
  148. public String toString() {
  149. return "User [id_user=" + id_user + ", username=" + username + ", email=" + email + "]";
  150. }
  151.  
  152. }
  153.  
  154. package test;
  155.  
  156. import java.util.ArrayList;
  157. import java.util.List;
  158.  
  159. import javax.persistence.EntityManager;
  160. import javax.persistence.EntityManagerFactory;
  161. import javax.persistence.Persistence;
  162.  
  163. import org.hibernate.Session;
  164. import org.hibernate.SessionFactory;
  165. import org.hibernate.cfg.Configuration;
  166. import javax.persistence.Query;
  167.  
  168. public class UserDAO {
  169.  
  170. public static List<User> getAllUsers()
  171. {
  172. SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
  173. Session session = sessionFactory.openSession();
  174.  
  175. session.beginTransaction();
  176. List<User> users = session.createSQLQuery("SELECT * FROM user").addEntity(User.class).list();
  177. session.getTransaction().commit();
  178.  
  179. session.close();
  180. sessionFactory.close();
  181.  
  182. return users;
  183. }
  184. public static void addUser(String username, String email) {
  185. User user = new User(username, email);
  186. SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
  187. Session session = sessionFactory.openSession();
  188.  
  189. session.beginTransaction();
  190. session.save(user);
  191. session.getTransaction().commit();
  192.  
  193. session.close();
  194. sessionFactory.close();
  195.  
  196. }
  197. }
  198.  
  199. <?xml version="1.0" encoding="UTF-8"?>
  200. <entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm"
  201. version="2.0">
  202.  
  203. <entity class="test.User">
  204. <table name="User" schema="test" catalog=""/>
  205. <attributes>
  206. <id name="id_user">
  207. <column name="id_user" precision="11"/>
  208. </id>
  209. <basic name="username">
  210. <column name="username" nullable="false"/>
  211. </basic>
  212. <basic name="email">
  213. <column name="email" nullable="false"/>
  214. </basic>
  215. </attributes>
  216. </entity>
  217. </entity-mappings>
  218.  
  219. <?xml version="1.0" encoding="UTF-8"?>
  220.  
  221. <!DOCTYPE hibernate-configuration SYSTEM "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
  222.  
  223. <hibernate-configuration>
  224.  
  225.  
  226. <session-factory>
  227.  
  228. <property name="hibernate.dialect"> org.hibernate.dialect.MySQL55Dialect </property>
  229.  
  230. <property name="hibernate.connection.driver_class"> com.mysql.jdbc.Driver </property>
  231.  
  232. <!-- Assume test is the database name -->
  233.  
  234.  
  235. <property name="hibernate.connection.url"> jdbc:mysql://localhost/test </property>
  236.  
  237. <property name="hibernate.connection.username"> root </property>
  238.  
  239. <property name="hibernate.connection.password"> rootroot </property>
  240.  
  241. <property name="hibernate.hbm2ddl.auto"> update </property>
  242.  
  243. <mapping class="test.User"/>
  244.  
  245.  
  246.  
  247.  
  248. </session-factory>
  249.  
  250. </hibernate-configuration>
  251.  
  252. spring.mvc.view.prefix: /WEB-INF/jsp/
  253. spring.mvc.view.suffix: .jsp
  254.  
  255. welcome.message: Hello Mkyong
  256.  
  257. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  258. <modelVersion>4.0.0</modelVersion>
  259. <groupId>test</groupId>
  260. <artifactId>test</artifactId>
  261. <version>0.0.1-SNAPSHOT</version>
  262.  
  263. <parent>
  264. <groupId>org.springframework.boot</groupId>
  265. <artifactId>spring-boot-starter-parent</artifactId>
  266. <version>2.0.3.RELEASE</version>
  267. </parent>
  268.  
  269. <dependencies>
  270. <dependency>
  271. <groupId>org.springframework.boot</groupId>
  272. <artifactId>spring-boot-starter-web</artifactId>
  273. </dependency>
  274.  
  275. <!-- Tomcat embedded container-->
  276. <dependency>
  277. <groupId>org.springframework.boot</groupId>
  278. <artifactId>spring-boot-starter-tomcat</artifactId>
  279. <scope>provided</scope>
  280. </dependency>
  281.  
  282. <!-- JSTL for JSP -->
  283. <dependency>
  284. <groupId>javax.servlet</groupId>
  285. <artifactId>jstl</artifactId>
  286. </dependency>
  287.  
  288. <!-- Need this to compile JSP -->
  289. <dependency>
  290. <groupId>org.apache.tomcat.embed</groupId>
  291. <artifactId>tomcat-embed-jasper</artifactId>
  292. <scope>provided</scope>
  293. </dependency>
  294. <dependency>
  295. <groupId>mysql</groupId>
  296. <artifactId>mysql-connector-java</artifactId>
  297. <version>5.1.46</version>
  298. </dependency>
  299. <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
  300. <dependency>
  301. <groupId>org.hibernate</groupId>
  302. <artifactId>hibernate-core</artifactId>
  303. <version>5.2.16.Final</version>
  304. </dependency>
  305. <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-entitymanager -->
  306. <dependency>
  307. <groupId>org.hibernate.javax.persistence</groupId>
  308. <artifactId>hibernate-jpa-2.1-api</artifactId>
  309. <version>1.0.2.Final</version>
  310. </dependency>
  311.  
  312.  
  313. </dependencies>
  314.  
  315. <build>
  316. <plugins>
  317. <!-- Package as an executable jar/war -->
  318. <plugin>
  319. <groupId>org.springframework.boot</groupId>
  320. <artifactId>spring-boot-maven-plugin</artifactId>
  321. </plugin>
  322. </plugins>
  323. </build>
  324.  
  325. <properties>
  326. <java.version>1.8</java.version>
  327. </properties>
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. </project>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement