哪些网站是jsp做的,服装外贸行业发展趋势,做轻淘客网站要多大的空间,php教育网站开发工作常规配置#xff08;Controller加载控制#xff09; SpringMVC的处理器对应的bean必须按照规范格式开发#xff0c;未避免加入无效的bean可通过bean加载过滤器进行包含设定或排除设定#xff0c;表现层bean标注通常设定为Controller业务层与数据层bean加载由Spring控制Controller加载控制 SpringMVC的处理器对应的bean必须按照规范格式开发未避免加入无效的bean可通过bean加载过滤器进行包含设定或排除设定表现层bean标注通常设定为Controller业务层与数据层bean加载由Spring控制表现层bean加载由SpringMVC单独控制 表现层处理bean使用注解Controller声明bean加载控制使用包含行性滤器过滤器类型为通过注解进行过滤过滤的注解名称为Controller xml方式
context:component-scan base-packagecom.itzhuzhucontext:include-filter typeannotation expressionorg.springframework.stereotype.Controller/
/context:component-scan静态资源加载 核心控制器拦截的是所有请求需要对静态资源请求进行放行通过配置放行资源实现 !--放行指定类型静态资源配置方式但是文件多了这种方式很麻烦--
mvc:resources mapping/img/** location/img//
mvc:resources mapping/js/** location/js//
mvc:resources mapping/css/** location/css//!--SpringMVC提供的简化格式可以放行所有普通资源调用--
mvc:default-servlet-handler/中文乱码处理 SpringMVC提供专用的中文字符过滤器用于处理乱码问题 配置在 web.xml 里面
!--乱码处理过滤器与Servlet中使用的完全相同差异之处在于处理器的类由Spring提供--
filterfilter-nameCharacterEncodingFilter/filter-namefilter-classorg.springframework.web.filter.CharacterEncodingFilter/filter-classinit-paramparam-nameencoding/param-nameparam-valueUTF-8/param-value/init-param
/filter
filter-mappingfilter-nameCharacterEncodingFilter/filter-nameurl-pattern/*/url-pattern
/filter-mapping注解驱动
使用注解形式转化SpringMVC核心配置文件为配置类
Configuration // 声明是一个配置类
ComponentScan(value com.itzhuzhu,includeFilters ComponentScan.Filter(typeFilterType.ANNOTATION,classes {Controller.class}) // 代替Controller加载控制)// 要想代替静态资源加载需要实现WebMvcConfigurer然后重写方法。下面两种方式代替的是静态资源加载的选一个用就可以了
public class SpringMVCConfiguration implements WebMvcConfigurer{// 注解配置放行指定资源格式Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler(/img/**).addResourceLocations(/img/);registry.addResourceHandler(/js/**).addResourceLocations(/js/);registry.addResourceHandler(/css/**).addResourceLocations(/css/);}//注解配置通用放行资源的格式Overridepublic void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {configurer.enable();;}
}基于servlet3.0规范自定义Servlet容器初始化配置类加载SpringMVC核心配置类代替web.xml文件的
public class ServletContainersInitConfig extends AbstractDispatcherServletInitializer {//创建Servlet容器时使用注解的方式加载SPRINGMVC配置类中的信息并加载成WEB专用的 //ApplicationContext对象//该对象放入了ServletContext范围后期在整个WEB容器中可以随时获取调用Overrideprotected WebApplicationContext createServletApplicationContext() {AnnotationConfigWebApplicationContext ctx new AnnotationConfigWebApplicationContext();ctx.register(SpringMVCConfiguration.class);return ctx;}//注解配置映射地址方式服务于SpringMVC的核心控制器DispatcherServletOverrideprotected String[] getServletMappings() {return new String[]{/};}Overrideprotected WebApplicationContext createRootApplicationContext() {return null;}//乱码处理作为过滤器在servlet容器启动时进行配置Overridepublic void onStartup(ServletContext servletContext) throws ServletException {super.onStartup(servletContext);CharacterEncodingFilter cef new CharacterEncodingFilter();cef.setEncoding(UTF-8);FilterRegistration.Dynamic registration servletContext.addFilter(characterEncodingFilter, cef);// 添加映射地址registration.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST,DispatcherType.FORWARD,DispatcherType.INCLUDE),false,/*);}
}