您的位置:首页 > 编程语言 > Java开发

SpringMVC学习笔记(2)-----简单的编写控制器和JSP视图

2017-09-26 14:49 295 查看

@Controller

使用
@Controller
注释指定特定类充当控制器的角色。

@RequestMapping(3种)

(1)
@RequestMapping
加载类级别上,表明该控制器拦截指定的URL。如:

@Controller
@RequestMapping("/mymvc")
public class HelloController{}


则表明该控制器处理URL形如”/mymvc/**”的连接请求。

(2)
@RequestMapping
加载方法级别上,表明该控制器中的某个方法拦截指定的URL连接请求。

@RequestMapping(value = "/mymvc")
public String viewBook(Model model) {
return "hello";
}


该方法定义在上面所写的控制器中,所以拦截的URL经过组合后为
/book/index/**


(3)可以在该注解中添加其他属性,如method方法指定拦截的请求的类型。

@RequestMapping(value = "/index", method = RequestMethod.GET)


如果定义了一个方法拦截URL的GET请求(默认不写就是拦截GET请求),则可以定义另一个方法来拦截该同一URL的任何POST请求。

执行流程

控制器具体的处理方法接收某URL请求(POST则接收数据)。

(1)可根据业务需要调用一些方法(如ServiceImpl)、产生合适的模型。

(2)返回一个String,该String是用于渲染模型视图的名称。如返回
detail
,则表明有一个detail.jsp视图来显示。

创建对应的JSP视图

Spring MVC支持许多类型的视图用于不同的表示技术。包括 - JSP,HTML,PDF,Excel工作表,XML,Velocity模板,XSLT,JSON,Atom 和 RSS 源,JasperReports等。

根据Spring-mvc中的Bean:
InternalResourceViewResolver
中配置的jsps存放的目录,在该目录下编写相应的JSP文件。

此处编写的是
WEB-INF/jsps/
下的hello.jsp。

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/htm
4000
l4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>SpringMVC-DEMO</title>
</head>
<body>
Hello,Spring MVC,And ${message} 。
</body>
</html>


其中的${message}是在控制器中,通过参数model(其实是一个Map)添加的一些值或者对象,message是Key,获取Value。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: