spring整合mybatis,springMVC的0配置文件方式
2017-01-16 11:47
507 查看
0配置文件的形式主要是采用spring3.0提供的@configuration注解和spring容器在启动的时候会加载实现了WebApplicationInitializer的类,并调用其onStartUp的方法的特性去实现.
具体做法如下:
1.建立MyWebAppInitializer去实现WebApplicationInitializer接口,并且去重写其onStartUp方法.实际上这个类取代了web.xml的配置.代码如下:
2.建立WebConfig.class.这个类用于取代spring的配置文件springmvc.xml.代码如下:相关注解的解释写在注释中.
3.建立AppConfig.class.它用于取代applicationContext.xml.这里我们使用了c3p0数据库连接池配合mybatis框架使用
4.至此,我们就可以正常的建立Controller类书写代码了.不过,不要忘记在对应的类上加上@controller,@service,@repository哦.
5.此外,为了防止会出现乱码的情况,我们最好再配上spring提供的CharacterEncodingFilter去解决乱码问题.方式如下,也是在MyWebAppInitializer类中配置的:
![](https://images2015.cnblogs.com/blog/972319/201701/972319-20170116115342036-444987250.png)
具体做法如下:
1.建立MyWebAppInitializer去实现WebApplicationInitializer接口,并且去重写其onStartUp方法.实际上这个类取代了web.xml的配置.代码如下:
public class MyWebAppInitializer implements WebApplicationInitializer{ @Override public void onStartup(ServletContext servletContext) throws ServletException { //相当于在web.xml在配置spring启动用的ContextLoaderListener AnnotationConfigWebApplicationContext rootContext=new AnnotationConfigWebApplicationContext(); rootContext.register(AppConfig.class); servletContext.addListener(new ContextLoaderListener(rootContext)); //相当于在web.xml在配置DispatcherServlet AnnotationConfigWebApplicationContext webContext=new AnnotationConfigWebApplicationContext(); webContext.register(WebConfig.class); Dynamic registration = servletContext.addServlet("dispatcher",new DispatcherServlet(webContext)); registration.setLoadOnStartup(1); registration.addMapping("/"); } }
2.建立WebConfig.class.这个类用于取代spring的配置文件springmvc.xml.代码如下:相关注解的解释写在注释中.
@EnableWebMvc //开启springmvc的配置 @Configuration //开启基于Java类的配置 @ComponentScan(basePackages="com.xyy.web") public class WebConfig extends WebMvcConfigurerAdapter{ //配置与dispatcherServlet相关联的bean @Bean//代表这是一个bean.spring容器会将其放在容器中. public ViewResolver viewResolver() { InternalResourceViewResolver resolver=new InternalResourceViewResolver(); resolver.setPrefix("/"); resolver.setSuffix(".jsp"); resolver.setExposeContextBeansAsAttributes(true);//使得可以在jsp页面中可以通过${}访问bean return resolver; } //开启静态文件的访问. @Override public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) { configurer.enable(); } }
3.建立AppConfig.class.它用于取代applicationContext.xml.这里我们使用了c3p0数据库连接池配合mybatis框架使用
@EnableAspectJAutoProxy//开启自动注解扫描 @EnableTransactionManagement//配置事务管理 @Configuration @ComponentScan(basePackages="com.xyy")//扫描注解 public class AppConfig { //配置c3p0数据源 @Bean public DataSource dataSource() { ComboPooledDataSource dataSource=new ComboPooledDataSource(); try { dataSource.setDriverClass("com.mysql.jdbc.Driver"); } catch (PropertyVetoException e) { e.printStackTrace(); } dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/test"); dataSource.setUser("root"); dataSource.setPassword("root"); return dataSource; } //配置SqlSessionFactoryBean @Bean public SqlSessionFactoryBean sqlSessionFactory() { SqlSessionFactoryBean bean=new SqlSessionFactoryBean(); bean.setConfigLocation(new ClassPathResource("SqlMapConfig.xml")); bean.setDataSource(dataSource()); return bean; } //配置开启Mapper扫描 @Bean public MapperScannerConfigurer mapperScannerConfigurer() { MapperScannerConfigurer configurer=new MapperScannerConfigurer(); configurer.setBasePackage("com.xyy.mapper"); return configurer; } //配置开启DataSourceTransactionManager @Bean public DataSourceTransactionManager dataSourceTransactionManager() { DataSourceTransactionManager manager=new DataSourceTransactionManager(); manager.setDataSource(dataSource()); return manager; } }
4.至此,我们就可以正常的建立Controller类书写代码了.不过,不要忘记在对应的类上加上@controller,@service,@repository哦.
5.此外,为了防止会出现乱码的情况,我们最好再配上spring提供的CharacterEncodingFilter去解决乱码问题.方式如下,也是在MyWebAppInitializer类中配置的:
![](https://images2015.cnblogs.com/blog/972319/201701/972319-20170116115342036-444987250.png)
相关文章推荐
- javaWeb项目SpringMVC3.2.1与Mybatis3.0.4整合实例(Mybaits-spring配置文件的几种方式)之一SqlSessionDaoSupport方式
- spring,springmvc,mybatis基本整合(一)--xml文件配置方式(2)
- SSM(spring-springmvc-mybatis)整合开发xml配置文件内容springmvc-config.xml,application.xml,web.xml
- Spring ,Springmvc,mybatis三大框架整合的配置文件支持
- spring,springmvc,mybatis基本整合(一)--xml文件配置方式(1)
- spring,springmvc,mybatis基本整合(一)--xml文件配置方式(1)
- spring整合mybatis完整案例(配置文件方式)
- spring、springMVC、mybatis整合配置文件问题
- Spring详解之四:SpringMVC整合Mybatis相关配置文件信息
- spring、springmvc、mybatis整合文件配置详解
- spring,springmvc,mybatis基本整合(一)--xml文件配置方式(1)
- mybatis与spring整合(基于配置文件)(转)
- Spring+mybatis+maven整合过程加载配置文件jdbc.properties
- mybatis与spring整合(基于配置文件)
- Spring配置文件中FactoryBean配置4种方式(2种hibernate,1种ibatis,1种mybatis)
- mybatis与spring整合配置文件
- mybatis与spring整合(基于配置文件)
- SSM整合配置文件(Springmvc+Spring+Mybatis)
- spring 整合hibernate的配置文件的两种方式
- spring和quartz整合实现定时任务(配置文件配置方式