2018.5.29
1、创建web项目

2、导包

3、配置web.xml文件
<?
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_2_5.xsd"
id
=
"WebApp_ID"
version
=
"2.5"
>
<display-name>
springmvc-01-hello
</display-name>
<welcome-file-list>
<welcome-file>
index.html
</welcome-file>
<welcome-file>
index.htm
</welcome-file>
<welcome-file>
index.jsp
</welcome-file>
<welcome-file>
default.html
</welcome-file>
<welcome-file>
default.htm
</welcome-file>
<welcome-file>
default.jsp
</welcome-file>
</welcome-file-list>
<!-- servlet前端控制器 只有一个servlet -->
<servlet>
<servlet-name>
springMVC
</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<!-- springmvc配置文件默认的名字 <servlet-name>-servlet.xml-->
<!-- 初始化xml文件名字 -->
<init-param>
<param-name>
contextConfigLocation
</param-name>
<param-value>
classpath:springMVC-servlet.xml
</param-value>
<!-- 如果放在WEB-INF文件夹下:/WEB-INF/**.xml -->
</init-param>
<load-on-startup>
1
</load-on-startup>
<!-- 一启动就初始化 -->
</servlet>
<servlet-mapping>
<servlet-name>
springMVC
</servlet-name>
<url-pattern>
/
</url-pattern>
<!-- 系统中所有的请求都走这个servlet 有的是*.do(strust2) -->
</servlet-mapping>
</web-app>
|
4.创建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:context
=
"http://www.springframework.org/schema/context"
xsi:schemaLocation
=
"http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd"
>
<!-- 扫描controller -->
<context:component-scan
base-package
=
"com.lu.springmvc.controller"
></context:component-scan>
<!-- 视图解析器 --><!-- 连接页面的功能 -->
<bean
class
=
"org.springframework.web.servlet.view.InternalResourceViewResolver"
>
<!-- 省略前缀和后缀,这里的配置我的理解是自动给后面action的方法return的字符串加上前缀和后缀,变成一个 可用的url地址 -->
<property
name
=
"prefix"
value
=
"/WEB-INF/jsp/"
/>
<property
name
=
"suffix"
value
=
".jsp"
/>
</bean>
</beans>
|
5、创建controller层
@Controller
通知spring需要扫描这个controller类,并且得到DispatcherServlet的解析
@RequestMapping
(
"/helloworld"
)
:DispatcherServlet 根据这个配置中的uri地址,决定调用哪个方法
方法的返回值类型如果是字符串(String),说明返回的是一个视图名字,DispatcherServlet会根据
视图解析器中的配置找到完整的路径,从而解析并显示视图。
package
com.lu.springmvc.controller;
import
org.springframework.stereotype.Controller;
import
org.springframework.web.bind.annotation.RequestMapping;
@Controller
//名字不用写
dispatherservlet
智能的去找
public
class
HelloWorld
{
//#RequestMapping:请求映射
url
地址,映射到这个方法
@RequestMapping
(
"/helloworld"
)
public
String helloworld() {
System.
out
.println(
"hello word"
);
return
"helloworld"
;
}
}
|
6、创建JSP页面
/WEB-INF/jsp/helloworld.jsp
<%@
page
language
=
"java"
contentType
=
"text/html; charset=UTF-8"
pageEncoding
=
"UTF-8"
%>
<!
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=utf-8"
>
<
title
>
Insert title here
</
title
>
</
head
>
<
body
>
hello
springmvc
</
body
>
</
html
>
|