Найти по дате рождения в Hibernate / Angular - PullRequest
0 голосов
/ 12 сентября 2018

Я хочу создать поиск по дате рождения. Это мой класс в 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)

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