Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <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>DesertLamp</groupId>
- <artifactId>DesertLamp</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <packaging>war</packaging>
- <dependencies>
- <!-- Spring -->
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-core</artifactId>
- <version>4.2.6.RELEASE</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-web</artifactId>
- <version>4.2.6.RELEASE</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-webmvc</artifactId>
- <version>4.2.6.RELEASE</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-tx</artifactId>
- <version>4.2.6.RELEASE</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-orm</artifactId>
- <version>4.2.6.RELEASE</version>
- </dependency>
- <!-- Spring Security -->
- <dependency>
- <groupId>org.springframework.security</groupId>
- <artifactId>spring-security-web</artifactId>
- <version>4.1.0.RELEASE</version>
- </dependency>
- <dependency>
- <groupId>org.springframework.security</groupId>
- <artifactId>spring-security-config</artifactId>
- <version>4.1.0.RELEASE</version>
- </dependency>
- <!-- Spring Data JPA -->
- <dependency>
- <groupId>org.springframework.data</groupId>
- <artifactId>spring-data-jpa</artifactId>
- <version>1.10.1.RELEASE</version>
- </dependency>
- <!-- Hibernate -->
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>5.1.0.Final</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-validator</artifactId>
- <version>5.2.4.Final</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-entitymanager</artifactId>
- <version>5.1.0.Final</version>
- </dependency>
- <!-- Servlet -->
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>javax.servlet-api</artifactId>
- <version>3.1.0</version>
- </dependency>
- <dependency>
- <groupId>javax.servlet.jsp</groupId>
- <artifactId>javax.servlet.jsp-api</artifactId>
- <version>2.3.1</version>
- </dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>jstl</artifactId>
- <version>1.2</version>
- </dependency>
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- <version>1.1</version>
- </dependency>
- <!-- MySQL -->
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.37</version>
- </dependency>
- <!-- Commons Dependencies -->
- <dependency>
- <groupId>commons-dbcp</groupId>
- <artifactId>commons-dbcp</artifactId>
- <version>1.4</version>
- </dependency>
- <dependency>
- <groupId>commons-fileupload</groupId>
- <artifactId>commons-fileupload</artifactId>
- <version>1.3.1</version>
- </dependency>
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-lang3</artifactId>
- <version>3.3.2</version>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>1.1.1</version>
- </dependency>
- </dependencies>
- <build>
- <sourceDirectory>src</sourceDirectory>
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.1</version>
- <configuration>
- <source>1.8</source>
- <target>1.8</target>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-war-plugin</artifactId>
- <version>2.3</version>
- <configuration>
- <warSourceDirectory>WebContent</warSourceDirectory>
- <failOnMissingWebXml>false</failOnMissingWebXml>
- <outputDirectory>C:apache-tomcat-7.0.76webapps</outputDirectory>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </project>
- @Configuration
- @EnableWebMvc
- @EnableJpaRepositories(basePackages = "co.in.desertlamp")
- @ComponentScan(basePackages = "co.in.desertlamp")
- @Import(value = { DesertLampSecurityConfiguration.class })
- public class DesertLampWebApplicationConfig extends WebMvcConfigurerAdapter {
- @Bean
- public InternalResourceViewResolver viewResolver() {
- InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
- viewResolver.setViewClass(JstlView.class);
- viewResolver.setPrefix("/WEB-INF/views/");
- viewResolver.setSuffix(".jsp");
- return viewResolver;
- }
- }
- public class DesertLampInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
- @Override
- protected Class<?>[] getRootConfigClasses() {
- return new Class[] { DesertLampWebApplicationConfig.class };
- }
- @Override
- protected Class<?>[] getServletConfigClasses() {
- return null;
- }
- @Override
- protected String[] getServletMappings() {
- return new String[] { "/" };
- }
- }
- @Configuration
- @EnableTransactionManagement
- @EnableJpaRepositories(basePackages = "co.in.desertlamp")
- @ComponentScan({ "co.in.desertlamp" })
- @PropertySource(value = { "classpath:/co/in/desertlamp/resources/desertlamp.properties" })
- public class DesertLampApplicationConfig {
- private static final String DATABASE_DRIVER = "db.driver";
- private static final String DATABASE_URL = "db.url";
- private static final String DATABASE_USERNAME = "db.username";
- private static final String DATABASE_PASSWORD = "db.password";
- private static final String HIBERNATE_DIALECT = "hibernate.dialect";
- private static final String HIBERNATE_SHOWSQL = "hibernate.show_sql";
- private static final String HIBERNATE_FORMATSQL = "hibernate.format_sql";
- private static final String HIBERNATE_HBM2DDL = "hibernate.hbm2ddl.auto";
- @Resource
- private Environment environment;
- @Bean
- public LocalSessionFactoryBean sessionFactory() {
- LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
- sessionFactory.setDataSource(dataSource());
- sessionFactory.setPackagesToScan(new String[] { "co.in.desertlamp" });
- sessionFactory.setHibernateProperties(hibernateProperties());
- return sessionFactory;
- }
- @Bean
- public DataSource dataSource() {
- DriverManagerDataSource dataSource = new DriverManagerDataSource();
- dataSource.setDriverClassName(environment.getRequiredProperty(DATABASE_DRIVER));
- dataSource.setUrl(environment.getRequiredProperty(DATABASE_URL));
- dataSource.setUsername(environment.getRequiredProperty(DATABASE_USERNAME));
- dataSource.setPassword(environment.getRequiredProperty(DATABASE_PASSWORD));
- return dataSource;
- }
- @Bean
- @Conditional(DataSourceCondition.class)
- public DataSourceInitializer dataSourceInitializer(DataSource dataSource) {
- ResourceDatabasePopulator resourceDatabasePopulator = new ResourceDatabasePopulator();
- //Put Logger here
- resourceDatabasePopulator.addScript(new ClassPathResource("/co/in/desertlamp/scripts/loadUserAndRoleData.sql"));
- DataSourceInitializer dataSourceInitializer = new DataSourceInitializer();
- dataSourceInitializer.setDataSource(dataSource);
- dataSourceInitializer.setDatabasePopulator(resourceDatabasePopulator);
- return dataSourceInitializer;
- }
- private Properties hibernateProperties() {
- Properties hibernateProperties = new Properties();
- hibernateProperties.put(HIBERNATE_DIALECT, environment.getRequiredProperty(HIBERNATE_DIALECT));
- hibernateProperties.put(HIBERNATE_SHOWSQL, environment.getRequiredProperty(HIBERNATE_SHOWSQL));
- hibernateProperties.put(HIBERNATE_FORMATSQL, environment.getRequiredProperty(HIBERNATE_FORMATSQL));
- hibernateProperties.put(HIBERNATE_HBM2DDL, environment.getRequiredProperty(HIBERNATE_HBM2DDL));
- return hibernateProperties;
- }
- @Bean(name = "entityManagerFactory")
- public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
- LocalContainerEntityManagerFactoryBean entityManagerFactoryBean = new LocalContainerEntityManagerFactoryBean();
- entityManagerFactoryBean.setDataSource(dataSource());
- entityManagerFactoryBean.setPackagesToScan(new String[] { "co.in.desertlamp" });
- JpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
- entityManagerFactoryBean.setJpaVendorAdapter(vendorAdapter);
- entityManagerFactoryBean.setJpaProperties(hibernateProperties());
- return entityManagerFactoryBean;
- }
- @Bean
- public PlatformTransactionManager transactionManager(
- EntityManagerFactory entityManagerFactory) {
- JpaTransactionManager transactionManager = new JpaTransactionManager();
- transactionManager.setEntityManagerFactory(entityManagerFactory);
- return transactionManager;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement