Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- <%@ page contentType="text/html;charset=UTF-8" language="java" %>
- <html>
- <head>
- <title>Read articles</title>
- </head>
- <body>
- <h1>Users</h1>
- <table id="UserTable">
- <tr>
- <th>ID</th>
- <th>Username</th>
- <th>Email</th>
- </tr>
- <c:forEach var="user" items="${message}">
- <tr>
- <td><c:out value="${user.id_user}"></c:out></td>
- <td><c:out value="${user.username}"></c:out></td>
- <td><c:out value="${user.email}"></c:out></td>
- </tr>
- </c:forEach>
- <!--${json}-->
- </table>
- </body>
- </html>
- create database test;
- use test;
- create table if not exists User(
- id_user int auto_increment unique,
- username varchar(255),
- email varchar(255),
- primary key (id_user)
- );
- INSERT INTO User (id_user, username, email)
- VALUES ('1', 'alandalka','a@a.com');
- INSERT INTO User (id_user, username, email)
- VALUES ('2', 'ddafdf','b@b.com');
- select * from User;
- package test;
- import org.springframework.boot.SpringApplication;
- import org.springframework.boot.autoconfigure.SpringBootApplication;
- @SpringBootApplication
- public class App {
- public static void main(String[] args) {
- SpringApplication.run(App.class, args);
- for(User u: UserDAO.getAllUsers())
- System.out.println(u.toString());
- }
- }
- package test;
- import java.util.Map;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.RestController;
- @Controller
- public class HelloController {
- @Value("${welcome.message:test}")
- private String message = "Hello World";
- @RequestMapping(name="/", method = RequestMethod.GET)
- public String welcome(Model model) {
- model.addAttribute("message", UserDAO.getAllUsers());
- return "welcome";
- }
- @RequestMapping(name="/add", method = RequestMethod.POST)
- public String addUser(@RequestParam String username, @RequestParam String email) {
- UserDAO.addUser(username, email);
- return "addUser";
- }
- }
- package test;
- import java.io.Serializable;
- import javax.persistence.*;
- @Entity
- @Table(name="User")
- public class User implements Serializable{
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "id_user", nullable = false)
- private int id_user;
- @Column(name="username", nullable = false)
- private String username;
- @Column(name = "email", nullable = false)
- private String email;
- public User() {
- }
- public User(String username, String email) {
- this.username=username;
- this.email=email;
- }
- public int getId_user() {
- return id_user;
- }
- public void setId_user(int id_user) {
- this.id_user = id_user;
- }
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this.username = username;
- }
- public String getEmail() {
- return email;
- }
- public void setEmail(String email) {
- this.email = email;
- }
- @Override
- public String toString() {
- return "User [id_user=" + id_user + ", username=" + username + ", email=" + email + "]";
- }
- }
- package test;
- import java.util.ArrayList;
- import java.util.List;
- import javax.persistence.EntityManager;
- import javax.persistence.EntityManagerFactory;
- import javax.persistence.Persistence;
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.hibernate.cfg.Configuration;
- import javax.persistence.Query;
- public class UserDAO {
- public static List<User> getAllUsers()
- {
- SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
- Session session = sessionFactory.openSession();
- session.beginTransaction();
- List<User> users = session.createSQLQuery("SELECT * FROM user").addEntity(User.class).list();
- session.getTransaction().commit();
- session.close();
- sessionFactory.close();
- return users;
- }
- public static void addUser(String username, String email) {
- User user = new User(username, email);
- SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
- Session session = sessionFactory.openSession();
- session.beginTransaction();
- session.save(user);
- session.getTransaction().commit();
- session.close();
- sessionFactory.close();
- }
- }
- <?xml version="1.0" encoding="UTF-8"?>
- <entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm"
- version="2.0">
- <entity class="test.User">
- <table name="User" schema="test" catalog=""/>
- <attributes>
- <id name="id_user">
- <column name="id_user" precision="11"/>
- </id>
- <basic name="username">
- <column name="username" nullable="false"/>
- </basic>
- <basic name="email">
- <column name="email" nullable="false"/>
- </basic>
- </attributes>
- </entity>
- </entity-mappings>
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE hibernate-configuration SYSTEM "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
- <hibernate-configuration>
- <session-factory>
- <property name="hibernate.dialect"> org.hibernate.dialect.MySQL55Dialect </property>
- <property name="hibernate.connection.driver_class"> com.mysql.jdbc.Driver </property>
- <!-- Assume test is the database name -->
- <property name="hibernate.connection.url"> jdbc:mysql://localhost/test </property>
- <property name="hibernate.connection.username"> root </property>
- <property name="hibernate.connection.password"> rootroot </property>
- <property name="hibernate.hbm2ddl.auto"> update </property>
- <mapping class="test.User"/>
- </session-factory>
- </hibernate-configuration>
- spring.mvc.view.prefix: /WEB-INF/jsp/
- spring.mvc.view.suffix: .jsp
- welcome.message: Hello Mkyong
- <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">
- <modelVersion>4.0.0</modelVersion>
- <groupId>test</groupId>
- <artifactId>test</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <parent>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-parent</artifactId>
- <version>2.0.3.RELEASE</version>
- </parent>
- <dependencies>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </dependency>
- <!-- Tomcat embedded container-->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-tomcat</artifactId>
- <scope>provided</scope>
- </dependency>
- <!-- JSTL for JSP -->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>jstl</artifactId>
- </dependency>
- <!-- Need this to compile JSP -->
- <dependency>
- <groupId>org.apache.tomcat.embed</groupId>
- <artifactId>tomcat-embed-jasper</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.46</version>
- </dependency>
- <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>5.2.16.Final</version>
- </dependency>
- <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-entitymanager -->
- <dependency>
- <groupId>org.hibernate.javax.persistence</groupId>
- <artifactId>hibernate-jpa-2.1-api</artifactId>
- <version>1.0.2.Final</version>
- </dependency>
- </dependencies>
- <build>
- <plugins>
- <!-- Package as an executable jar/war -->
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- </plugin>
- </plugins>
- </build>
- <properties>
- <java.version>1.8</java.version>
- </properties>
- </project>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement