springMVC 请求参数的绑定

基本数据类型和字符串类型

(1)提交表单的name和参数的名称是相同的

(2)区分大小写

<a href="param/testParam?username=hky&pwd=123">请求参数绑定</a>
@GetMapping("/testParam")
    public String testParam(String username, String pwd) {

        System.out.println("执行testParam");
        System.out.println("username:" + username);
        System.out.println("password:" + pwd);

        return "success";
    }

在这里插入图片描述

实体类型(JavaBean)

(1)提交表单的name和JavaBean中的属性名称需要一致

(2)如果一个JavaBean类中包含其他的引用类型,那么表单的name属性需要编写成:对象.属性 例如:address.name

public class User implements Serializable {

   private String  uname;
   private Integer age;
   private Date date;
   //省略get set tostring 方法  
}
<form action="param/saveUser" method="post">
    用户姓名:<input type="text" name="uname"/> <br/>
    用户密码:<input type="text" name="age"/> <br/>
    用户生日:<input type="text" name="date"/> <br/>
    <input type="submit" value="提交"/><br/>
</form>
@RequestMapping("/saveUser")
    public String saveUser(User user) {
        System.out.println("执行saveUser");
        System.out.println(user);
        return "success";
    }

在这里插入图片描述
自定义日期转换配置
中文乱码问题解决

集合属性数据封装

(1)JSP页面编写方式:list[0].属性

(2)JSP页面编写方式:map[‘one’].属性

public class Account implements Serializable {
    private String username;
    private String password;
    private Double money;
    private List<User> list;
    private Map<String,User> map;
	//省略 get set tostring 方法
}    
<form action="param/saveAccount" method="post">
    姓名:<input type="text" name="username"/> <br/>
    密码:<input type="text" name="password"/> <br/>
    金额:<input type="text" name="money"/> <br/>

    用户姓名:<input type="text" name="list[0].uname"/> <br/>
    用户年龄:<input type="text" name="list[0].age"/> <br/>
    用户生日:<input type="text" name="list[0].date"/> <br/>

    用户姓名:<input type="text" name="map['one'].uname"/> <br/>
    用户年龄:<input type="text" name="map['one'].age"/> <br/>

    <input type="submit" value="提交"/><br/>
</form>
 @RequestMapping("/saveAccount")
    public String saveAccount(Account account) {
        System.out.println("执行saveAccount");
        System.out.println(account);

        return "success";
    }

运行结果
在这里插入图片描述

posted @   iforeverhz  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示