博客
关于我
SpringMVC---使用
阅读量:324 次
发布时间:2019-03-04

本文共 2023 字,大约阅读时间需要 6 分钟。

关键词

@RequestMapping

@RequestMapping("/xxxx")

功能:在方法,类中添加该注解,相当于:浏览器发送请求xxxx。会访问该类中的方法。比如:

public class Test{   	@RequestMapping("/one")    public String one(){   		return "one";    }}

返回的one会给视图解析器进行解析拼接,然后跳转到该页面。

测试url:http://localhost:8080/one

@ResponseBody

就像上面的情况:

public class Test{   	@ResponseBody	@RequestMapping("/one")    public String one(){   		return "one";    }}

当我们加入了该注解,就相当于,这个“one”只是作为响应体,而不是映射某一个文件。

实现转发和重定向

关键词:

  • redirect:重定向
  • forward:转发

没有视图解析器的情况

记得把视图解析器的代码注释掉先。

默认不写的情况是转发。

关于请看这篇文章。

@Controller@RequestMapping("/two")public class TwoController {       @RequestMapping("/test1")    public String getTest1(Model model){           //使用重定向        return "redirect:/index.jsp";    }    @RequestMapping("/test2")    public String getTest2(Model model){           //使用重定向        return "forward:/WEB-INF/jsp/test.jsp";    }    @RequestMapping("/test3")    public String getTest3(Model model){           //使用重定向        return "/WEB-INF/jsp/test.jsp";    }}

有视图解析器的情况

使用重定向和转发的情况一样,但是要注意的是,有视图解析器的话,无论是重定向还是转发,都会对字符串进行拼接

数据的处理

传递参数是一个对象:

User.java:

public class User {       private String name;    private int age;	....}
@Controller@RequestMapping("/two")public class TwoController {           @RequestMapping("/test1")    public String getTest1(User user){                   System.out.println(user);        return "test";    }}

为了将前端传递的数据都封装成一个user对象,字段名必须要根据user的属性进行匹配,不然为空。

访问地址:http://localhost:8080/two/test1?name=tom&age=5

提交域名名称与处理方法参数不一致

关键词:@RequestParam(“xxxx”)

括号内的名称为域名提交的名称。

@Controller@RequestMapping("/two")public class TwoController {       @RequestMapping("/test1")    public String getTest1(@RequestParam("username") String name){           System.out.println(name);        return "test";    }}

乱码问题:

在web.xml配置Spring提供的乱码过滤器:

CharacterEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
CharacterEncodingFilter
/*

转载地址:http://crlq.baihongyu.com/

你可能感兴趣的文章
Navicat for MySQL 命令列 执行SQL语句 历史日志
查看>>
Navicat for MySQL 查看BLOB字段内容
查看>>
Navicat for MySQL笔记1
查看>>
Navicat for MySQL(Ubuntu)过期解决方法
查看>>
Navicat Premium 12 卸载和注册表的删除
查看>>
Navicat 导入sql文件
查看>>
navicat 添加外键1215错误
查看>>
navicat 系列软件一点击菜单栏就闪退
查看>>
navicat 自动关闭_干掉Navicat!MySQL官方客户端到底行不行?
查看>>
Navicat 设置时间默认值(当前最新时间)
查看>>
navicat 连接远程mysql
查看>>
navicat:2013-Lost connection to MySQL server at ‘reading initial communication packet解决方法
查看>>
Navicate for mysql 数据库设计-数据库分析
查看>>
Navicat下载和破解以及使用
查看>>
Navicat中怎样将SQLServer的表复制到MySql中
查看>>
navicat创建连接 2002-can‘t connect to server on localhost(10061)且mysql服务已启动问题
查看>>
Navicat可视化界面导入SQL文件生成数据库表
查看>>
Navicat向sqlserver中插入数据时提示:当 IDENTITY_INSERT 设置为 OFF 时,不能向表中的标识列插入显式值
查看>>
Navicat因导入的sql文件中时间数据类型有参数而报错的原因(例:datetime(3))
查看>>
Navicat如何连接MySQL
查看>>