У меня есть метод Jpa, как показано ниже.
Set<ApplicationMaterialFile> findAllByProcessInstanceIdAndApplicationMaterialIn(String processInstanceId, Collection<ApplicationMaterial> applicationMaterials);
Это код для вызова вышеуказанного метода Spring Data JPA.И здесь будет выдано исключение при вызове вышеуказанного метода JPA Spring Data.
@Override
public Set<ApplicationMaterialFile> getAllByProcessInstanceIdApplicationMaterialIds(String processInstanceId, Set<Long> applicationMaterialId) {
List<ApplicationMaterial> applicationMaterials = applicationMaterialService.getAllByIdIfNotExistsThenThrowException(applicationMaterialId);
return applicationMaterialFileRepository.findAllByProcessInstanceIdAndApplicationMaterialIn(processInstanceId, applicationMaterials);
}
Вот структура сущности ApplicationMaterial.
/**
*
* @see <a href="https://code.aliyun.com/butterfly-effect/backend/wikis/plans"
* @author himly z1399956473@gamil.com
*/
@Table(name = "application_material_library")
@Entity
@EntityListeners(AuditingEntityListener.class)
@Data
@ToString(exclude = {"university"})
@EqualsAndHashCode(exclude = {"university"})
public class ApplicationMaterial {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(nullable = false)
private String name;
private String fileFormat;
private String description;
private String templateFileUrl;
@JsonIgnore
@ManyToOne
private University university;
@CreatedDate
@Column(nullable = false)
private Timestamp createdAt;
@LastModifiedDate
@Column(nullable = false)
private Timestamp updatedAt;
}
Когда вызывать метод JPA Spring Data findAllByProcessInstanceIdAndApplicationMaterialIn
вызовет исключение, как показано ниже
Причина: java.lang.IllegalArgumentException: элемент значения параметра [ApplicationMaterial (id = 1, name = sdfsf, fileFormat = doc, description = dfsdfds, templateFileUrl = fsdfsdf, созданный At = 2018-09-26 16: 54: 09.297, updatedAt = 2018-09-26 16: 54: 23.451)] не соответствуетожидаемый тип [com.hikedu.backend.model.ApplicationMaterial (n / a)]
Может кто-нибудь помочь мне?
Обновление:
Структура таблицы:
-- auto-generated definition
create table application_material_library
(
id bigint auto_increment
primary key,
created_at datetime(6) not null,
description varchar(255) null,
file_format varchar(255) null,
name varchar(255) not null,
template_file_url varchar(255) null,
updated_at datetime(6) not null,
university_id bigint null,
constraint FK9kuemh1kjhyt8u16sqw6i6t59
foreign key (university_id) references universities (id)
);