繁体   English   中英

使用来自 POST 方法的 JDBCTemplate 存储对象数组 - Spring Boot

[英]Storing object array with JDBCTemplate from POST method - Spring Boot

如何使用JDBCTemplate将对象数组插入数据库? 我有一个可变长度的对象数组,来自我的控制器中的POST方法。


我看过这些,

和其他人一样,他们似乎不适合我的需要。


控制器

// Service
@Autowired
private DBService tool;

@PostMapping(value = "/foo")
private void storeData(@RequestBody CustomObject[] customObjects) {
    // Calls service then DAO
    tool.storeData(customObjects);
}

POJO对象

public class CustomObject {

    private Integer id;
    private String name;

    // Getters & Setters for class attributes
    ...
}

DAO是吗? 因为我想分别存储每个数组元素,每个元素都有自己的行。

@Autowired
private JdbcTemplate temp;

public void storeData(CustomObject[] customObjects) {

    String sql = "INSERT INTO FooBar(name) VALUES(\'" + customObjects.toString() + "\');";

    temp.update(sql);
}

预期的

我想将我的自定义对象数组从POST到我的数据库中,每个元素都有自己的行。

理想情况下,您希望遍历数组并保存每个 "CustomObject" 。

private JdbcTemplate temp;

public void storeData(CustomObject customObject) {

    String sql = "INSERT INTO FooBar VALUES(" + customObject.id + ",\'"+  customObject.name +"\');";

    temp.update(sql);
}


@PostMapping(value = "/foo")
private void storeData(@RequestBody CustomObject[] customObjects) {
     // Save each record individually
      customObjects.forEach { customObject -> 
      tool.storeData(customObjects);
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM