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


    Spring 中配置扫描器

    <!-- springmvc的扫描器-->

    <context:component-scan base-package="com.beifeng.servlet"/>

    建立Controller 类

    @Controller

    @RequestMapping(value="/sys/")

    public class RegController {

        @RequestMapping(value="reg.do",method=RequestMethod.POST)

        public  String reg(){

            System.out.println("--用户注册--");

            return "index";

        }

    }

    注意使用注解时不能使用控制类的类名控制器的映射,否则会找不到

    <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"></bean>

    接收前台表单的数据可以通过 HttpServletRequest 也可以通过表单字段名称 也可以通过对象来接收

    1. 数组的接收直接写数组
    2. 日期类型的接收可以通过InitBinder 函数来定义日期转换的格式

             /**

              * 通过HttpServletRequest 获取页面数据

              *

              * @return

              */

             @RequestMapping("reg1.do")

             public String reg1(HttpServletRequest request) {

                       String userId = request.getParameter("userId");

                       String userPw = request.getParameter("userPw");

                       System.out.println("账号:" + userId);

                       System.out.println("密码:" + userPw);

                       return "index";

             }

             /**

              * 获取姓名

              *

              * @return

              */

             @RequestMapping("reg2.do")

             public String reg2(String userName) {

                       System.out.println("姓名:" + userName);

                       return "index";

             }

             @RequestMapping("reg3.do")

             public String reg3(Integer userId, String userName, Date userBrithday) {

                       System.out.println("账号:" + userId);

                       System.out.println("姓名:" + userName);

                       System.out.println("生日:" + userBrithday);

                       return "index";

             }

             /**

              * 获取复选框的值:多个值

              *

              * @param xqs

              * @return

              */

             @RequestMapping("reg4.do")

             public String reg4(String[] xqs) {

                       for (String xq : xqs) {

                                System.out.println("兴趣:" + xq);

                       }

                       return "index";

             }

             /**

              * 通过对象来获取页面参数

              *

              * @param xqs

              * @return

              */

             @RequestMapping("reg5.do")

             public String reg5(UserInfo user) {

                       System.out.println(user);

                       return "index";

             }

             /**

              * 添加时间的属性编辑器

              */

             @InitBinder

             public void InitBinder(ServletRequestDataBinder bin) {

                       bin.registerCustomEditor(Date.class, new CustomDateEditor(

                                         new SimpleDateFormat("yyyy-MM-dd"), true));

             }

  • 相关阅读:
    沉淀再出发:在python3中导入自定义的包
    沉淀再出发:java中的equals()辨析
    沉淀再出发:web服务器和应用服务器之间的区别和联系
    沉淀再出发:jetty的架构和本质
    沉淀再出发:dubbo的基本原理和应用实例
    沉淀再出发:OpenStack初探
    沉淀再出发:Spring的架构理解
    沉淀再出发:关于IntelliJ IDEA使用的一些总结
    沉淀再出发:spring boot的理解
    沉淀再出发:Bean,JavaBean,POJO,VO,PO,EJB等名词的异同
  • 原文地址:https://www.cnblogs.com/oftenlin/p/4199842.html
Copyright © 2020-2023  润新知