全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

手把手教你搭建SpringMVC框架——最小化配置

为什么需要Spring MVC

最开始接触网页的时候,是纯的html/css页面,那个时候还是用Dreamweaver来绘制页面。

随着网站开发的深入,开始学习servlet开发,记得最痛苦的就是servlet返回网页的内容是字符串拼接的html页面,整不好就无法显示....

再到后来开学学习SSH,庞大的架构眼花缭乱。Struts繁杂的标签、hibernate搞不清楚的数据表,Spring不知道哪里搞错的bean。

最后随着发展,前端开始占有一席之地,nodejs风生水起,很多业务逻辑开始前置。再也看不到当初的bo、dao了,取而代之的是各种框架的mvvm,后台减轻压力只负责一些必要的逻辑。

到现在,好像web开发又发展到了一个阶段——前端由于Nodejs的作用,可以支撑一部分业务逻辑,通过转发代理,统一发往后台。后台通过url实现mvc,对性持久化、更深入的逻辑操作等等。Spring MVC在这里就起了很关键的作用....它通过Url拦截请求,自定义业务逻辑,可以返回自定义的view或者模型数据。

当然,上面的鬼扯都是片面的,不代表行业的发展,只是博主管中窥豹而已。

下面步入正题,说说Spring MVC的最小化配置,给入门的朋友引个路。

Spring MVC的最小化配置

需要的jar包

  • Spring framework spring-context
  • Spring framework spring-mvc

具体可以参考maven中的引用:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-webmvc</artifactId>
  <version>4.2.4.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context</artifactId>
  <version>4.2.4.RELEASE</version>
</dependency>

web.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
                      http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
    
   <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext.xml</param-value>
    <!-- 默认是/WEB-INF/applicationContext.xml -->
   </context-param>
   
   <listener>
    <listener-class>
      org.springframework.web.context.ContextLoaderListener
    </listener-class>
   </listener>
 
  <servlet>
    <servlet-name>SpringMVC</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>/WEB-INF/SpringMVC-servlet.xml</param-value>
      <!-- 默认是/WEB-INF/[servlet名字]-servlet.xml -->
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  
  <servlet-mapping>
    <servlet-name>SpringMVC</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
 
</web-app>

其中,必要的配置就是指定servlet和listener.

  • ContextLoaderListener指定了IOC容器初始化的方法
  • DispatcherServlet则定义了mvc的相关内容,并配置拦截的url,如上面所示,所有/开头的请求,都会通过SpringMVC这个servlet进行处理。

他们都需要一个xml文件,默认位置上面已经说过了。

applicationContext.xml

空的,反正咱也没用什么bean。

<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
  xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
              http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
              http://www.springframework.org/schema/tx
              http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
              http://www.springframework.org/schema/aop
              http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
              http://www.springframework.org/schema/context
              http://www.springframework.org/schema/context/spring-context-4.0.xsd">

</beans>

SpringMVC-servlet.xml

里面放一个扫描controller的配置即可。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:mvc="http://www.springframework.org/schema/mvc"
  xmlns:context="http://www.springframework.org/schema/context"
  xmlns:aop="http://www.springframework.org/schema/aop"
  xmlns:tx="http://www.springframework.org/schema/tx"
  xsi:schemaLocation="http://www.springframework.org/schema/beans 
            http://www.springframework.org/schema/beans/spring-beans-4.0.xsd 
            http://www.springframework.org/schema/mvc 
            http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd 
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context-4.0.xsd 
            http://www.springframework.org/schema/aop 
            http://www.springframework.org/schema/aop/spring-aop-4.0.xsd 
            http://www.springframework.org/schema/tx 
            http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">
  <!-- 设置使用注解的类所在的jar包 -->
  <context:component-scan base-package="hello" />
</beans>

controller文件

package hello;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {
  
  @RequestMapping("/hello")
  public @ResponseBody String test() {
    return "hello, world! This com from spring!";
  }

}

总结一下:

1 两个maven依赖,spring-context;spring-mvc。maven就会自动下载所有关联的jar包,包括

  • spring-webmvc
  • spring-beans
  • spring-core
  • spring-expression
  • spring-web
  • spring-context
  • spring-aop
  • aopalliance
  • commons-logging

2 一个web.xml文件,配置了listener和servlet

3 两个spring相关的文件,applicationContext.xml和servletName-servlet.xml

4 一个controller文件,配置了拦截的url处理代码

有了这些准备工作,运行后输入:http://localhost:8080/SpringTest/hello

就能得到

hello, world! This com from spring!

这样的信息,恭喜你的SpringMVC搭起来了!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# springmvc搭建  # springmvc环境搭建  # spring  # mvc  # 框架搭建  # 详解Spring框架之基于Restful风格实现的SpringMVC  # 详解SpringMVC和MyBatis框架开发环境搭建和简单实用  # 详解SpringMVC验证框架Validation特殊用法  # 在SpringMVC框架下实现文件的上传和下载示例  # Java框架篇:Spring+SpringMVC+hibernate整合开发  # springMVC框架下JQuery传递并解析Json数据  # JavaWeb开发之Spring+SpringMVC+MyBatis+SpringSecurity+  # jquery.form.js框架实现文件上传功能案例解析(springmvc)  # 使用jQuery.form.js/springmvc框架实现文件上传功能  # 三步轻松搭建springMVC框架  # 自定义  # 的是  # 都是  # 就会  # 来了  # 在这里  # 相关内容  # 就能  # 不代表  # 不清楚  # 所示  # 眼花缭乱  # 准备工作  # 取而代之  # 再到  # 也没用  # 大家多多  # 好就  # 更深入  # 说过了 


相关文章: c# 在高并发场景下,委托和接口调用的性能对比  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  建站之星展会模板:智能建站与自助搭建高效解决方案  公司门户网站制作流程,华为官网怎么做?  网站制作报价单模板图片,小松挖机官方网站报价?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  建站之星logo尺寸如何设置最合适?  PHP 500报错的快速解决方法  创业网站制作流程,创业网站可靠吗?  浅谈Javascript中的Label语句  如何用西部建站助手快速创建专业网站?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  广德云建站网站建设方案与建站流程优化指南  C++中引用和指针有什么区别?(代码说明)  如何在橙子建站上传落地页?操作指南详解  定制建站策划方案_专业建站与网站建设方案一站式指南  开封网站制作公司,网络用语开封是什么意思?  网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  香港服务器WordPress建站指南:SEO优化与高效部署策略  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  建站主机解析:虚拟主机配置与服务器选择指南  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  建站之星好吗?新手能否轻松上手建站?  建站为何优先选择香港服务器?  5种Android数据存储方式汇总  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  建站之星伪静态规则如何设置?  广州建站公司哪家好?十大优质服务商推荐  如何在IIS中配置站点IP、端口及主机头?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  如何零基础在云服务器搭建WordPress站点?  网站制作大概多少钱一个,做一个平台网站大概多少钱?  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  如何基于PHP生成高效IDC网络公司建站源码?  建站VPS推荐:2025年高性能服务器配置指南  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  济南专业网站制作公司,济南信息工程学校怎么样?  大连网站设计制作招聘信息,大连投诉网站有哪些?  沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?  建站上市公司网站建设方案与SEO优化服务定制指南 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。