1.接收的参数为日期类型

  1. WEB-INF下的资源是无法通过地址栏的地址直接访问的,也不能通过重定向直接访问

  2. 400错误代表请求的参数有问题

  3. 解决接收参数为日期类型出错的问题

    1. 第一种方法:使用initBinds(当你接收的参数为日期类型或时间类型时,先经过该方法的处理)

      只要网页中传来的参数格式为yyyy-MM-dd就是转化为Date格式,这种方法适合单个时间日期参数

      //在controller中添加
      @InitBinder
      public void initBinder(ServletRequestDataBinder binder) {
      binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
      }
    2. 在实体类中添加注解(这里的格式不是输出的格式而是接收参数的格式,输出的格式还是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.静态资源的映射

  1. 首先在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>
  2. 在springmvc的配置文件中添加

    <!-- 释放静态资源 -->
    <mvc:default-servlet-handler/>

接收的参数为日期类型、controller控制层进行数据保存、进行重定向跳转的更多相关文章

  1. Springboot 使用 JSR 303 对 Controller 控制层校验及 Service 服务层 AOP 校验,使用消息资源文件对消息国际化

    导包和配置 导入 JSR 303 的包.hibernate valid 的包 <dependency> <groupId>org.hibernate.validator< ...

  2. springMvc基本注解:@Component、@Repository(持久层) 、@Service(业务逻辑) 、@Controller(控制层)

    1.@Controller(控制层) :就是action层 2.@Service(业务逻辑) :业务逻辑层,负责处理各种控制层的操作 3.@Repository(持久层) :称为“持久化”层,负责对数 ...

  3. springmvc接收参数为日期类型

    用单个Date类型接收日期类型时,会出现报错,加上initBinder的方法 意思是将所有传入的参数都通过此方法,如果过是日期通过日期格式化器进行格式化 如果是接收类型为对象内的属性为Date类型时 ...

  4. 解决sqoop 导入oracle表时 --split-by参数为日期类型时的报错:ORA-01861: literal does not match format string

    报错栈: -- ::, INFO [main] org.apache.sqoop.mapreduce.db.DBRecordReader: Executing query: select " ...

  5. bean 接收的参数为Class类型

    这两个是等价的

  6. Spring Boot的Controller控制层和页面

    一.项目实例 1.项目结构 2.项目代码 1).ActionController.Java: package com.example.controller; import java.util.Date ...

  7. Servlet—作controller控制层

    servlet控制器的改造步骤: 1.编写servlet类,和访问路径 2.修改jsp请求路径 servlet参数配置---获取初始化参数 servlet参数配置---全局参数

  8. spring mvc 注解访问控制器以及接收form数据的方式,包括直接接收日期类型及对象的方法

    Spring 中配置扫描器 <!-- springmvc的扫描器--> <context:component-scan base-package="com.beifeng. ...

  9. Spring MVC控制层的返回类型--String类型与Bean类型

    SpringMVC控制层的返回类型形式多样,现拿其中的两种--String类型与Bean类型作以说明. 一.测试项目的结构 说明:(jsp的名字没起好) 控制层:UserController.java ...

随机推荐

  1. 利用xlutils第三方库复制excel模板

    Python之利用第三方库套用excel模板,模板的样子假设如下: 现在要用这个模板,并且在"第二行第二列"的下方填入内容: #!usr/bin/python3 # -*-codi ...

  2. Java 面向对象概述

    本文部分摘自 On Java 8 面向对象编程 在提及面向对象时,不得不提到另一个概念:抽象.编程的最终目的是为了解决某个问题,问题的复杂度直接取决于抽象的类型和质量.早期的汇编语言通过对底层机器作轻 ...

  3. Java安全之初探weblogic T3协议漏洞

    Java安全之初探weblogic T3协议漏洞 文章首发自安全客:Java安全之初探weblogic T3协议漏洞 0x00 前言 在反序列化漏洞里面就经典的还是莫过于weblogic的反序列化漏洞 ...

  4. Cannot assign requested address 和 SO_REUSEADDR 参数

    1. 错误 今天项目中出现了大量的java.net.ConnectException: Cannot assign requested address (connect failed) 错误. 刚开始 ...

  5. java中自定义一个异常类 在某些情况抛出自定的异常 ----------阻断程序

    //=============定义异常类 package org.springblade.flow.engine.errorException; /** * 自定义异常处理写入sap失败 */ pub ...

  6. tomcat能正常启动,但是http://localhost:8080/网页就是打不开,报404

    问题描述: 在IDE中创建了一个新的Servers,并且加入一个Tomcat.然后启动服务,进入浏览器,输入localhost:8080进入,显示错误.服务是可以正常启动的,而且没有任何异常. 问题描 ...

  7. [leetcode712]202. Happy Number判断快乐数字

    题目很简单,就是用哈希表存,判断有没有重复 学到了:java中字符串的比较有两种: 1.==这种是比较引用,只用两个字符串变量指向同一个地址才相等 2..equals()这种是值的比较,只要两个字符串 ...

  8. ESP8288-01S/ESP8288-01使用经验总结

    如图:ESP8288-01S/ESP8288-01的区别 超链接 ESP8288-01S/ESP8288-01是乐鑫公司推出的Wi-Fi模块,因为价格便宜迅速占领了市场,它可以做AT指令开发,也可以做 ...

  9. 【译】深入理解Rust中的生命周期

    原文标题:Understanding Rust Lifetimes 原文链接:https://medium.com/nearprotocol/understanding-rust-lifetimes- ...

  10. spark-streaming获取kafka数据的两种方式

    简单理解为:Receiver方式是通过zookeeper来连接kafka队列,Direct方式是直接连接到kafka的节点上获取数据 一.Receiver方式: 使用kafka的高层次Consumer ...