一、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. centos7架设vsftpd服务

    网络控制相关命令: systemctl status network 网络状态 systemctl restart network 网络重启 查看网络状态: nmcli connection show ...

  2. java 图片质量压缩

    /** * 图片质量压缩 * @param file 要压缩的图片文件 * @param input 文件输入流 * @param quality 压缩质量(0-1) * @author ouyang ...

  3. java volatitle介绍与使用

    关于关键字volatile可以说是Java虚拟机提供的轻量级的同步机制,但是它并不容易完全被正常.完整地理解,以至于许多程序员都不习惯去使用它,遇到需要处理多线程数据竞争问题的时候一律使用Synchr ...

  4. MongoDB数据库索引构建情况分析

    前面的话 本文将详细介绍MongoDB数据库索引构建情况分析 概述 创建索引可以加快索引相关的查询,但是会增加磁盘空间的消耗,降低写入性能.这时,就需要评判当前索引的构建情况是否合理.有4种方法可以使 ...

  5. Echarts报错[MODULE_MISS]"echarts/config" is not exists!

    项目用到Echarts插件,时下比较流行的是模块化包引入,但是很悲催的是楼主用的是标签式引入,所以从官网copy来的代码总是报一个 [MODULE_MISS]"echarts/config的 ...

  6. UDP和多线程服务器

    UDP: UDP是数据报文传输协议,这个传输协议比较野蛮,发送端不需要理会接收端是否存在,直接就发送数据,不会像TCP协议一样建立连接.如果接收端不存在的话,发送的数据就会丢失,UDP协议不会去理会数 ...

  7. Android不编译某个模块

    Android 5.1 源码,编译相关的文件一般在build目录下build/target/product 放了很多mk文件:一般不同的产品会有不同的目录 假设我不想编译OpenWnn,在build目 ...

  8. 控制反转(IoC)-解析与实现

    控制反转(Inversion of Control)缩写:IoC是面向对象编程中框架级别里的一个重要的概念, 可以说Spring框架的核心就是基于IoC原理的. 这个概念到底是什么呢? 这么讲吧,一个 ...

  9. JAVA多线程之wait/notify

    本文主要学习JAVA多线程中的 wait()方法 与 notify()/notifyAll()方法的用法. ①wait() 与 notify/notifyAll 方法必须在同步代码块中使用 ②wait ...

  10. Python爬虫初学(二)—— 爬百度贴吧

    Python爬虫初学(二)-- 爬百度贴吧 昨天初步接触了爬虫,实现了爬取网络段子并逐条阅读等功能,详见Python爬虫初学(一). 今天准备对百度贴吧下手了,嘿嘿.依然是跟着这个博客学习的,这次仿照 ...