当前位置: 首页 > 知识库问答 >
问题:

foreach不适用于类型“java.lang.String”

卫弘懿
2023-03-14

我正在尝试将数据库中列表中的项作为行中的单个值插入。如何循环发送的有效负载并将所有项插入到单独的行中?我试着找例子,没有运气。我无法循环并插入数据库中的值。

这是有效载荷

{"labsigned":["234568","234567","2345678","2344556","12335677","2345677","234556","234545"]}
@RequestMapping(path = "/labreport/createrordispatched", method = RequestMethod.POST)
public ResponseEntity<?> createDispatched(@RequestBody Dispatched dispatched){
    if(labDashboardService.createDispatched(dispatched)) {
        return ResponseEntity.status(HttpStatus.CREATED).body(true);
    }

    return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(false);
}
public boolean createDispatched(Dispatched dispatched) {
    List<Dispatched> newTickets = new ArrayList<>();

    dispatched.setCreatedBy(getCurrentUserEmail());
    dispatched.setDateCreated(System.currentTimeMillis());

    for(String labsigned:dispatched.getlabsigned()){
        Dispatched ticket = new Dispatched(
                dispatched.getCreatedBy(),
                dispatched.getDateCreated(),
                labsigned
        );
        newTickets.add(ticket);
    }
    dispatchedRepository.saveAll(newTickets);
    return true;
}
@Entity
@Table(name = "DISPATCHED")
public class Dispatched {
    private String id;
    private String labsigned;
    private Long dateCreated;
    private String createdBy;

    public Dispatched(){}
    public Dispatched(String createdBy, Long dateCreated, String labsigned){
        this.labsigned = rorlabsigned;
        this.dateCreated = dateCreated;
        this.createdBy = createdBy;

    }
//getters and setters
  for(String rorlabsigned:dispatched.getRorlabsigned())

共有1个答案

扈德容
2023-03-14

错误消息指示getterdispatched.getRorlabSigned()不返回集合。它返回一个字符串。不能使用foreach循环字符串。我想您需要一个。尝试重构代码的那一部分。

 类似资料:
  • 问题内容: 根据这个答案 我试图在我的桌子上创建一个Select for 但是我对位类型示例sqlfiddle遇到了问题,如您所见,它应该返回4行,但它仅返回3行,所以我想念什么? 问题答案: 这是因为您可以将as作为列的值。而且SQL具有三值逻辑,因此检查将返回,而不是(如您期望的那样)。我认为此查询将为您提供帮助:

  • 请不要使用“if”语句,除非你在解释为什么没有“if”语句是不可能的。

  • 我没有正确使用注释吗? 编译错误: 注释工作正常,可以毫无问题地访问该网页。

  • 我正在学习Spring和Data JPA。我对Ehcache有问题。我想缓存我的一个方法的返回值,该方法从数据库返回一些记录。这是一个预配置Ehcache实例的练习(我假设)。问题是,我不能使用注释@cacheable将我的方法标记为它的返回值应该被缓存的方法。我得到一个不兼容类型编译错误(Required:boolean,Found:String)。下面是我的服务层中的一个类,我认为我应该将@c

  • 2.11 和爪哇7。我正在尝试使用@XmlSchema注释我的包如下所示。 然而,我得到了这个编译错误,“注释类型不适用于这种声明” 有人知道为什么会发生这种事吗?

  • 我在更新链式lodash操作时遇到了这个问题,我不明白为什么会有不同的效果 我把范围缩小到用链子把一根forEach拴在一个lodash包装纸上 https://jsbin.com/wahokezeja/edit?js,控制台 这将抛出一个错误: “TypeError:\(…)。forEach(…)。groupBy不是一个函数 但是,当使用贴图链接时,效果很好 https://jsbin.com/