Guest User

Untitled

a guest
Dec 3rd, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.46 KB | None | 0 0
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:jdbc="http://www.springframework.org/schema/jdbc"
  6. xsi:schemaLocation="http://www.springframework.org/schema/beans
  7. http://www.springframework.org/schema/beans/spring-beans.xsd
  8. http://www.springframework.org/schema/context
  9. http://www.springframework.org/schema/context/spring-context.xsd
  10. http://www.springframework.org/schema/jdbc
  11. http://www.springframework.org/schema/jdbc/spring-jdbc.xsd">
  12.  
  13. <!-- XML Bean Definitions -->
  14. <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  15. <property name="driverClassName" value="org.h2.Driver" />
  16. <property name="url" value="jdbc:h2:mem://localhost/test" />
  17. <property name="username" value="sa" />
  18. <property name="password" value="" />
  19. </bean>
  20.  
  21. <!-- initialize Embedded DataSource. Встроенная база данных-->
  22. <jdbc:initialize-database data-source="dataSource">
  23. <jdbc:script location="classpath:dbschema.sql"/>
  24. <jdbc:script location="classpath:test-data.sql"/>
  25. </jdbc:initialize-database>
  26.  
  27. <!--Do not forget activate @Transactional JPA annotation with <annotation-driven/>-->
  28. <!-- JPA Persistence Context and EntityManager configuration -->
  29. <bean id="entityManagerFactory"
  30. class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean" >
  31. <!--packagesToScan - search Entity and mapping them -->
  32. <property name="packagesToScan" value="main" />
  33. <property name="dataSource" ref="dataSource" />
  34. <property name="jpaVendorAdapter">
  35. <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" >
  36. <property name="generateDdl" value="true" />
  37. <property name="showSql" value="true" />
  38. </bean>
  39. </property>
  40. <property name="jpaProperties">
  41. <props>
  42. <prop key="hibernate.dialect">org.hibernate.dialect.H2Dialect</prop>
  43. <prop key="hibernate.show_sql">true</prop>
  44. <prop key="hibernate.format_sql">false</prop>
  45. <prop key="hibernate.hbm2ddl.auto">update</prop>
  46. </props>
  47. </property>
  48. </bean>
  49.  
  50. <!-- Automatic Transaction Participation-->
  51. <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
  52. <property name="entityManagerFactory" ref="entityManagerFactory" />
  53. </bean>
  54.  
  55. @Repository
  56. @Transactional
  57. public class ORMService {
  58.  
  59. @PersistenceContext
  60. private EntityManager entityManager;
  61.  
  62. public List<User> queryFindAllUsersJPA() {
  63. System.out.println("ORMService queryfindAllUsersJPA is called");
  64. String query = "from User";
  65. TypedQuery<User> typedQuery = entityManager.createQuery(query, User.class);
  66. return typedQuery.getResultList();
  67. }
  68.  
  69.  
  70. }
  71.  
  72. @Entity
  73. @Table(name = "USER")
  74. public class User {
  75.  
  76. @Id
  77. @GeneratedValue(strategy = GenerationType.IDENTITY)
  78. @Column(name = "IDUSER")
  79. private int idUser;
  80.  
  81. @NotEmpty
  82. @Size(min = 5, max = 20)
  83. @Column(name = "USERNAME")
  84. private String username;
  85.  
  86. @NotEmpty
  87. @Size(min=5, max=20)
  88. @Column(name="PASSWORD")
  89. private String password;
  90.  
  91. @Column(name="ENABLED")
  92. private boolean enabled;
  93.  
  94. public int getIdUser() {
  95. return idUser;
  96. }
  97.  
  98. public void setIdUser(int idUser) {
  99. this.idUser = idUser;
  100. }
  101.  
  102. public String getUsername() {
  103. return username;
  104. }
  105.  
  106. public void setUsername(String username) {
  107. this.username = username;
  108. }
  109.  
  110. public String getPassword() {
  111. return password;
  112. }
  113.  
  114. public void setPassword(String password) {
  115. this.password = password;
  116. }
  117.  
  118. public boolean isEnabled() {
  119. return enabled;
  120. }
  121.  
  122. public void setEnabled(boolean enabled) {
  123. this.enabled = enabled;
  124. }
  125.  
  126. @Override
  127. public String toString() {
  128. return "User{" +
  129. "idUser=" + idUser +
  130. ", username='" + username + ''' +
  131. ", password='" + password + ''' +
  132. ", enabled=" + enabled +
  133. '}';
  134. }
  135. }
  136.  
  137. DROP TABLE IF EXISTS USER;
  138.  
  139. --USER TABLE
  140. CREATE TABLE IF NOT EXISTS USER (
  141. IDUSER INT NOT NULL AUTO_INCREMENT,
  142. USERNAME VARCHAR(255) NOT NULL ,
  143. PASSWORD VARCHAR(255) NOT NULL,
  144. ENABLED BOOLEAN NOT NULL,PRIMARY KEY(IDUSER)
  145. );
  146.  
  147. @RestController
  148. public class MainController {
  149.  
  150. @Autowired
  151. private ORMService ormService;
  152.  
  153. @GetMapping(value = "/")
  154. public ModelAndView getAllUsers() {
  155. System.out.println("ORMController ormFindAllUsers is called");
  156. List<User> users = ormService.queryFindAllUsersJPA();
  157. return new ModelAndView("index", "resultObject", users);
  158. }
  159. }
  160.  
  161. ORMController ormFindAllUsers is called
  162. ORMService queryfindAllUsersJPA is called
  163. 03-Dec-2017 18:18:43.982 INFO [http-nio-8080-exec-1]
  164. org.hibernate.hql.internal.QueryTranslatorFactoryInitiator.initiateService
  165. HHH000397: Using ASTQueryTranslatorFactory
  166. 03-Dec-2017 18:18:44.216 WARN [http-nio-8080-exec-1]
  167. org.hibernate.engine.jdbc.spi.SqlExceptionHelper.logExceptions SQL
  168. Error: 42102, SQLState: 42S02
  169. 03-Dec-2017 18:18:44.216 ERROR [http-nio-8080-exec-1]
  170. org.hibernate.engine.jdbc.spi.SqlExceptionHelper.logExceptions Таблица
  171. "USER" не найдена
  172. Table "USER" not found; SQL statement:
  173. select user0_.IDUSER as IDUSER1_0_, user0_.ENABLED as ENABLED2_0_,
  174. user0_.PASSWORD as PASSWORD3_0_, user0_.USERNAME as USERNAME4_0_ from
  175. USER user0_ [42102-196]
  176. Hibernate: select user0_.IDUSER as IDUSER1_0_, user0_.ENABLED as
  177. ENABLED2_0_, user0_.PASSWORD as PASSWORD3_0_, user0_.USERNAME as
  178. USERNAME4_0_ from USER user0_
Add Comment
Please, Sign In to add comment