我正在尝试使用Angular JS从前端发送一个数组,因此在我的后端我使用了request.parameter()命令(用于String)。
对于列表,我可以使用request.getParametersValues()
,但它用于String[]
,而不是List<String>
。另一方面,如果我在mybatis String[]
中使用javaType="java.util.List" cannot match with String[]
。
String[]
是否有特定的javaType?
尝试1 java
private List<String> values;
dataService.post(request.getParametersValues("values"); -> error here (cannot match with List<String>)
MyBatis的
<resultMap id="value_input" type="values">
<result property="values" column="VALUES" javaType="java.util.List"/>
</resultMap>
尝试2 java
private String[] values;
dataService.post(request.getParametersValues("values");
MyBatis的
<resultMap id="value_input" type="values">
<result property="values" column="VALUES" javaType="java.util.List"/> -> error here (cannot match with String[])
</resultMap>
答案 0 :(得分:0)
您的问题是您尝试将数组(String[]
)分配到列表(List<String>
)。
您可以做的是使用以下指令将从请求中检索到的值数组转换为String列表:
List<String> value = Arrays.asList(request.getParametersValues("values"));
这将允许您使用第一次尝试代码。