1. 前言

在SpringBoot项目中,一般来说是不存在XML配置的,但不是不可以用,而是SpringBoot官方不推荐使用XML配置方式,推荐使用Java来进行配置。我们也可以自己实现一个完全基于Java配置的SS环境。

2.基本SS环境搭建

  1. 创建一个普通Maven工程,添加依赖pom.xml文件内容如下
<dependencies><!--Spring和SpringMVC依赖--><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.1.7.RELEASE</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version></dependency><!--JSP依赖--><dependency><groupId>javax.servlet.jsp</groupId><artifactId>javax.servlet.jsp-api</artifactId><version>2.3.1</version></dependency><!--JSON依赖--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.45</version></dependency></dependencies>
  1. 创建SpringMVCConfig.java,并继承WebMvcConfigurationSupport类。此类相当于Spring+SpringMVC配置文件
//声明这是一个配置类
@Configuration
//开启注解扫描
@ComponentScan(basePackages = "org.staybug")
public class SpringMVCConfig extends WebMvcConfigurationSupport {@Override//配置静态资源过滤protected void addResourceHandlers(ResourceHandlerRegistry registry) {//过滤以/js开头的路径,将/**的内容追加到/js/后面得到资源的路径位置registry.addResourceHandler("/js/**").addResourceLocations("classpath:/js/");}@Override//配置视图解析器protected void configureViewResolvers(ViewResolverRegistry registry) {//视图的位置registry.jsp("/jsp/",".jsp");}@Override//路径映射,访问/hello3,返回hello视图protected void addViewControllers(ViewControllerRegistry registry) {registry.addViewController("/hello3").setViewName("hello");}@Override//配置返回JSON格式数据protected void configureMessageConverters(List<HttpMessageConverter<?>> converters) {FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();converter.setDefaultCharset(Charset.forName("utf-8"));FastJsonConfig fastJsonConfig = new FastJsonConfig();fastJsonConfig.setCharset(Charset.forName("utf-8"));converter.setFastJsonConfig(fastJsonConfig);converters.add(converter);}
}
  1. 创建WebInit.java,并实现WebApplicationInitializer.java。此配置类相当于web.xml
public class WebInit implements WebApplicationInitializer {public void onStartup(ServletContext servletContext) throws ServletException {AnnotationConfigWebApplicationContext acwac = new AnnotationConfigWebApplicationContext();//加载SpringMVCConfig.java配置文件acwac.register(SpringMVCConfig.class);//配置前端控制器ServletRegistration.Dynamic springmvc = servletContext.addServlet("springmvc", new DispatcherServlet(acwac));springmvc.setLoadOnStartup(1);springmvc.addMapping("/");}
}
  1. 创建HelloController.java测试类
@RestController
public class HelloController {@GetMapping("/hello")public String hello() {return "hello";}
}
  1. 测试,访问http://localhost/hello,客户端显示hello

纯Java搭建SS开发环境相关推荐

  1. MyEclipse搭建java Web项目开发环境

    MyEclipse搭建java Web项目开发环境 首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成,只要在安装配置成功之后才可以进入下面的java Web项目开发环境的搭 ...

  2. java alsa 编程_搭建JavaWeb开发环境

    更好的阅读体验欢迎访问博客搭建JavaWeb开发环境 前言 在服务器上搭建javaweb开发环境,特此记录 一.安装JDK 查看默认JDK java -version rpm -qa|grep jav ...

  3. java web开发myeclipse_【java项目实战】一步步教你使用MyEclipse搭建java Web项目开发环境(一)...

    首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成,只要在安装配置成功之后才可以进入下面的java Web项目开发环境的搭建. 1.安装工具 第一步,下载并安装JDK,到官网 ...

  4. Java JDK 8u221开发环境搭建

    Java JDK 8u221开发环境搭建 Java JDK 8u221下载 1.java SE8u221的下载 搭建环境 更改路径 现在我们来搭建Java开发环境 Java JDK 8u221下载 1 ...

  5. Docker java项目发布/开发环境搭建

    Docker java项目发布/开发环境搭建 线上部署项目/开发环境搭建命令大全 关闭windows10 指定应用 安装Docker 安装 docker-compose 关于docker容器导致硬盘耗 ...

  6. android开发java环境_搭建Android开发环境 - Android - mobile - JavaEye论坛

    Android的开发现在是如火如荼,逞现在不是很忙了,学习了下,这里记录下了在windows在如何搭建Android开发环境,对自己是个记录,对新入门的兄弟姐妹们可以参考一下! (1)安装JDK,省略 ...

  7. nodejs mac java home_Mac上搭建nodejs开发环境

    ###Mac上搭建nodejs开发环境 ####安装homebrew 1 2 3ruby -e "$(curl -fsSL https://raw.githubusercontent.com ...

  8. 在CentOS 6.2上搭建vim开发环境

    在CentOS 6.2上搭建vim开发环境 最后更新日期:2013-07-05 1.首先使用Ubuntu(所在ip为192.168.16.230)翻墙登陆http://www.vim.org/,下载其 ...

  9. SpringMVC学习(二)——快速搭建SpringMVC开发环境(注解方式)

    文章目录 说明 1.工程搭建 2.注解配置 2.1.context:annotation-config说明 2.2.context:component-scan配置说明 2.3.mvc:annotat ...

最新文章

  1. Python3.3 学习笔记1 - 初步安装
  2. stl set求交集 并集 差集
  3. java 纳秒 毫秒_golang的time包:秒、毫秒、纳秒时间戳输出方式
  4. flink 不设置水印_从0到1学习Flink—— Flink parallelism 和 Slot 介绍
  5. myeclipse去掉js报错
  6. python转json的函数_pandas.DataFrame.to_json按行转json的方法
  7. 贝叶斯方法(Bayesian approach) —— 一种概率解释(probabilistic interpretation)
  8. Unity面试题精选(1)
  9. 《转》python学习(3)
  10. TB6612FNG电机驱动替代方案
  11. 五 IP核行业潜在投资方向和机会
  12. 沟通的艺术与处世智慧 ——戴尔卡耐基(笔记)
  13. 坐落尘世的繁华,幽眉清黛任花开花谢
  14. HTML5实现3D校园地图思路
  15. 气质妈妈“特色”制胜巧心计 情系旗袍书画淘宝梦
  16. Android Studio 更换/设置App应用图标Icon
  17. Windows App开发之编辑文本与绘制图形
  18. 爬虫之BeautifulSoup
  19. win7中如何获取IE8的缓存视频文件
  20. 黑镜2.0wordpress卡片式主题,设计素材教程网站模版

热门文章

  1. 计算机专业必须要i7处理器,电脑配置i7处理器的人不一定都懂电脑
  2. 【Centos 7】---vim环境配色(colorscheme)配置
  3. 网络教育计算机统考-多媒体技术操作题
  4. jpa整合querydsl实现简单查询以及左联查询
  5. 线代 | 【提神醒脑】自用笔记串联三 —— 相似对角化 · 二次型 · 合同变换
  6. [转帖]联想的股权结构
  7. 来自一个敲了5年代码的网络安全工程师的自述(目前薪资20K)
  8. 机器学习实战:第一章
  9. 数字通信第三章——多维信号传输
  10. mingw64官方下载地址