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

posted @ 2018-12-14 23:26 韦邦杠 阅读(...) 评论(...) 编辑 收藏

Spring使用java代码配置Web.xml进行访问service相关推荐

  1. 一个配置web.xml的编程方法

    使用编程方法针对任何java/j2ee配置web.xml Introduction 本文介绍了Java和J2EE项目使用任何一种编程方法的web.xml配置 Background 作为一种传统的方法, ...

  2. 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 ...

  3. java quartz web.xml_quartz定时执行任务,并配置web.xml的操作方法

    今天项目上需要做个定时任务,临时学的,quartz的功能还是很强大用起来也方便,这里的demo只是实现每天定时执行一次,其他功能可以在此基础上继续深入学习,哈哈 睡觉,明天继续. 一.maven依赖: ...

  4. Spring揭秘--寻找遗失的web.xml

    今天我们来放松下心情,不聊分布式,云原生,来聊一聊初学者接触的最多的 java web 基础.几乎所有人都是从 servlet,jsp,filter 开始编写自己的第一个 hello world 工程 ...

  5. SpringMVC4零配置--web.xml

    servlet3.0+规范后,允许servlet,filter,listener不必声明在web.xml中,而是以硬编码的方式存在,实现容器的零配置. ServletContainerInitiali ...

  6. jsp连接servlet配置web.xml

    jsp连接servlet配置web.xml 两种方法 第一种:建立jsp文件,servlet文件,配置web.xml文件. 第二种:建立jsp文件,servlet文件. 首先介绍第一种: 打开ecli ...

  7. web.xml过滤html,Servlet过滤器两种配置方法(注解、配置web.xml文件)

    方法一(注解) /** * 使用注解标注过滤器 * @WebFilter将一个实现了javax.servlet.Filte接口的类定义为过滤器 * 属性filterName声明过滤器的名称,可选 * ...

  8. IDEA - 解决 Maven 初始化配置 web.xml 为 2.3 的问题

    IDEA - 解决 Maven 初始化配置 web.xml 为 2.3 的问题 参考文章: (1)IDEA - 解决 Maven 初始化配置 web.xml 为 2.3 的问题 (2)https:// ...

  9. c3p0连接池配置Spring核心配置文件中配置applicationContext.xml

    1.1 配置c3p0.properties属性文件 #c3p0连接池属性文件 # 四大基本信息 c3p0.driverClass=com.mysql.jdbc.Driver #这里需要改成你自己的数据 ...

  10. Spring装配bean的三种方法:自动化装配,java代码装配,XML装配及它们的混合使用

    一.自动化装配 首先,把可能被装配的类声明为组件类,告知spring要为这个类创建bean如: import org.springframework.stereotype.Component;@ Co ...

最新文章

  1. [bzoj2300] [HAOI2011]防线修建
  2. PTA基础编程题目集-6-11 求自定类型元素序列的中位数
  3. 第5章 用户身份与文件权限
  4. Σ-delta ADC是否可以测量热噪声?
  5. ubuntu中安装kDevelop
  6. 行为模型实例 php,JS中事件模型的实例详解
  7. Linux——JDK的部署
  8. java向数组中增加新元素_用Java中的新元素替换List的给定索引处的元素
  9. 作者:男,博士,西南财经大学经济数学学院讲师、硕士生导师
  10. python怎么读取图像的txt标注_使用包含文件名的.txt文件读取图像数据
  11. htc816t Android go,移动版HTC 816t刷入官方原版recovery教程
  12. [渝粤教育] 中国地质大学 信息检索 复习题 (2)
  13. 干细胞研究最新进展(2022年4月)
  14. 数据分析案例 |【01】电影数据分析
  15. Wifi热点java_Wifi热点实现文件传输
  16. FPGA学习教程-黑金AX301B
  17. 修改苹果开发者账号的资料
  18. 商城项目14_商品新增vo抽取、修改vo、新增逻辑、代码的具体落地、SPU检测、SKU检测、流程图
  19. 华为手机拍照那么厉害,为什么就你拍的不好看?原来是因为这些功能
  20. matlab利用conv函数验证卷积和的交换律_分配律和结合律,卷积和的代数运算服从交换律和分配律,但不服从结合律。...

热门文章

  1. python2逐步转向python3之小程序实践学习
  2. c语言中按字节运算,C语言中位运算的巧用
  3. python浮点数转科学计数_python – 将float转换为字符串没有科学记数法和假精度...
  4. kubernetes service是什么
  5. mybatis xml中大于、小于、if else的写法
  6. c性能大容量cket_水合低共熔电解质有助于改善水性锌电池的性能
  7. Toggle和Slider组件
  8. Android广播时间——实现强制下线功能
  9. A non well formed numeric value encountered
  10. js之类 面向对象的书写方式(详细篇)