Возврат полей @id из Spring Data JpaRepository - PullRequest
0 голосов
/ 23 марта 2020

Я унаследовал MASSIVE Java приложение, и у меня немало проблем, пытаясь найти способ его обойти. У меня есть конкретная проблема c относительно Spring JpaRepository. Пожалуйста, обратите внимание, что я только начал весной и еще не уверен

У меня есть хранилище с аннотациями @RepositoryRestResource.

@RepositoryRestResource
public interface GoodsReceiptRepository extends JpaRepository<GoodsReceipt, GoodsReceiptId> {

У меня также есть @Entity:

@Entity
@Table(name = AvisoPosition.TABLE)
@IdClass(AvisoPositionId.class)
public class AvisoPosition implements Serializable {

и

@Entity
@Table(name = GoodsReceipt.TABLE)
@IdClass(GoodsReceiptId.class)
public class GoodsReceipt implements Serializable { 

все мои поля с аннотацией @Id не возвращаются в JSON ответ:

@Id @Column(name = "LGNTCC")
private String accountingArea;

Как получить эти поля идентификаторов?

Если я удаляю @Id, я получаю то, что хочу, но не смею этого делать, поскольку не могу судить, какое влияние это окажет на приложение.

Приветствия

Ответы [ 2 ]

1 голос
/ 23 марта 2020

Похоже, вы используете Spring Data Rest, то, что вы видите, является поведением по умолчанию для него.

Вы можете настроить это поведение, выполнив следующие действия:

import org.springframework.context.annotation.Configuration;
import org.springframework.data.rest.core.config.RepositoryRestConfiguration;
import org.springframework.data.rest.webmvc.config.RepositoryRestConfigurerAdapter;

@Configuration
public class RepositoryConfig extends RepositoryRestConfigurerAdapter {
    @Override
    public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
        config.exposeIdsFor(YourClassNameGoesHere.class);
    }
}
0 голосов
/ 24 марта 2020

Попробуйте создать DTO для каждой сущности, затем avisoPostionDTO.setId(avisoPosition.getId());, и вы просто вернете DTO каждой сущности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...