package org.sang.config; import org.apache.commons.dbcp.BasicDataSource; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.mapper.MapperScannerConfigurer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.jdbc.datasource.DataSourceTransactionManager; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; import org.springframework.web.servlet.view.InternalResourceViewResolver; import org.springframework.web.servlet.view.JstlView; import javax.annotation.Resource; import java.io.IOException; @Configuration @EnableWebMvc @ComponentScan("org.sang") public class MyMVCConfig extends WebMvcConfigurerAdapter { @Resource DBConfig dbConfig; @Bean public InternalResourceViewResolver viewResolver() { InternalResourceViewResolver viewResolver = new InternalResourceViewResolver(); viewResolver.setPrefix("/WEB-INF/"); viewResolver.setSuffix(".jsp"); viewResolver.setViewClass(JstlView.class); return viewResolver; } @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { //两个*表示以/assets开始的任意层级的路径都可以访问得到图片,如<img src="../assets/img/1.png"> //一个*表示只可以访问assets目录下的图片文件 registry.addResourceHandler("/static/**").addResourceLocations("/WEB-INF/static/"); } @Bean public BasicDataSource dataSource() { // System.out.println("driver:"+dbConfig.driver); BasicDataSource dataSource = new BasicDataSource(); dataSource.setDriverClassName("com.mysql.jdbc.Driver"); dataSource.setUrl("jdbc:mysql://localhost:3306/blog?useUnicode=true&characterEncoding=UTF-8"); dataSource.setUsername("root"); dataSource.setPassword("root"); // dataSource.setInitialSize(initialSize); // dataSource.setMaxActive(maxActive); // dataSource.setMaxIdle(maxIdle); // dataSource.setMinIdle(minIdle); // dataSource.setMaxWait(maxWait); return dataSource; } @Bean public SqlSessionFactoryBean sqlSessionFactoryBean() { PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(dataSource()); try { sqlSessionFactoryBean.setMapperLocations(resolver.getResources("classpath:mapping/*.xml")); } catch (IOException e) { e.printStackTrace(); } return sqlSessionFactoryBean; } @Bean public MapperScannerConfigurer mapperScannerConfigurer() { MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer(); mapperScannerConfigurer.setBasePackage("org.sang.dao"); mapperScannerConfigurer.setSqlSessionFactoryBeanName("sqlSessionFactoryBean"); return mapperScannerConfigurer; } @Bean public DataSourceTransactionManager transactionManager() { DataSourceTransactionManager dataSourceTransactionManager = new DataSourceTransactionManager(); dataSourceTransactionManager.setDataSource(dataSource()); return dataSourceTransactionManager; } @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(loginInterceptors()); } @Bean public LoginInterceptors loginInterceptors() { return new LoginInterceptors(); } }
最近下载更多
abcdmly12 LV1
1月12日
monolog LV4
2023年6月18日
微信网友_6260196253601792 LV7
2023年6月9日
6389181 LV7
2023年6月1日
刘海柱 LV1
2022年6月12日
wubinbin LV11
2021年12月10日
lsc860911 LV11
2021年11月24日
xbjzc123 LV5
2021年11月23日
eclipse_javen LV6
2021年8月21日
秦sir3067683450 LV10
2021年7月29日
最近浏览更多
lilitu LV6
5月29日
goccgoccgocc LV4
5月23日
2131234536546 LV7
3月31日
abcdmly12 LV1
1月12日
XiaoSong888 LV3
1月10日
fff2003 LV9
2023年12月23日
SQ2930501923 LV14
2023年11月14日
abandan LV4
2023年11月6日
hj1172788262 LV5
2023年10月25日
微信网友_6692060019216384
2023年10月14日
暂无贡献等级