Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.configs;
- import org.apache.tomcat.jdbc.pool.DataSource;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
- import org.springframework.security.config.annotation.web.builders.HttpSecurity;
- import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
- import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
- @Configuration
- @EnableWebSecurity
- public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
- @Autowired
- DataSource dataSource;
- @Override
- protected void configure(HttpSecurity http) throws Exception {
- http
- .authorizeRequests()
- .antMatchers("/", "/home").permitAll()
- .anyRequest().authenticated()
- .and()
- .formLogin()
- .loginPage("/login")
- .permitAll()
- .and()
- .logout()
- .permitAll();
- }
- @Autowired
- public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
- auth
- .jdbcAuthentication().dataSource(dataSource)
- .usersByUsernameQuery(
- "select username,password, enabled from users where username=?")
- .authoritiesByUsernameQuery(
- "select username, role from user_roles where username=?"); }
- }
- package com.example.configs;
- import java.util.Properties;
- import javax.sql.DataSource;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.jdbc.datasource.DriverManagerDataSource;
- import org.springframework.orm.hibernate4.HibernateTransactionManager;
- import org.springframework.orm.hibernate4.LocalSessionFactoryBean;
- import org.springframework.transaction.annotation.EnableTransactionManagement;
- @Configuration
- @EnableTransactionManagement
- public class DatabaseConfig {
- @Value("${db.driver}")
- private String DB_DRIVER;
- @Value("${db.password}")
- private String DB_PASSWORD;
- @Value("${db.url}")
- private String DB_URL;
- @Value("${db.username}")
- private String DB_USERNAME;
- @Value("${hibernate.dialect}")
- private String HIBERNATE_DIALECT;
- @Value("${hibernate.show_sql}")
- private String HIBERNATE_SHOW_SQL;
- @Value("${hibernate.hbm2ddl.auto}")
- private String HIBERNATE_HBM2DDL_AUTO;
- @Value("${entitymanager.packagesToScan}")
- private String ENTITYMANAGER_PACKAGES_TO_SCAN;
- @Bean
- public DataSource dataSource() {
- DriverManagerDataSource dataSource = new DriverManagerDataSource();
- dataSource.setDriverClassName(DB_DRIVER);
- dataSource.setUrl(DB_URL);
- dataSource.setUsername(DB_USERNAME);
- dataSource.setPassword(DB_PASSWORD);
- return dataSource;
- }
- @Bean
- public LocalSessionFactoryBean sessionFactory() {
- LocalSessionFactoryBean sessionFactoryBean = new LocalSessionFactoryBean();
- sessionFactoryBean.setDataSource(dataSource());
- sessionFactoryBean.setPackagesToScan(ENTITYMANAGER_PACKAGES_TO_SCAN);
- Properties hibernateProperties = new Properties();
- hibernateProperties.put("hibernate.dialect", HIBERNATE_DIALECT);
- hibernateProperties.put("hibernate.show_sql", HIBERNATE_SHOW_SQL);
- hibernateProperties.put("hibernate.hbm2ddl.auto", HIBERNATE_HBM2DDL_AUTO);
- sessionFactoryBean.setHibernateProperties(hibernateProperties);
- return sessionFactoryBean;
- }
- @Bean
- public HibernateTransactionManager transactionManager() {
- HibernateTransactionManager transactionManager =
- new HibernateTransactionManager();
- transactionManager.setSessionFactory(sessionFactory().getObject());
- return transactionManager;
- }
- } // class DatabaseConfig
- # Thymeleaf
- spring.thymeleaf.cache: false
- # Database
- db.driver: com.mysql.jdbc.Driver
- db.url: jdbc:mysql://localhost:3306/springdb
- db.username: root
- db.password: 1234
- # Hibernate
- hibernate.dialect: org.hibernate.dialect.MySQL5Dialect
- hibernate.show_sql: true
- hibernate.hbm2ddl.auto: update
- entitymanager.packagesToScan: com.example
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement