Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 13726|Ответ: 0

[Источник] заметки mybatis аннотируются с помощью интерфейса Mapper

[Скопировать ссылку]
Опубликовано 16.01.2019 13:00:53 | | | |
1. Методы отображения, поддерживаемые mybatis

Поддерживаемые mybatis методы отображения включают mapper.xml файлы на основе xml и классы интерфейса mapper на основе Java.
Существует четыре основных аннотации методов интерфейса: @Insert, @Delete, @Update и @Select

2. Как отображить с помощью аннотаций интерфейса

Следующие эксперименты основаны на t_user таблицах и структурированы следующим образом:

2.1 Увеличение @Insert

Существует в основном три схемы для этого: ручное обозначение (прикладной уровень), самодобавляемый первичный ключ (одинарная таблица уровня данных) и выбор первичного ключа (множественные таблицы на уровне данных).

1. Вручную указать первичный ключ на уровне приложений

Ручной метод не рассматривает первичный ключ по-разному и присваивает первичному ключу значение, когда прикладной слой генерирует объект перед вставкой, что ничем не отличается от обычного поля при вставке.

В приведённом выше примере mybatis не знает, какое поле является первичным ключом, а id — первичным ключом, но оно не рассматривается иначе.

Обратите внимание, что метод #{username} — использовать User в качестве текущего контекста, чтобы при доступе к атрибутам пользователя можно было напрямую записать имя атрибута.

2. Таблица добавляет первичный ключ

Самоувеличивающийся первичный ключ соответствует заполнению первичного ключа в конфигурации XML, что приводит простой пример:

Используйте Option, чтобы соответствовать свойствам селективного набора тегов в XML, userGeneratordKeys — чтобы указать необходимость использовать самоувеличивающийся первичный ключ, и keyProperty — чтобы указать название поля первичного ключа.

Самоувеличивающийся первичный ключ использует функции самоувеличения базы данных.

3. Выберите первичный ключ

Выберите первичный ключ для генерации значения из слоя данных и используйте это значение как значение первичного ключа.


2.2 Удалить @Delete

При удалении просто запишите условие в значении @Delete аннотации и верните int-тип как количество успешно удаленных записей.


2.3 Изменение @Update

При изменении просто запишите SQL-оператор в значение @Update и верните int-тип, указывающий количество изменённых строк записи.


2.4 Проверьте @Select

Запросы немного сложнее, потому что он включает в себя установку найденных полей объекта, и обычно существует три способа:

1. В SQL-команде вручную укажите псевдоним, чтобы он соответствовал

При написании SQL-операторов вручную назначайте псевдоним каждому полю для соответствия атрибутам объекта, что подходит для ситуаций, когда имя поля таблицы и атрибута объекта сильно различаются и полей таблицы немного.


2. Используйте автоматическое преобразование подчёркивания горба от mybatis

В mybatis есть опция mapUnderscoreToCamelCase, которая применяется, когда имя поля в таблице совпадает с именем атрибута объекта, но с разницей в написании подчёркивания и горба.

После настройки mapUnderscoreToCamelCase mybatis попытается преобразовать подчёркивание в горб при установке данных из ResultSet на объект, а затем сшить набор спереди, чтобы задать атрибуты.

Включите конверсию:




Затем запросите:

Смотря на напечатанный результат, birth_day атрибуты заполняются в объекте:



3. Используйте ResultMap

Если имя поля таблицы и имя атрибута объекта сильно различаются, а в таблице много полей, для адаптации следует использовать ResultMap.


@Results соответствует ResultMap в XML, и вы можете указать для него идентификатор, который можно использовать для ссылки в других местах, например, для ссылки на вышеуказанные Результаты:

Используйте @ResultMap для ссылки на существующую ResultMap, которую можно определить на Java с помощью @Results аннотаций или в XML с помощью тегов resultMap.

2.5 Пример кода

User.java


UserMapper.java

3. Краткое содержание

Преимущества использования аннотаций интерфейса:

1. Писать операторы отображения удобнее и быстрее

Недостатки использования аннотаций интерфейсов:

1. Он подходит для относительно простых конфигураций, и интерфейс нельзя реализовать, когда он слишком сложный.

2. Не могу использовать динамический SQL, немного безвкусно.






Предыдущий:Призыв Demon Spirit V4.1.8 используется сдержанно
Следующий:Инструмент обнаружения оригинальности статей Kirin v2.0 (удалить контактную информацию автора)
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com