Я хочу создать поиск по дате рождения. Это мой класс в Java:
@Entity
@Table(name="child")
public class Child implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="ID")
private int id;
@Column(name="FirstName")
private String firstName;
@Column(name="SecondName")
private String secondName;
@Column(name="PESEL")
private String PESEL;
@Column(name="BirthDate")
@Temporal(TemporalType.DATE)
private Date birthDate;
@Column(name="Sex")
private String sex;
@JsonBackReference
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name="familyid",referencedColumnName = "id")
private Family family;
}
и запрос:
@Transactional
public List<Family> getFamilyByBirthDateChild(String string) {
HibernateUtil.initManager();
TypedQuery<Family> query = HibernateUtil.getEntityManager().createQuery("SELECT family FROM Family family INNER JOIN family.childList ef WHERE ef.birthDate = :birthdate ",Family.class);
query.setParameter("birthdate",string);
List<Family> result = query.getResultList();
HibernateUtil.shutdown();
return result;
}
У меня есть лицевая сторона в Angular 6:
<div style="width: 300px;">
<form (ngSubmit)="onSubmit()">
<div class="form-group">
<label for="id">Search</label>
<input type="text" class="form-control" id="id" required [(ngModel)]="val" name="pesel">
</div>
<div class="form-group">
<label for="department">Sex</label>
<select id="department" name="department"
[(ngModel)]= "choice" class="form-control">
<option value="Pesel">Pesel</option>
<option value="Name">Imię</option>
<option value="Sourname">Nazwisko</option>
<option value="Sex">Płeć</option>
<option value="BirthDate">Data</option>
</select>
</div>
<div class="btn-group">
<button type="submit" class="btn btn-success">Submit</button>
</div>
</form>
</div>
И код в компоненте:
case 'BirthDate': {
const dateB = new Date(this.val);
this.dataService.getFamilyByBirthDateChild(dateB)
.subscribe(families => this.families = families);
break;
}
Когда я пишу дату, например "07/02/2018" Я получаю ошибку "
сообщение:
"Http failure response for (unknown url): 0 Unknown Error"
.
Я не знаю, в чем проблема, потому что когда я получаю строку из текстовой области, я анализирую ее до даты объекта, но она не работает ... Спасибо за вашу помощь.
@ Редактировать
Сгенерирована ссылка: http://localhost:8080/api/getFamilyByBirthDateChild/Mon%20Jul%2002%202001%2000:00:00%20GMT+0200%20(CEST)