Основное использование аннотаций
В MyBatis мы можем использовать аннотации для завершения связи между операторами SQL и объектами Java. Вот пример использования аннотаций:
@Select("SELECT * FROM user WHERE id = #{id}")
User getUserById(int id);
В этом примере мы используем @Select
аннотацию для определения оператора SQL, где #{id}
находится заполнитель, указывающий, что необходимо передать параметр. В списке параметров метода мы используем int id
для указания типа параметра, который необходимо передать. Наконец, мы сопоставляем результаты запроса с User
объектом.
Помимо @Select
аннотаций, MyBatis также предоставляет другие аннотации, такие как @Insert
, @Update
и @Delete
т. д., для выполнения различных типов операций SQL. Использование этих аннотаций @Select
аналогично использованию аннотаций. Вам нужно только соответствующим образом изменить операторы SQL и типы параметров.
Расширенное использование аннотаций
Помимо базового использования аннотаций, MyBatis также предоставляет некоторые расширенные методы использования аннотаций, такие как использование @Result
аннотаций для определения отношений сопоставления результирующего набора. Вот @Result
пример использования аннотации:
@Select("SELECT * FROM user WHERE id = #{id}")
@Results({
@Result(property = "id", column = "user_id"),
@Result(property = "name", column = "user_name"),
@Result(property = "age", column = "user_age")
})
User getUserById(int id);
В этом примере мы используем @Results
аннотации для определения отношений сопоставления результирующего набора, где @Result
аннотации используются для определения отношений сопоставления каждого атрибута. В @Result
аннотации мы можем использовать property
атрибут для указания имени атрибута объекта Java и использовать column
атрибут для указания имени столбца в инструкции SQL.
Помимо @Result
аннотаций, MyBatis также предоставляет другие аннотации, например @Param
аннотации для указания имен параметров метода, @Options
аннотации для указания вариантов выполнения операторов SQL и т. д.