zoukankan      html  css  js  c++  java
  • SpringMVC POJO传参方式

    有两POJO类

    Address.java

    package com.proc;
     
     public class Address {
         private String province;
         private String city;
         public String getProvince() {
             return province;
         }
         public void setProvince(String province) {
             this.province = province;
         }
         public String getCity() {
             return city;
         }
         public void setCity(String city) {
             this.city = city;
         }
         @Override
         public String toString() {
             return "Address [province=" + province + ", city=" + city + "]";
         }
     }

    User.java

    package com.proc;
      
    public class User {
        
         private String username;
         private String password;
         private String gender;
         private String hobby;
         private Address address;
         public String getUsername() {
             return username;
         }
         public void setUsername(String username) {
             this.username = username;
         }
         public String getPassword() {
             return password;
         }
         public void setPassword(String password) {
             this.password = password;
         }
         public String getGender() {
             return gender;
         }
         public void setGender(String gender) {
             this.gender = gender;
         }
         public String getHobby() {
             return hobby;
         }
         public void setHobby(String hobby) {
             this.hobby = hobby;
         }
         public Address getAddress() {
             return address;
         }
         public void setAddress(Address address) {
             this.address = address;
         }
         @Override
         public String toString() {
             return "User [username=" + username + ", password=" + password
                     + ", gender=" + gender + ", hobby=" + hobby + ", address="
                     + address + "]";
         }
    }

    JSP页面

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8" contentType="text/html; charset=utf-8"%>
     
     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     <html>
       <head>
     
       </head>
       
       <body>
         <form action="testPOJO" method="post">
         <table>
             <tr>
                 <td>用户名:</td><td><input type="text" name="username"/></td>
             </tr>
             <tr>
                 <td>密码:</td><td><input type="password" name="password"/></td>
             </tr>
             <tr>
                 <td>性别:</td>
                 <td>
                     <input type="radio" checked="checked" name="gender" value="male"/><input type="radio" name="gender" value="female"/></td>
             </tr>
             <tr>
                 <td>爱好:</td>
                 <td>
                     <input type="checkbox" name="hobby" value="tv">看电视
                     <input type="checkbox" name="hobby" value="ball">打球
                     <input type="checkbox" name="hobby" value="swimming">游泳
                 </td>
             </tr>
             <tr>
                 <td>省:</td><td><input type="text" name="address.province"/></td>
             </tr>
             <tr>
                 <td>市:</td><td><input type="text" name="address.city"/></td>
             </tr>
             <tr>
                 <td></td><td><input type="submit" value="提交"></td>
             </tr>
     
            </table>  
         </form>
       </body>
     </html>

    控制器类:

    package com.proc;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
     
    @Controller
    public class Test {
    
        @RequestMapping("/testPOJO")
        public String testPOJO(User user){
            System.out.println(user);
            return "hello";
        }
       
    }

    测试:

    1、进入jsp页面:

    2、点击提交后,控制台输出

    User [username=caoyc, password=123456, gender=male, hobby=tv,swimming, address=Address [province=sichuan, city=chengdu]]

    【总结】:这里对应address属性使用的是级联属性

    POJO注入数组属性

      上面我们看到hobby是一个多选项。那么可以将hobby设为一个String[]类型的数组。设置后我们再次

    @RequestMapping("/testPOJO")
    public String testPOJO(User user){
        System.out.println(user);
        System.out.println(Arrays.toString(user.getHobby()));
        return "hello";
    }

      输出结果:

    1 User [username=caoyc, password=123456, gender=male, hobby=[Ljava.lang.String;@c3d34, address=Address [province=sichuan, city=chengdu]]
    2 [tv, swimming]

    上面如果输入中文。会出现中文乱码情况

    本文转自:http://www.cnblogs.com/caoyc/p/5635640.html

  • 相关阅读:
    Visual C++6.0 调用Visual Basic 6.0写的Microsoft Communications Control(ActiveX)的使用疑难及解决办法
    Associating Icons with a Category 与 恶作剧软件 有关系吗?
    WPF/Silverlight Button Styles and Templates
    Notepad++ 备忘录一
    冥思苦想,木疙瘩也能崩出个豆:扯一下各大软件的用户体验
    生活小窍门。
    Bug验证:.Net 4 下,貌似发现一个bug。如果是真,.Net组的员工该打屁股。
    两台硬件和软件配置完全相同的机器A和B,现在要用系统自带的Copy功能把A上的一个文件,复制到B上。在哪台机器上执行程序,效率更高?
    WPF 遍历 DataGrid 每行的控件
    IE ActiveX Control 和RIA
  • 原文地址:https://www.cnblogs.com/jasonZh/p/8761246.html
Copyright © 2011-2022 走看看