Spring JPA findAll() добавляет дополнительные столбцы в предложениеwhereJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Spring JPA findAll() добавляет дополнительные столбцы в предложениеwhere

Сообщение Anonymous »

Я новичок в Spring Boot и JPA.
У меня есть класс Entity как TestEntity, который имеет несколько полей, таких как testId, name, status и т. д., и он расширяет один базовый класс, имеющий общие поля, такие как id, созданныйBy, LastModifiedBy и т. д.
Ниже приведен класс TestEntity.

Код: Выделить всё

@NoArgsConstructor
@Table(name = "TEST")
public class TestEntity extends EntityCommonBase {

@Id
@Column(name = "TEST_ID", nullable = false)
private String testId;

@Column(name = "STATUS")
private String status;
}
Ниже приведен класс EntityCommonBase:

Код: Выделить всё

@MappedSuperclass
@EntityListeners(AuditingEntityListener.class)
public abstract class EntityCommonBase {
@Column(length = 32, columnDefinition = "VARCHAR(32)", unique = true)
private String id;

@CreatedDate
@Column(name = "created", nullable = false, updatable = false)
private LocalDateTime created;

@LastModifiedDate
@Column(name = "last_update")
private LocalDateTime lastUpdate;

@CreatedBy
@Column(name = "created_by", nullable = false, updatable = false)
private String createdBy;

@LastModifiedBy
@Column(name = "last_modified_by")
private String lastModifiedBy;
}
Я использую findAll() с помощью Примера сопоставления, где мне нужно найти все сделки по DealId или по DealId и статусу.

Код: Выделить всё

TestEntity testEntitySearchRequest = new TestEntity();
testEntitySearchRequest.setTestId(testId);
testEntitySearchRequest.setStatus(status.getValue());

Example example = Example.of(testEntitySearchRequest);
List tests =  testDAO.findAll(example);
Поскольку входные параметры будут меняться и требоваться условие И, я использую Пример, чтобы он генерировал запрос динамически.
Например, если я передаю в запросе только testId, findAll будет выполнен с testId в предложенииwhere.
Если я передам testId И статус, то findAll будет выполнен с testId И статусом.
Это отлично работает и сослужит мне службу. Цель.
Но почему он также добавляет createBy и LastModifiedBy в предложениеwhere, я не понимаю.
Есть идеи, почему они будут добавлены, даже если я не упоминаю их для добавления в предложениеwhere?
Надеюсь, вопрос ясен.
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/790 ... ere-clause
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»