接收的参数为日期类型、controller控制层进行数据保存、进行重定向跳转
1.接收的参数为日期类型
WEB-INF下的资源是无法通过地址栏的地址直接访问的,也不能通过重定向直接访问
400错误代表请求的参数有问题
解决接收参数为日期类型出错的问题
第一种方法:使用
initBinds
(当你接收的参数为日期类型或时间类型时,先经过该方法的处理)
只要网页中传来的参数格式为yyyy-MM-dd就是转化为Date格式,这种方法适合单个时间日期参数//在controller中添加
@InitBinder
public void initBinder(ServletRequestDataBinder binder) {
binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
}
在实体类中添加注解(这里的格式不是输出的格式而是接收参数的格式,输出的格式还是Date类型的英文格式)
... public class Users {
private String name;
private String sex;
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date birthday;
private String phone;
...
2.controller控制层进行数据保存
/**
* 通过ModelAndView保存数据
* @return ModelAndView
*/
@RequestMapping("list3.do")
public ModelAndView list3() {
ModelAndView mv = new ModelAndView("index");
mv.addObject("name","张三");
return mv;
}
/**
* 通过Model保存数据到request中
* @param model
* @return String
*/
@RequestMapping("list4.do")
public String list4(Model model) {
model.addAttribute("name","李四");
return "index";
}
/**
* 通过Map保存数据到request中
* @param map
* @return String
*/
@RequestMapping("list5.do")
public String list5(Map<String,Object> map) {
map.put("name", "王五");
return "index";
}
/**
* 通过request保存数据到request中
* @param request
* @return String
*/
@RequestMapping("list6.do")
public String list6(HttpServletRequest request) {
request.setAttribute("name", "刘亦菲");
return "index";
}
/**
* 通过注解的方式将数据保存到session中
* @param model
* @return String
*/
@RequestMapping("list7.do")
public String list7(Model model) {
model.addAttribute("name","江疏影");
return "index";
}
/**
* 通过原始的session保存数据到session中
* @param session
* @return String
*/
@RequestMapping("list8.do")
public String list8(HttpSession session) {
session.setAttribute("name", "林允儿");
return "index";
}
/**
* 将数据保存到application中
* @param session
* @return String
*/
@RequestMapping("list9.do")
public String list9(HttpSession session) {
session.getServletContext().setAttribute("name", "杨超越");
return "index";
}
3.controller层如何进行重定向跳转(因为默认是请求转发)
return "redirect:register.jsp";
使用redirect开头,告诉springmvc我要重定向跳转
4.静态资源的映射
首先在web.xml文件设置
<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-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>在springmvc的配置文件中添加
<!-- 释放静态资源 -->
<mvc:default-servlet-handler/>
接收的参数为日期类型、controller控制层进行数据保存、进行重定向跳转的更多相关文章
- Springboot 使用 JSR 303 对 Controller 控制层校验及 Service 服务层 AOP 校验,使用消息资源文件对消息国际化
导包和配置 导入 JSR 303 的包.hibernate valid 的包 <dependency> <groupId>org.hibernate.validator< ...
- springMvc基本注解:@Component、@Repository(持久层) 、@Service(业务逻辑) 、@Controller(控制层)
1.@Controller(控制层) :就是action层 2.@Service(业务逻辑) :业务逻辑层,负责处理各种控制层的操作 3.@Repository(持久层) :称为“持久化”层,负责对数 ...
- springmvc接收参数为日期类型
用单个Date类型接收日期类型时,会出现报错,加上initBinder的方法 意思是将所有传入的参数都通过此方法,如果过是日期通过日期格式化器进行格式化 如果是接收类型为对象内的属性为Date类型时 ...
- 解决sqoop 导入oracle表时 --split-by参数为日期类型时的报错:ORA-01861: literal does not match format string
报错栈: -- ::, INFO [main] org.apache.sqoop.mapreduce.db.DBRecordReader: Executing query: select " ...
- bean 接收的参数为Class类型
这两个是等价的
- Spring Boot的Controller控制层和页面
一.项目实例 1.项目结构 2.项目代码 1).ActionController.Java: package com.example.controller; import java.util.Date ...
- Servlet—作controller控制层
servlet控制器的改造步骤: 1.编写servlet类,和访问路径 2.修改jsp请求路径 servlet参数配置---获取初始化参数 servlet参数配置---全局参数
- spring mvc 注解访问控制器以及接收form数据的方式,包括直接接收日期类型及对象的方法
Spring 中配置扫描器 <!-- springmvc的扫描器--> <context:component-scan base-package="com.beifeng. ...
- Spring MVC控制层的返回类型--String类型与Bean类型
SpringMVC控制层的返回类型形式多样,现拿其中的两种--String类型与Bean类型作以说明. 一.测试项目的结构 说明:(jsp的名字没起好) 控制层:UserController.java ...
随机推荐
- react第四单元(ref与DOM-findDomNode-unmountComponentAtNode)
第四单元(ref与DOM-findDomNode-unmountComponentAtNode) #课程目标 理解react的框架使用中,真实dom存在的意义. 使用真实dom和使用虚拟dom的场景. ...
- openstack高可用集群17-openstack集成Ceph准备
Openstack集成Ceph准备 Openstack环境中,数据存储可分为临时性存储与永久性存储. 临时性存储:主要由本地文件系统提供,并主要用于nova虚拟机的本地系统与临时数据盘,以及存储gla ...
- 很多人不知道的Python 炫技操作:条件语句的写法
有的人说 Python 是一门 入门容易,但是精通难的语言,这一点我非常赞同. Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的.在这些人的眼里,能够写出那 ...
- RPC 核心,万变不离其宗
微信搜 「yes的练级攻略」干货满满,不然来掐我,回复[123]一份20W字的算法刷题笔记等你来领. 个人文章汇总:https://github.com/yessimida/yes 欢迎 star ! ...
- js中点回车enter触发事件&layui弹窗按enter键不停弹窗问题的解决&js实现鼠标焦点自动落到文本框(layui)
js中回车触发事件 一. document.onkeydown = function (e) { // 回车提交表单 // 兼容FF和IE和Opera var theEvent = window.e ...
- C#未能找到类型或命名空间名称xxxxxx的可能原因
常见原因 原因:使用的.NET版本不一样 今天又被这问题撞上了,结果神奇般的解决了 谷歌了很久都没有找到真正有用的解决方案,所以在这儿写下,让更多的人看到 最根本的原因其实就是引用的问题,引用错了,然 ...
- Redis 设计与实现 5:压缩列表
压缩列表是 ZSET.HASH和 LIST 类型的其中一种编码的底层实现,是由一系列特殊编码的连续内存块组成的顺序型数据结构,其目的是节省内存. ziplist 的结构 外层结构 下图展示了压缩列表的 ...
- [LeetCode]690. Employee Importance员工重要信息
哈希表存id和员工数据结构 递归获取信息 public int getImportance(List<Employee> employees, int id) { Map<Integ ...
- .NET 云原生架构师训练营(模块二 基础巩固 EF Core 更新和迁移)--学习笔记
2.4.6 EF Core -- 更新 状态 自动变更检测 不查询删除和更新 并发 状态 Entity State Property State Entity State Added 添加 Uncha ...
- 【wp】2020XCTF_逆向
前几天的XCTF最后一场终于打完了,三场比赛下来对逆向部分的大概感觉是从第一场的啥都不会做(一道lua+一道apk)到后来的终于能有参与度,至少后两场的题目都是pc逆向,虽然特殊架构但好歹能做(tcl ...