Spring使用java代码配置Web.xml进行访问service
Spring使用java代码配置Web.xml进行访问service
方式一:继承WebMvcConfigurerAdapter类
1、使用一个类来继承
package com.wbg.springJavaConfig.spring; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.web.WebApplicationInitializer; import org.springframework.web.context.support.AnnotationConfigWebApplicationContext; import org.springframework.web.servlet.DispatcherServlet; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; import org.springframework.web.servlet.view.InternalResourceViewResolver; import org.springframework.web.servlet.view.JstlView;import javax.servlet.ServletContext; import javax.servlet.ServletRegistration;@Configuration//声明当前类是一个配置类(相当于一个Spring的xml文件) @EnableWebMvc//若无此注解,WebMvcConfigurerAdapter无效 /**** @ComponentScan 扫描("xxx")包下的@Service、@Controller、@Component、@Repository的类,并注册为Bean*相当于:<context:component-scan base-package="xxx" />*/ @ComponentScan("com.wbg.springJavaConfig.controller") public class SpringConfig extends WebMvcConfigurerAdapter {/*** @Bean 相当Spring配置文件bean节点* 添加一个ViewResolver解析view 配置jsp* @return InternalResourceViewResolver* 这里的配置相当于:* <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">* <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />* <property name="prefix" value="/WEB-INF/jsp/" />* <property name="suffix" value=".jsp" />* </bean>*/@Beanpublic InternalResourceViewResolver viewResolver(){InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();viewResolver.setPrefix("/WEB-INF/views/");viewResolver.setSuffix(".jsp");viewResolver.setViewClass(JstlView.class);return viewResolver;}} class WebInitializer implements WebApplicationInitializer {/*** <context-param>* <param-name>contextConfigLocation</param-name>* <param-value>classpath:spring/spring-*.xml</param-value>* </context-param>* <listener>* <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>* </listener>*** <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>* <init-param>* <param-name>contextConfigLocation</param-name>* <param-value>classpath:spring-web.xml</param-value>* </init-param>** @param servletContext*/public void onStartup(ServletContext servletContext){AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();ctx.register(SpringConfig.class);ctx.setServletContext(servletContext);ServletRegistration.Dynamic dynamic = servletContext.addServlet("dispatcher",new DispatcherServlet(ctx));dynamic.addMapping("/");dynamic.setLoadOnStartup(1);}}
View Code
2、创建jsp
3、使用
方式二:继承AbstractAnnotationConfigDispatcherServletInitializer类
1、创建WebInit继承 :
package com.wbg.springJavaConfig.spring2;import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;public class WebInit extends AbstractAnnotationConfigDispatcherServletInitializer {@Overrideprotected Class<?>[] getRootConfigClasses() {return new Class[]{ContextConfig.class};}@Overrideprotected Class<?>[] getServletConfigClasses() {return new Class[]{SpringWebConfig.class};}@Overrideprotected String[] getServletMappings() {return new String[]{"/"};} }
View Code
2、创建:SpringWebConfig类
package com.wbg.springJavaConfig.spring2;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.multipart.support.StandardServletMultipartResolver; import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.view.InternalResourceViewResolver; import org.springframework.web.servlet.view.JstlView;@Configuration public class SpringWebConfig {@Beanpublic InternalResourceViewResolver internalResourceViewResolverConfig(){InternalResourceViewResolver resolver = new InternalResourceViewResolver();resolver.setViewClass(JstlView.class);resolver.setPrefix("/WEB-INF/jsp/");resolver.setSuffix(".jsp");return resolver;}@Beanpublic StandardServletMultipartResolver multipartResolverConfig(){return new StandardServletMultipartResolver();}public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {configurer.enable();//对静态资源的请求转发到容器缺省的servlet,而不使用 DispatcherServlet } }
View Code
3、创建ContextConfig类
package com.wbg.springJavaConfig.spring2;import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; import org.springframework.web.servlet.config.annotation.EnableWebMvc;@Configuration @EnableWebMvc @ComponentScan(basePackages = {"com.wbg.springJavaConfig.controller"},excludeFilters = {@ComponentScan.Filter(type = FilterType.ANNOTATION,value = EnableWebMvc.class)}) public class ContextConfig { }
View Code
4、使用
demo:https://github.com/weibanggang/SpirngwebConfig.git
Spring使用java代码配置Web.xml进行访问service相关推荐
- 一个配置web.xml的编程方法
使用编程方法针对任何java/j2ee配置web.xml Introduction 本文介绍了Java和J2EE项目使用任何一种编程方法的web.xml配置 Background 作为一种传统的方法, ...
- jsp到java xml配置,JSP中web配置:web.xml
# re: JSP中web配置:web.xml 2007-07-02 12:24 和田雨 - http://java.sun.com/xml/ns/j2ee" xmlns:j2ee=&quo ...
- java quartz web.xml_quartz定时执行任务,并配置web.xml的操作方法
今天项目上需要做个定时任务,临时学的,quartz的功能还是很强大用起来也方便,这里的demo只是实现每天定时执行一次,其他功能可以在此基础上继续深入学习,哈哈 睡觉,明天继续. 一.maven依赖: ...
- Spring揭秘--寻找遗失的web.xml
今天我们来放松下心情,不聊分布式,云原生,来聊一聊初学者接触的最多的 java web 基础.几乎所有人都是从 servlet,jsp,filter 开始编写自己的第一个 hello world 工程 ...
- SpringMVC4零配置--web.xml
servlet3.0+规范后,允许servlet,filter,listener不必声明在web.xml中,而是以硬编码的方式存在,实现容器的零配置. ServletContainerInitiali ...
- jsp连接servlet配置web.xml
jsp连接servlet配置web.xml 两种方法 第一种:建立jsp文件,servlet文件,配置web.xml文件. 第二种:建立jsp文件,servlet文件. 首先介绍第一种: 打开ecli ...
- web.xml过滤html,Servlet过滤器两种配置方法(注解、配置web.xml文件)
方法一(注解) /** * 使用注解标注过滤器 * @WebFilter将一个实现了javax.servlet.Filte接口的类定义为过滤器 * 属性filterName声明过滤器的名称,可选 * ...
- IDEA - 解决 Maven 初始化配置 web.xml 为 2.3 的问题
IDEA - 解决 Maven 初始化配置 web.xml 为 2.3 的问题 参考文章: (1)IDEA - 解决 Maven 初始化配置 web.xml 为 2.3 的问题 (2)https:// ...
- c3p0连接池配置Spring核心配置文件中配置applicationContext.xml
1.1 配置c3p0.properties属性文件 #c3p0连接池属性文件 # 四大基本信息 c3p0.driverClass=com.mysql.jdbc.Driver #这里需要改成你自己的数据 ...
- Spring装配bean的三种方法:自动化装配,java代码装配,XML装配及它们的混合使用
一.自动化装配 首先,把可能被装配的类声明为组件类,告知spring要为这个类创建bean如: import org.springframework.stereotype.Component;@ Co ...
最新文章
- [bzoj2300] [HAOI2011]防线修建
- PTA基础编程题目集-6-11 求自定类型元素序列的中位数
- 第5章 用户身份与文件权限
- Σ-delta ADC是否可以测量热噪声?
- ubuntu中安装kDevelop
- 行为模型实例 php,JS中事件模型的实例详解
- Linux——JDK的部署
- java向数组中增加新元素_用Java中的新元素替换List的给定索引处的元素
- 作者:男,博士,西南财经大学经济数学学院讲师、硕士生导师
- python怎么读取图像的txt标注_使用包含文件名的.txt文件读取图像数据
- htc816t Android go,移动版HTC 816t刷入官方原版recovery教程
- [渝粤教育] 中国地质大学 信息检索 复习题 (2)
- 干细胞研究最新进展(2022年4月)
- 数据分析案例 |【01】电影数据分析
- Wifi热点java_Wifi热点实现文件传输
- FPGA学习教程-黑金AX301B
- 修改苹果开发者账号的资料
- 商城项目14_商品新增vo抽取、修改vo、新增逻辑、代码的具体落地、SPU检测、SKU检测、流程图
- 华为手机拍照那么厉害,为什么就你拍的不好看?原来是因为这些功能
- matlab利用conv函数验证卷积和的交换律_分配律和结合律,卷积和的代数运算服从交换律和分配律,但不服从结合律。...
热门文章
- python2逐步转向python3之小程序实践学习
- c语言中按字节运算,C语言中位运算的巧用
- python浮点数转科学计数_python – 将float转换为字符串没有科学记数法和假精度...
- kubernetes service是什么
- mybatis xml中大于、小于、if else的写法
- c性能大容量cket_水合低共熔电解质有助于改善水性锌电池的性能
- Toggle和Slider组件
- Android广播时间——实现强制下线功能
- A non well formed numeric value encountered
- js之类 面向对象的书写方式(详细篇)