package org.exam.config;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.core.env.Environment;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.orm.jpa.JpaTransactionManager;
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import javax.annotation.Resource;
import javax.sql.DataSource;
import java.beans.PropertyVetoException;
import java.util.Properties;
/**
* Created by xin on 15/1/7.
*/
@Configuration
@ComponentScan(basePackages={"org.exam.service.impl"})
@PropertySource("classpath:config.properties")
@EnableTransactionManagement
@EnableJpaRepositories(basePackages={"org.exam.repository"})
public class AppConfig{
@Resource
private Environment env;
@Bean(destroyMethod="close")
public DataSource dataSource() {
ComboPooledDataSource dataSource=new ComboPooledDataSource();
try {dataSource.setDriverClass(env.getProperty("c3p0.driverClass"));} catch (PropertyVetoException e) {e.printStackTrace();}
dataSource.setJdbcUrl(env.getProperty("c3p0.jdbcUrl"));
dataSource.setUser(env.getProperty("c3p0.user"));
dataSource.setPassword(env.getProperty("c3p0.password"));
dataSource.setInitialPoolSize(Integer.valueOf(env.getProperty("c3p0.initialPoolSize")));
dataSource.setAcquireIncrement(Integer.valueOf(env.getProperty("c3p0.acquireIncrement")));
dataSource.setMinPoolSize(Integer.valueOf(env.getProperty("c3p0.minPoolSize")));
dataSource.setMaxPoolSize(Integer.valueOf(env.getProperty("c3p0.maxPoolSize")));
dataSource.setMaxIdleTime(Integer.valueOf(env.getProperty("c3p0.maxIdleTime")));
dataSource.setIdleConnectionTestPeriod(Integer.valueOf(env.getProperty("c3p0.idleConnectionTestPeriod")));
return dataSource;
}
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory(){
HibernateJpaVendorAdapter jpaVendorAdapter=new HibernateJpaVendorAdapter();
jpaVendorAdapter.setGenerateDdl(true);
jpaVendorAdapter.setShowSql(true);
Properties jpaProperties=new Properties();
jpaProperties.setProperty("hibernate.hbm2ddl.auto", "update");//validate,create,create-drop
LocalContainerEntityManagerFactoryBean emf=new LocalContainerEntityManagerFactoryBean();
emf.setDataSource(dataSource());
emf.setPackagesToScan("org.exam.domain");
emf.setJpaVendorAdapter(jpaVendorAdapter);
emf.setJpaProperties(jpaProperties);
return emf;
}
@Bean
public PlatformTransactionManager transactionManager(){
JpaTransactionManager transactionManager=new JpaTransactionManager();
transactionManager.setEntityManagerFactory(entityManagerFactory().getObject());
return transactionManager;
}
@Bean
public JdbcTemplate jdbcTemplate(){
return new JdbcTemplate(dataSource());
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
参考资料: http://docs.spring.io/spring-session/docs/current-SNAPSHOT/reference/html5/guides/security.html http://blog.csdn.net/xiejx618/article/details/43059683
资源推荐
资源详情
资源评论
收起资源包目录
v6.zip (34个子文件)
src
test
java
org
exam
controller
UserControllerTest.java 1KB
repository
UserRepositoryTest.java 3KB
main
Main.java 495B
main
webapp
WEB-INF
index.jsp 1KB
exception
403.jsp 266B
user
save.jsp 3KB
list.jsp 2KB
login.jsp 1KB
static
jquery
jquery.min.js 91KB
jquery-1.10.2.min.map 137KB
resources
config.properties 313B
log4j.properties 293B
java
org
exam
service
impl
UserServiceImpl.java 873B
UserDetailsServiceImpl.java 750B
UserService.java 457B
domain
Authority.java 1KB
User.java 3KB
Role.java 1KB
web
UserController.java 2KB
DefaultController.java 767B
config
MethodSecurityConfig.java 420B
HttpSessionApplicationInitializer.java 588B
SessionConfig.java 542B
SecurityConfig.java 3KB
DispatcherServletInitializer.java 1KB
AppConfig.java 3KB
MvcConfig.java 2KB
SecurityWebApplicationInitializer.java 463B
repository
RoleRepository.java 257B
UserRepositoryCustom.java 349B
UserRepository.java 415B
AuthorityRepository.java 272B
UserRepositoryImpl.java 3KB
pom.xml 6KB
共 34 条
- 1
xiejx618
- 粉丝: 225
- 资源: 75
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 西门子S7-1200PLC脉冲控制伺服程序案例 此程序是关于西门子1200PLC以PTO脉冲方式控制伺服电机,步进电机的功能块程
- OpenScenario场景仿真结构思维导图, OpenScenario是 自动驾驶仿真软件carla推出来的场景仿真标准,可配
- 永磁同步电机的控制算法仿真模型: 1. 永磁同步电机的MRAS无传感器矢量控制: 2. 永磁同步电机的SMO无传感器矢量控制(反
- 基于Matlab的主动配电网实时无功优化 考虑风电和光伏的接入,采用多目标粒子群算法,以网损和电压偏差为目标,优化变压器分接头、
- Android Studio开发环境搭建(图文教程)_android studio环境搭建-CSDN博客.mhtml
- 【java毕业设计】Springboot+Vue学生信息管理系统 源码+sql脚本+论文+PPT 完整版
- 程序员问卷调查表的内容
- 以下是 VB 入门教程及一个简单的开发案例
- 以下是一个 Web 开发入门教程,包括前端和后端基础知识,以及一个简单的开发案例
- SQL (Structured Query Language) 是用于管理和操作关系型数据库的标准语言
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
前往页