spring mvc 控制器方法传递一些经验对象的数组

spring mvc 控制器方法传递一些经验对象的数组

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

由于该项目必须提交一个表单,其中多个对象,更好的方法是直接通过在控制器方法参数的数组。

因为Spring mvc框架在反射生成控制方法的參数对象的时候会调用这个类的getDeclaredConstructor方法来获得构造函数, 可是一直报NoSuchMethodException的异常。

依据这种方法的jdk文档,这个类是一个数组对象时,这种方法会抛出java.lang.NoSuchMethodException,由于接口、数组类、void、基本类型没有构造函数。

同事后来给我支了两招,使用ArrayList来取代原生数组,或者使用DTO来封装一下原生的数组,Spring mvc就行找到这个參数的构造函数了。

@RequestMapping(value={"xxx"}, method = RequestMethod.POST)
public String foo(ArrayList<Bar> bars){
	param.get(0);
}
class BarArray{
	Bar[] bars;
	public Bar[] getBars(){
		return bars;
	}
	public void setBars(Bar[] bars){
		this.bars = bars;
	}
}
@RequestMapping(value={"xxx"}, method = RequestMethod.POST)
public String foo(ArrayList<Bar> bars){
	param.get(0);
}

前台的话能够通过bars[0].name=xxx 这种方式来提交表单。

另一点是原始类型的数组不必要这样做,因为我们并不需要一个构造函数。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117260.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 关于XXE「建议收藏」

    关于XXE「建议收藏」NJUPTCTF2019:做题的时候,抓包看了一下,响应XML格式消息,并没有严格过滤,这道题读文件,<!DOCTYPEfoo[<!ENTITYxxeSYSTEM”php://filter/read=convert.base64-encode/resource=/flag”>]><ticket><username>&amp…

    2022年5月23日
  • ssdp协议 upnp_SSDP,简单服务发现协议

    ssdp协议 upnp_SSDP,简单服务发现协议SSDP简单服务发现协议,是应用层协议,是构成UPnP(通用即插即用)技术的核心协议之一。它为网络客户端(networkclient)提供了一种发现网络服务(networkservices)的机制,采用基于通知和发现路由的多播方式实现。SSDP多播地址:239.255.255.250:1900(IPv4),FF0x::C(IPv6)两种类型的SSDP请求消息会通过SSDP多播地址发送:1….

    2022年10月11日
  • HTTP协议中GET、POST和HEAD的介绍(请求方式总结)

    HTTP协议中GET、POST和HEAD的介绍(请求方式总结)

    2021年5月10日
  • webservice配置_webService

    webservice配置_webService今天看了一下webService,写了一个测试,在测试的途中遇到一些问题。记录一下。。。Service端的代码packagecom.test.ws;importjavax.jws.WebMethod;importjavax.jws.WebService;@WebServicepublicinterfaceHelloWS{ @WebMethod publicStringsayHell…

    2022年9月13日
  • python进制转换代码_十进制转二进制编程

    python进制转换代码_十进制转二进制编程这篇文章主要介绍了Python实现的十进制小数与二进制小数相互转换功能,结合具体实例形式详细分析了二进制与十进制相互转换的原理及Python相关实现技巧,需要的朋友可以参考下本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:十进制小数⇒二进制小数乘2取整对十进制小数乘2得到的整数部分和小数部分,整数部分即是相应的二进制数码,再用2乘小数部分(之…

    2022年9月24日
  • python小项目:1、人机剪刀石头布

    python小项目:1、人机剪刀石头布

    2021年10月6日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号