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
SpringMVC POJO传参方式的更多相关文章
- Spring MVC POJO传参方式
有两POJO类 Address.java package com.proc; public class Address { private String province; private Strin ...
- @ModelAttribute注解和POJO传参过程
1.@ModelAttribute注解 @ModelAttribute主要有三个用途,对方法进行注解,对参数进行注解,还有@ModelAttribute和@RequestMapping一起对方法进行注 ...
- springMVC常用传参总结
本文介绍了springMVC常用的传参方式和一些注意的事项,页面表单主要以ajax的形式提交. 本帅是个菜鸡,水平有限,若有什么讲得不对或有补充的地方欢迎各位提意见. 一.传递String类型 1 ...
- angularjs简单实现$http.post(CORS)跨域及$http.post传参方式模拟jQuery.post
1.开启angularjs的CORS支持 .config(function($httpProvider) { // CORS post跨域配置 $httpProvider.defaults.useXD ...
- react中的传参方式
react是一个SPA模式,即组件嵌套租,在一个单页面的应用中组件间的数值传递是必不可少的,主要的传参方式大致有一下几种: 1,在挂载的地方给组件传参 ReactDOM.rander(<a na ...
- Web API中的传参方式
在Restful风格的WebApi的里面,API服务的增删改查,分别对应着Http Method的Get / Post / Delete /Put,下面简单总结了Get / Post /Delete ...
- jQuery对象初始化的传参方式
jQuery对象初始化的传参方式包括: 1.$(DOMElement) 2.$(' ... '), $('#id'), $('.class') 传入字符串, 这是最常见的形式, 这种传参数经常也传入第 ...
- Python函数定义及传参方式
主要内容: 1.函数初识 2.函数传参方式 (1)位置参数 (2)默认参数 (3)关键参数 (4)非固定传参 一.函数初识 1. ...
- java 传参方式--值传递还是引用传递
java 传参方式--值传递还是引用传递 参数是按值而不是按引用传递的说明 Java 应用程序有且仅有的一种参数传递机制,即按值传递.写它是为了揭穿普遍存在的一种神话,即认为 Java 应用程序按引用 ...
随机推荐
- HTTP Status 500 ? Internal Server Error
getWriter()和getOutputStream()不能同时调用 HTTP Status 500 ? Internal Server Error Type Exception Report Me ...
- python爬虫常用的库
1,请求:requests requests.get(url, headers) requests.post(url, data=data, files=files) urllib模块: Py ...
- WebSocket-Node
WebSocket Client & Server Implementation for Node 参考资料:[https://github.com/theturtle32/WebSocket ...
- 分享我积攒的测试相关的资料收集awesome-test
微信扫描关注我的公众号,回复测试资料 即可免费获取资料下载地址,不定期更新资料
- 浅谈python中字典append 到list 后值的改变问题
看一个例子 ? 1 2 3 4 d={'test':1} d_test=d d_test['test']=2 print d 如果你在命令行实践的话,会发现你改动的是d_test ,但是d 也跟着改变 ...
- CodeSmith 找不到请求的 .Net Framework Data Provider
连接数据库时候报标题的错误解决方案 安装mysql-connector-net-6.8.7.msi,下载地址:http://dev.mysql.com/downloads/connector/net/ ...
- 深入理解java:2.3.6. 并发编程concurrent包 之管理类---线程池
我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁 ...
- XSS-笔记
Cross Site Script 跨站脚本 是一种客户端代码的注入 而命令注入.sql注入都是客户端代码的注入. XSS攻击行为的目标为:1.窃取目标的cookie信息 2.执行CSRF脚 ...
- 第五周总结&实验·
本周总结 1.final声明的变量即成为常量,常量不可以修改. 2.子类能够 ...
- for循环练习题:拆解字符并输入下标
test = input('请输入:') for item in range(0,len(test)): print(item,test[item])