Spring Data postgresql 10插入不起作用

时间:2018-03-07 11:56:09

标签: spring postgresql spring-boot spring-data spring-data-jpa

我正在使用 RestController 服务 存储库和实体来处理Spring启动应用程序。

我的问题是,当我调用Web服务将数据保存在数据库中时,它似乎工作正常并且没有抛出异常但是当我检查我的数据库时,我发现表已创建,但我发现没有数据保存。这是我在输出中得到的(对于我的列表中的每个元素):

  

休眠:       插入       成           TABLE_NAME           (columnOne,columnTwo)       值           (?,?)

这是我的代码:

RestController

@RestController
@RequestMapping(path = "/api/")
public class myController {

     @Autowired
     private MyService myService;

  @PostMapping(path="/inject/{year}")
    public void myControllerMethod(@PathParam("year") Year year) {
        this.myService.myServiceMethod(year);
    }
}

服务

@Service
public class MyService {

@Autowired
MyRepository myRepository;

public void myServiceMethod(Year year) {
    List<MyEntity> myEntityList = this.parseMyEntityList(year);
    this.myRepository.save(myEntityList)
  }
}

存储库

@Repository
public interface MyRepository extends CrudRepository<MyEntity, Long>, JpaSpecificationExecutor<InseeLibelle> {
}

实体

@Entity
@Table(name = "table_name", indexes = {
        @Index(name = "columnOne_idx", columnList = "columnOne"),
        @Index(name = "columneTwo_idx", columnList = "columnTwo"),
})

public class MyEntity{

@JsonIgnore
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long columnId;

@Column
private Integer columnOne;

@Column
private String columnTwo;

 public Integer getColumnOne() {
    return columnOne;
}

public void setColumnOne(Integer columnOne) {
    this.columneOne = colmunOne;
}

public String getColumnTwo() {
    return columnTwo;
}

public void setColumnTwo(String columnTwo) {
    this.columnTwo = columnTwo;
}
}

我尝试在存储库中添加此行,但它也不起作用:

<S extends MyEntity> Iterable<S> save(Iterable<S> entities) ;

1 个答案:

答案 0 :(得分:0)

也许问题在于pgAdmin(就像我的情况一样),它没有显示数据,但它们存在于数据库中,在存储库中尝试 findAll 方法或使用选中它们进行检查* 直接。