小编Gar*_*ary的帖子

龙目岛-java.lang.StackOverflowError:toString方法上为null

我有两个班ProductCategorie。如categoryRepository.save(c1)以下代码所示,当我要修改categorie中的产品列表时,会发生此错误:

 java.lang.StackOverflowError: null
    at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:449) ~[na:1.8.0_191]
        at java.lang.StringBuilder.append(StringBuilder.java:136) ~[na:1.8.0_191]
        at org.sid.entities.Product.toString(Product.java:12) ~[classes/:na]
        at java.lang.String.valueOf(String.java:2994) ~[na:1.8.0_191]
        at java.lang.StringBuilder.append(StringBuilder.java:131) ~[na:1.8.0_191]
        at java.util.AbstractCollection.toString(AbstractCollection.java:462) ~[na:1.8.0_191]
        at java.lang.String.valueOf(String.java:2994) ~[na:1.8.0_191]
        at java.lang.StringBuilder.append(StringBuilder.java:131) ~[na:1.8.0_191]
        at org.sid.entities.Categorie.toString(Categorie.java:15) ~[classes/:na]
        at java.lang.String.valueOf(String.java:2994) ~[na:1.8.0_191]
Run Code Online (Sandbox Code Playgroud)
@Document
@Data @AllArgsConstructor @NoArgsConstructor @ToString
public class Categorie {
    @Id
    private String id;
    private String name;
    @DBRef
    @JsonIgnore
    private Collection<Product> products=new ArrayList<>();

@Document
@Data @AllArgsConstructor @NoArgsConstructor @ToString
public class Product {
    @Id
    private String id;
    private String name;
    private double price; …
Run Code Online (Sandbox Code Playgroud)

java java-ee mongodb lombok spring-boot

3
推荐指数
1
解决办法
2526
查看次数

无法使用流转换 java.util.Optional&lt;class&gt;

我正在尝试在 Java 中使用流,我有一个学生课程:

@Entity
@Data @AllArgsConstructor @NoArgsConstructor
public class Student {
    @Id @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
    private String name;
Run Code Online (Sandbox Code Playgroud)

我添加了一些学生:

Stream.of("John","Sophie","emilia").forEach(s->{
            studentRepository.save(new Student(s));
        });
Run Code Online (Sandbox Code Playgroud)

问题出在以下代码中:

int[] empIds = { 1, 2, 3 };
        List<Student> students= Stream.of(empIds)
                .map(studentRepository::findById).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

我收到此错误:方法引用中的返回类型错误:无法将 java.util.Optional 转换为 R。我的 IDE 在 studentRepository::findById 下划线。非常感谢。

java-8

0
推荐指数
1
解决办法
989
查看次数

标签 统计

java ×1

java-8 ×1

java-ee ×1

lombok ×1

mongodb ×1

spring-boot ×1