springMVC传递参数内有list的提交
更新:HHH   时间:2023-1-7


最后使用ajax提交成功,下面是一些代码,后面如果有时间再完善。

ajax:

   function test(){
        $.ajax({
            type: "POST",
            url: "test2",
            contentType:"application/json",
            data: '{"propTest":"test","list":[{"prop1":"a"},{"prop1":"b"}]}',
            dataType: "json",
            success: function(data){
                console.log(data);
            }
        });
    }

controller:

    @ResponseBody
    @RequestMapping(value="/test2",method=RequestMethod.POST)
    public String hello2(@RequestBody TestList test){
        System.out.println(test);
        //value="/hello/{id}",
        //@PathVariable(value="id") Integer id,
        //@RequestParam(value="username") String username
        //@CookieValue
        return testBiz.getTest(1L);
    }

spring配置:

    <bean id="mappingJacksonHttpMessageConverter"
        class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
        <property name="supportedMediaTypes">
            <list>
                <value>text/html;charset=UTF-8</value>
                <value>application/json;charset=UTF-8</value>    
            </list>
        </property>
    </bean>

bean信息:

public class TestList {
    private String propTest;
    public String getPropTest() {
        return propTest;
    }

    public void setPropTest(String propTest) {
        this.propTest = propTest;
    }

    private List<TestInner> list;

    public List<TestInner> getList() {
        return list;
    }

    public void setList(List<TestInner> list) {
        this.list = list;
    }
    
}


public class TestInner {
    private String prop1;

    public String getProp1() {
        return prop1;
    }

    public void setProp1(String prop1) {
        this.prop1 = prop1;
    }
}


返回开发技术教程...