MyBatis : la requête de java.util.Date à DATE type sur la base de données MYSQL

Dans mon Mapping XML que j'ai :

<select id="getPatientsByBirthday"  parameterType="date" resultType="com.axiohelix.nozoki.entity.Patient">
            SELECT id AS id,
               pharumo_id AS pharumoId,
               code AS code,
               family_name AS familyName,
               first_name AS firstName,
               family_name_kana AS familyNameKana,
               first_name_kana AS firstNameKana,
               gender AS gender,               
               address AS address,
               tel AS tel
        FROM tbl_patient
        WHERE birthday = #{id}
    </select>

où l'anniversaire est une DATE type de base de données MYSQL.

Mon Mappeur de l'interface se présente comme suit :

public interface PatientMapper {

    void insertPatient(Patient patient);
    Patient getPatientById(Integer id);
    Integer getPatientCount();
    List<Patient> getPatientsByBirthday(Date  bday);
}

J'ai essayé d'interroger les patients atteints de anniversaire particulier, comme:

Calendar cal1 = new GregorianCalendar(1980, 8, 15);
Date bday=cal1.getTime();

List<Patient> plist=mapper.getPatientsByBirthday(bday);

Même si il y a des documents, avec la date donnée,ce retour liste vide.

Anytips ?

  • Partager vos Mappeur de l'implémentation de l'interface avec le résultat des mappages dans le fichier XML.