Guest User

Untitled

a guest
Dec 1st, 2017
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.22 KB | None | 0 0
  1. - a business domain entity sample
  2. @Entity
  3. @Table(name="T_PARAMETER")
  4. public class Parameter extends BaseIdEntity implements Serializable {
  5.  
  6. @Column(name="par_cls")
  7. @NotNull
  8. private String parameterClass;
  9.  
  10. @Column(name="par_cd")
  11. @NotNull
  12. private String parameterCode;
  13.  
  14. @Column(name="par_lan")
  15. @NotNull
  16. private String language;
  17.  
  18. @Column(name="par_sht_val")
  19. @NotNull
  20. private String parameterValueShort;
  21.  
  22. @Column(name="par_lng_val")
  23. @NotNull
  24. private String parameterValueLong;
  25.  
  26. - a authentication domain entity sample
  27.  
  28. @Entity
  29. @Table(name="t_user", schema="authenticate")
  30. public class User extends BaseIdEntity implements Serializable {
  31.  
  32. @Id
  33. @Column(name="user_cd")
  34. private String userCode;
  35.  
  36. @Column(name="pwd")
  37. @NotNull
  38. private String password;
  39.  
  40. @Column(name="new_pwd_req")
  41. @NotNull
  42. private boolean passwordRequired;
  43.  
  44. @Column(name="acc_lck")
  45. @NotNull
  46. private boolean accountLocked;
  47.  
  48. There are repositories onto these 2 entities beans, they just extends the JpaRepository as hereunder:
  49.  
  50. public interface ParameterRepository extends JpaRepository<Parameter,Integer>{}
  51.  
  52. @Service
  53. @Transactional(transactionManager="authenticateTransactionManager")
  54. public class ServiceParameterImpl implements ServiceParameter {
  55.  
  56. private final static Logger log = LoggerFactory.getLogger(ServiceParameterImpl.class);
  57.  
  58. @Autowired
  59. private ParameterRepository parameterRepository;
  60.  
  61. @Override
  62. @Transactional(readOnly=true,transactionManager="authenticateTransactionManager")
  63. public List<Parameter> findParameterHeader(String filter) {
  64.  
  65. @SpringBootApplication
  66. @Configuration
  67. @EnableAutoConfiguration(exclude = { DataSourceAutoConfiguration.class
  68. , HibernateJpaAutoConfiguration.class
  69. , DataSourceTransactionManagerAutoConfiguration.class })
  70. @ComponentScan(
  71. basePackages= {
  72. "org.associative.ui"
  73. ,"org.associative.service"
  74. })
  75. @Import({AssociativityConfiguration.class, AuthenticateConfiguration.class})
  76. public class Application {
  77.  
  78. private final static Logger log = LoggerFactory.getLogger(Application.class);
  79.  
  80. public static void main(String[] args) {
  81. SpringApplication.run(Application.class, args);
  82. }
  83.  
  84. @Configuration
  85. @EnableTransactionManagement
  86. @EntityScan(basePackages= "org.associative.domain.associativity")
  87. @EnableJpaRepositories(
  88. basePackages = "org.associative.domain.associativity.repository"
  89. , entityManagerFactoryRef = "associativityEntityManager"
  90. , transactionManagerRef = "associativityTransactionManager"
  91. )
  92. @ConfigurationProperties(prefix = "db.associativity")
  93. public class AssociativityConfiguration {
  94.  
  95. private final static Logger log = LoggerFactory.getLogger(AssociativityConfiguration.class);
  96.  
  97. @Autowired
  98. private Environment env;
  99.  
  100. private final static String ASSOCIATIVITY_DRIVER_CLASS_NAME = "db.associativity.classname";
  101. private final static String ASSOCIATIVITY_URL = "db.associativity.connectionUrl";
  102. private final static String ASSOCIATIVITY_USERNAME = "db.associativity.username";
  103. private final static String ASSOCIATIVITY_PASSWORD = "db.associativity.password";
  104.  
  105. private final static String HIBERNATE_DIALECT = "hibernate.dialect";
  106.  
  107. @Bean(name = "associativityDataSource")
  108. public DataSource datasource() {
  109. DataSource dataSource = DataSourceBuilder.create()
  110. .driverClassName(env.getProperty(ASSOCIATIVITY_DRIVER_CLASS_NAME))
  111. .url(env.getProperty(ASSOCIATIVITY_URL))
  112. .username(env.getProperty(ASSOCIATIVITY_USERNAME))
  113. .password(env.getProperty(ASSOCIATIVITY_PASSWORD)).build();
  114.  
  115. if (log.isTraceEnabled())
  116. log.trace(String.format("associativityConfiguration datasource:%s", dataSource.toString()));
  117.  
  118. return dataSource;
  119. }
  120.  
  121. @Bean(name = "associativityEntityManager")
  122. @PersistenceContext(unitName = "associativity")
  123. public LocalContainerEntityManagerFactoryBean entityManagerFactory(
  124. EntityManagerFactoryBuilder builder,
  125. @Qualifier("associativityDataSource") DataSource dataSource) {
  126.  
  127. Map<String, Object> jpaProperties = new HashMap<>();
  128. jpaProperties.put(HIBERNATE_DIALECT, env.getProperty(HIBERNATE_DIALECT));
  129.  
  130. LocalContainerEntityManagerFactoryBean em = builder.dataSource(dataSource)
  131. .packages("org.associative.domain.authenticate").persistenceUnit("pu_associativity").properties(jpaProperties)
  132. .build();
  133. em.setJpaPropertyMap(jpaProperties);
  134.  
  135. HibernateJpaVendorAdapter adapter = new HibernateJpaVendorAdapter();
  136. em.setJpaVendorAdapter(adapter); // not mandatory definition
  137.  
  138. return em;
  139. }
  140.  
  141. @Bean(name = "associativityTransactionManager")
  142. public PlatformTransactionManager associativityTransactionManager(
  143. @Qualifier("associativityEntityManager") EntityManagerFactory entityManagerFactory) {
  144. JpaTransactionManager transactionManager = new JpaTransactionManager();
  145. transactionManager.setEntityManagerFactory(entityManagerFactory);
  146. return transactionManager;
  147. }
  148.  
  149. @Configuration
  150. @EnableTransactionManagement
  151. @EntityScan(basePackages= "org.associative.domain.authenticate")
  152. @EnableJpaRepositories(
  153. basePackages = "org.associative.domain.authenticate.repository"
  154. , entityManagerFactoryRef = "authenticateEntityManager"
  155. , transactionManagerRef = "authenticateTransactionManager"
  156. )
  157. @ConfigurationProperties(prefix="db.authenticate")
  158. public class AuthenticateConfiguration {
  159.  
  160. private final static Logger log = LoggerFactory.getLogger(AuthenticateConfiguration.class);
  161.  
  162. @Autowired
  163. private Environment env;
  164.  
  165. private final static String AUTHENTICATE_DRIVER_CLASS_NAME= "db.authenticate.classname";
  166. private final static String AUTHENTICATE_URL = "db.authenticate.connectionUrl";
  167. private final static String AUTHENTICATE_USERNAME = "db.authenticate.username";
  168. private final static String AUTHENTICATE_PASSWORD = "db.authenticate.password";
  169. private final static String HIBERNATE_DIALECT = "hibernate.dialect";
  170.  
  171. @Primary
  172. @Bean(name = "authenticateDataSource")
  173. public DataSource datasource() {
  174. DataSource dataSource = DataSourceBuilder.create()
  175. .driverClassName(env.getProperty(AUTHENTICATE_DRIVER_CLASS_NAME))
  176. .url(env.getProperty(AUTHENTICATE_URL))
  177. .username(env.getProperty(AUTHENTICATE_USERNAME))
  178. .password(env.getProperty(AUTHENTICATE_PASSWORD))
  179. .build();
  180.  
  181. if ( log.isTraceEnabled()) log.trace(String.format("authenticateDataSource datasource:%s", dataSource.toString()));
  182.  
  183. return dataSource;
  184. }
  185.  
  186. @Primary
  187. @Bean(name="authenticateEntityManager")
  188. @PersistenceContext(unitName = "authenticate")
  189. //https://raymondhlee.wordpress.com/tag/enablejparepositories/
  190. public LocalContainerEntityManagerFactoryBean entityManagerFactory(
  191. EntityManagerFactoryBuilder builder, @Qualifier("authenticateDataSource")DataSource dataSource) {
  192.  
  193. Map<String,Object> jpaProperties = new HashMap<>();
  194. jpaProperties.put(HIBERNATE_DIALECT, env.getProperty(HIBERNATE_DIALECT));
  195.  
  196. LocalContainerEntityManagerFactoryBean em = builder
  197. .dataSource(dataSource)
  198. .packages("org.associative.domain.authenticate")
  199. .persistenceUnit("pu_authenticate")
  200. .properties(jpaProperties)
  201. .build();
  202. em.setJpaPropertyMap(jpaProperties);
  203.  
  204. HibernateJpaVendorAdapter adapter = new HibernateJpaVendorAdapter();
  205. em.setJpaVendorAdapter(adapter); // not mandatory definition
  206.  
  207. return em;
  208. }
  209.  
  210. @Primary
  211. @Bean(name="authenticateTransactionManager")
  212. public PlatformTransactionManager authenticateTransactionManager(
  213. @Qualifier("authenticateEntityManager")EntityManagerFactory entityManagerFactory){
  214. JpaTransactionManager transactionManager = new JpaTransactionManager();
  215. transactionManager.setEntityManagerFactory(entityManagerFactory);
  216. return transactionManager;
  217. }
  218.  
  219. private final static Logger log = LoggerFactory.getLogger(ParameterListView.class);
  220.  
  221. @Autowired
  222. private ParameterController controller;
  223.  
  224. @PostConstruct
  225. private void initView() {
  226. if ( log.isTraceEnabled() ) log.trace(String.format("initView:%s", "no param"));
  227.  
  228. Grid<Parameter> grid = new Grid<>();
  229. this.addComponent(grid);
  230.  
  231. grid.setItems(controller.getParameterHeader(""));
  232.  
  233. grid.addColumn(Parameter::getParameterClass);
  234. grid.addColumn(Parameter::getParameterValueShort);
  235. grid.addColumn(Parameter::getParameterValueLong);
Add Comment
Please, Sign In to add comment