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
2024年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日

ma406805131 LV19
2024年12月18日
dengge123 LV14
2024年12月13日
lilitu LV6
2024年5月29日
goccgoccgocc LV4
2024年5月23日
2131234536546 LV7
2024年3月31日
abcdmly12 LV1
2024年1月12日
XiaoSong888 LV3
2024年1月10日
fff2003 LV9
2023年12月23日
SQ2930501923 LV14
2023年11月14日
abandan LV4
2023年11月6日