一、SpringMVC的优势

Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一。Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架。Spring MVC 通过一  套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。支持 REST 风格的 URL 请求(GET POST PUT DELTE)。采用了松散耦合可插拔组件结构,比其他 MVC      框架更具扩展性和灵活性.。
二、编写一个简单的SpringMVC项目

1、eclipse中需要先安装Spring

2、安装完Spring后,需要建一个Spring项目:eclipse的File---->New---->动态Web项目

3、导入jar包。如图:

4、配置Web.xml文件

 </welcome-file-list>
<!-- The front controller of this Spring Web application, responsible for handling all application requests -->
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:Springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet> <!-- Map all requests to the DispatcherServlet for handling -->
<!-- servlet-mapping用来指定请求映射的路径 -->
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<!-- 指定拦截的请求路径! -->
<url-pattern>/</url-pattern>
</servlet-mapping>

  其中:<param-value>classpath:Springmvc.xml</param-value>为你的Spring的配置文件所放置的位置。这里表示的是放在src目录下,且文件名为:Springmvc.xml

当然,你也可以不写:

<init-param>
                       <param-name>contextConfigLocation</param-name>
                      <param-value>classpath:Springmvc.xml</param-value>
                </init-param>

这段代码,这样,默认配置文所在的路径为在WEB-INF下,且名字必须为:上面配置的Servlet的名字+“-”+servlet.xml

例如:我要是不写这段代码,那么我的配置文件应该叫:springDispatcherServlet-servlet.xml

5、.创建SpringMVC的配置文件并添加要扫描的包

①、在你所要添加的文件夹下按右键,选择Other,然后选择Spring Bean Configuration File。如图:

②、点击Next进入下一步,填写配置文件的名字。然后点击下一步。

③、选中如图所示的三个选项。

④、然后点击Finish

⑤、在你的src文件夹下建一个包,例如:com.ysuedu.controller。然后将其配置到刚才的Spring的配置文件中。(不是Web.xml)

<context:component-scan base-package="com.ysuedu.controller"></context:component-scan>

6、在刚下建好的包下面建一个class。然后在类名上面加上注解:@Controller。这时你会发现你建的这个class文件的图标上有了一个“S”的图案。

7、在类中随便建一个方法。然后在方法前面加上注解:@RequestMapping("/one1")。表明一会jsp页面中项目名后面所要写的地址。(一会说jsp页面怎么写)如图:

return中写的是要返回的页面的地址。

8、下面建立一个jsp页面。

在里面也一个超链接:<a href="${pageContext.request.contextPath}/one1">嗨,SpringMVC </a><br>。根据这个地址以及前面所写的注解,当你点击这个超链接的时候,便    会自动去你配置文件所加的那个包下面找到加了@Controller的注解的类,然后找加了注解@RequestMapping("/one1")的方法,然后执行该方法。这时,我们只需在WEB-INF下面建  一个名为views的文件夹,并在此文件夹下面建一个one.jsp。这样,一个简单的SpringMVC项目就建好了。

9、在two页面运行程序,然后点击这个超链接就会跳转到one.jsp页面了!

之后我还会在写一些关于SpringMVC框架的东西,并且会一步一步的加深。希望不会的小伙伴们可以看一下,同时也真心希望对你们有所帮助。当然如果有小伙伴们感觉我写的不好或者有什么疑问的话,欢迎留言。

SpringMVC入门--编写一个SpringMVC小程序的更多相关文章

  1. 编写一个JAVA小程序取得IP地址

    在TCP/IP 互联网时,经常会需要查询自己主机的IP地址和www服务器的IP地址.虽然,我们可以使用IPCONFIG 和PING 进行IP地址查询,但是如果在应用程序或APPLET中使用此命令会破坏 ...

  2. 编写一个微信小程序

    1.创建项目 2.创建目录及文件,结构如下:

  3. 搭建Spring开发环境并编写第一个Spring小程序

    搭建Spring开发环境并编写第一个Spring小程序 2015-05-27      0个评论    来源:茕夜   收藏    我要投稿 一.前面,我写了一篇Spring框架的基础知识文章,里面没 ...

  4. 手把手教你写一个RN小程序!

    时间过得真快,眨眼已经快3年了! 1.我的第一个App 还记得我14年初写的第一个iOS小程序,当时是给别人写的一个单机的相册,也是我开发的第一个完整的app,虽然功能挺少,但是耐不住心中的激动啊,现 ...

  5. 如何快速地开发一个微信小程序

    如何快速地开发一个微信小程序呢?我觉得作为初学者,最好能有一个模板,然后改这个模板. 同样作为初学者,刚开始的时候我有下面的几个问题,后来通过问同学,我弄清楚了. 微信小程序可以连接MySQL或者Sq ...

  6. Java基础-接口中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按 照国务院的指示进行安全生产。请编写一个java应用程序描述上述的体制现象。 要求如下: (1)该应用程序中有一个“党中央”接口:CentralPartyCommittee,该接口中 有个“坚持党的领导”方法:void partyLeader() (2)该应用程序中有一个“国务院”抽象类:StateCouncil,

    36.中国特色社会主义的体制中有这样的现象:地方省政府要坚持党的领导和按 照国务院的指示进行安全生产.请编写一个java应用程序描述上述的体制现象. 要求如下: (1)该应用程序中有一个“党中央”接口 ...

  7. Java基础-继承-编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数 wheels和车重weight。小车类Car是Vehicle的子类,其中包含的属性有载人数 loader。卡车类Truck是Car类的子类,其中包含的属性有载重量payload。每个 类都有构造方法和输出相关数据的方法。最后,写一个测试类来测试这些类的功 能。

    #29.编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数 wheels和车重weight.小车类Car是Vehicle的子类,其中包含的属性有载人数 loader.卡车类T ...

  8. java基础,继承类题目:编写一个Java应用程序,该程序包括3个类:Monkey类、People类和主类 E

    21.编写一个Java应用程序,该程序包括3个类:Monkey类.People类和主类 E.要求: (1) Monkey类中有个构造方法:Monkey (String s),并且有个public vo ...

  9. 第一个mpvue小程序开发总结

    前言 说起小程序,其实在去年我都还只试着照着官方文档写过demo的,不过现在这家公司小程序做得比较多,我来之后也参与了几个小程序的开发了,最开始那几个是用的wepy,最近一个开始转用mpvue开发,最 ...

随机推荐

  1. [luogu P3797] 妖梦斩木棒 [线段树]

    题目背景 妖梦是住在白玉楼的半人半灵,拥有使用剑术程度的能力. 题目描述 有一天,妖梦正在练习剑术.地面上摆放了一支非常长的木棒,妖梦把它们切成了等长的n段.现在这个木棒可以看做由三种小段构成,中间的 ...

  2. 安装Scala-2.11.7——集群学习日记

    前言 在安装Spark之前,我们需要安装Scala语言的支持.在此我选择的是scala-2.11.7版本. scala-2.11.7下载 为了方便,我现在我的SparkMaster主机上先安装,把目录 ...

  3. javascript数组(1) ——sort的工作原理及其他数组排序方法

    一说到数组排序,最直观的想法就是用sort啊! 请问不用使用sort方法还可以使用什么方法进行数组排序? 比如 :  快速排序法.合并排序法.冒泡排序法.选择排序法.插入排序法.布尔排序法.交互排序. ...

  4. spring AOP原理

    spring 实现AOP是依赖JDK动态代理和CGLIB代理实现的.以下是JDK动态代理和CGLIB代理简单介绍    JDK动态代理:其代理对象必须是某个接口的实现,它是通过在运行期间创建一个接口的 ...

  5. IPSP问题

    场景:接触IPSP项目是个学习的过程,在此记录一些自己的认知,让自己更能全面的理解项目! 1 总结 1.1 日志追踪 IPSP工程所在的服务器有GW和Server之分,GW是连接外部服务器和serve ...

  6. HDU 6040---Hints of sd0061(STL)

    题目链接 Problem Description sd0061, the legend of Beihang University ACM-ICPC Team, retired last year l ...

  7. HTML5 开发APP( 支付宝支付)

    我们搞app有一个重要的功能那就是支付功能.无论是微信支付,支付宝,还是银联支付总要有一样支付手段来支持我们网上付款.实现完整的功能.我们公司app的支付方式经过大家开会讨论选择了支付宝支付(其实是当 ...

  8. selenium2之文件上传

    我们在使用selenium做web自动化测试的时候也许会碰到需要上传文件或者图片的需求.那么下面给大家介绍一下,selenium是怎么实现文件上传和哪些情况不能直接上传. 一.上传控件标签为input ...

  9. ajax请求原理

    首先分析使用ajax时候有那些不确定的因素 请求:1 请求的方式不确定 2 请求的地址不确定 3 请求是否异步不确定 4 发送的数据不确定 响应:5 返回的数据不确定 6 响应成功之后 需要处理的业务 ...

  10. 前端程序员经常忽视的一个JavaScript面试题

    在网上找到一个有关JavaScript的面试题,特整理如下: function Foo() { getName = function () { alert (1); }; return this; } ...