SpringMVC的配置
2016-07-28 13:53
309 查看
1.新建一个Dynamic项目guozi.
不要直接点finish,要一直点next直到看到Generate web.xml deployment descriptor选项。点finish。这样系统会自动创建一个web.xml文件,也可以自己手动创建文件到WebContent/WEB-INF目录下。
2.添加基础SpringMVC项目需要的jar包到WEB-INF/lib目录下.
添加方式:a:直接把下载好的包选中复制,然后选中项目的lib文件,粘贴过来。
b:在eclipse的工作空间找到这个项目的lib文件夹,把需要的包复制过来。在eclipse中选中项目,按f5刷新。
3.打开WEB-INF下的web.xml文件,添加springMVC的配置信息。
<servlet-name>自己随意命名,一般是项目名称,<servlet-mapping>中和其保持一致。
<param-value>是springMVC配置文件的路径,默认放在WEB-INF下,也可以放到src中去,配置文件命名随意。
<load-on-startup>控制是否在服务器启动时启动本servlet,正数为服务器启动时启动,数字越大优先级越高。
<url-pattern>是拦截请求设置,/代表都拦截,/*.do代表拦截以.do为后缀的请求,以此类推。
4.在WEB-INF下创建springmvc-config.xml,命名随意路径随意,和web.xml配置保持一致就行。
<content:conponentscan>是使spring自动扫描设置的包里的java文件,遇到声明@Controller的就把其注册成bean。base-package就是设置的扫描范围。我的controller写在com.guozi.controller包里。
<property name="prefix">以及下边一行的设置是从controller返回到前端的设置,代表controller返回的前端文件以.jsp结尾,且放在WEB-INF/jsp目录下的。
5.测试
a.在src下新建一个包命名为com.guozi.controller。
b.在新建的包里创建一个class文件,命名为HelloController.
HelloController.class文件内容如下:
在类之外添上@Controller,按提示导入相应包。
@RequestMapping(value="/hello")是映射路径,随意命名,在浏览器访问时访问路劲要加上这个路径。
方法hello()的返回类型是视图,方法中我们需要先创建视图。
m.addObject("mess","hello")是视图带的传值参数,前一个参数是名字,后一个参数是值,可以在前端接收。
m.setViewName是设置视图名称,需要跳转的页面名称和这个设置名称一致。
c.在WEB-INF下新建一个文件夹,命名为jsp,用来存放jsp文件。
d.在新建文件夹下创建一个新的jsp文件,命名为hello.jsp.
hello.jsp文件内容如下:
PS:在创建jsp的过程中可能会提示出错,需要去设置build path。
e.点击项目选择run on sever,出现404错误,在路径上加上/hello,结果如图。
不要直接点finish,要一直点next直到看到Generate web.xml deployment descriptor选项。点finish。这样系统会自动创建一个web.xml文件,也可以自己手动创建文件到WebContent/WEB-INF目录下。
2.添加基础SpringMVC项目需要的jar包到WEB-INF/lib目录下.
添加方式:a:直接把下载好的包选中复制,然后选中项目的lib文件,粘贴过来。
b:在eclipse的工作空间找到这个项目的lib文件夹,把需要的包复制过来。在eclipse中选中项目,按f5刷新。
3.打开WEB-INF下的web.xml文件,添加springMVC的配置信息。
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>guozi</display-name> <!--SpringMVC配置 --> <servlet> <servlet-name>guozi</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/springmvc-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup><!-- load-on-startup必须放在最后 --> </servlet> <servlet-mapping> <servlet-name>guozi</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>DispatcherServlet是前端控制器,springMVC框架的集中访问点,负责拦截请求并分发到相关的controller去,分配规则在springmvc-config.xml文件中。
<servlet-name>自己随意命名,一般是项目名称,<servlet-mapping>中和其保持一致。
<param-value>是springMVC配置文件的路径,默认放在WEB-INF下,也可以放到src中去,配置文件命名随意。
<load-on-startup>控制是否在服务器启动时启动本servlet,正数为服务器启动时启动,数字越大优先级越高。
<url-pattern>是拦截请求设置,/代表都拦截,/*.do代表拦截以.do为后缀的请求,以此类推。
4.在WEB-INF下创建springmvc-config.xml,命名随意路径随意,和web.xml配置保持一致就行。
<?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" xsi:schemaLocation=" http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <context:component-scan base-package="com.guozi.controller"></context:component-scan> <mvc:annotation-driven /> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> </bean> </beans>
<content:conponentscan>是使spring自动扫描设置的包里的java文件,遇到声明@Controller的就把其注册成bean。base-package就是设置的扫描范围。我的controller写在com.guozi.controller包里。
<property name="prefix">以及下边一行的设置是从controller返回到前端的设置,代表controller返回的前端文件以.jsp结尾,且放在WEB-INF/jsp目录下的。
5.测试
a.在src下新建一个包命名为com.guozi.controller。
b.在新建的包里创建一个class文件,命名为HelloController.
HelloController.class文件内容如下:
package com.guozi.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; @Controller public class HelloController { @RequestMapping(value="/hello") public ModelAndView hello(){ ModelAndView m=new ModelAndView(); m.addObject("mess", "hello!"); m.setViewName("hello"); return m; } }
在类之外添上@Controller,按提示导入相应包。
@RequestMapping(value="/hello")是映射路径,随意命名,在浏览器访问时访问路劲要加上这个路径。
方法hello()的返回类型是视图,方法中我们需要先创建视图。
m.addObject("mess","hello")是视图带的传值参数,前一个参数是名字,后一个参数是值,可以在前端接收。
m.setViewName是设置视图名称,需要跳转的页面名称和这个设置名称一致。
c.在WEB-INF下新建一个文件夹,命名为jsp,用来存放jsp文件。
d.在新建文件夹下创建一个新的jsp文件,命名为hello.jsp.
hello.jsp文件内容如下:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> ${mess} </body> </html>
PS:在创建jsp的过程中可能会提示出错,需要去设置build path。
e.点击项目选择run on sever,出现404错误,在路径上加上/hello,结果如图。
相关文章推荐
- 分享微信开发Html5轻游戏中的几个坑
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- Spring和ThreadLocal
- Spring Boot 开发微服务
- Spring AOP动态代理-切面
- Spring整合Quartz(JobDetailBean方式)
- Spring整合Quartz(JobDetailBean方式)
- C# MVC模式下商品抽奖功能实现
- Zend的MVC机制使用分析(二)
- ASP.NET MVC 4 捆绑和缩小实例介绍
- asp.net mvc实现简单的实时消息推送
- ASP.NET Mvc开发之查询数据
- ASP.NET MVC中将控制器分离到类库的实现
- asp.net实现在非MVC中使用Razor模板引擎的方法
- MVC默认路由实现分页(PagerExtend.dll下载)
- ASP.NET MVC中的AJAX应用
- 为ASP.NET MVC及WebApi添加路由优先级