1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mhb0409-mybatis-plus-join

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

mybatis-plus-join — это плагин для mybatis plus, который позволяет работать с несколькими таблицами. Он прост в освоении: менее чем за 10 минут можно научиться использовать все его функции. Для работы с плагином достаточно знать mybatis plus (mp), а также зависимость от lombok. Плагин расширяет конструктор mp, не изменяя исходный конструктор, и не влияет на существующий проект. Можно предположить, что большинство проектов уже используют этот плагин.

mybatis-plus-join: примеры

Репозитории mybatis-plus-join:

Вопросы о плагине

  1. Что делать, если возникла ошибка? Нестабильность может быть связана с тем, что плагин не является официальным продуктом mybatis plus. Многие разработчики уже используют плагин, и проблем не возникало. Если проблема всё же возникнет, её можно описать в Issues. Автор обещает решить проблему, если у него будет время. Обычно это происходит в течение дня.
  2. Будет ли поддерживаться плагин в будущем? Автор говорит, что не бросит разработку, пока есть звёзды. Звёзды — это мотивация для автора продолжать работу над проектом.
  3. Есть ли идеи для новых функций или улучшений? Их можно предложить в Issues.
  4. Как связаться с автором? Его можно найти в маленьком приложении «Блог Ма Вэя» в WeChat.

Если вам нужно присоединиться к группе, добавьте меня в WeChat, и я приглашу вас.

В настоящее время плагин поддерживает большинство распространённых версий mybatis plus.

Maven координаты

mybatis plus: версия 3.2.0, зависимость:

 <dependency>
   <groupId>icu.mhb</groupId>
   <artifactId>mybatis-plus-join</artifactId>
   <version>1.2.0</version>
</dependency>

Последняя версия, зависимость:

 <dependency>
   <groupId>icu.mhb</groupId>
   <artifactId>mybatis-plus-join-boot-starter</artifactId>
   <version>2.0.4</version>
</dependency>

apt зависимость:

 <dependency>
   <groupId>icu.mhb</groupId>
   <artifactId>mybatis-plus-join-processor</artifactId>
   <version>2.0.4</version>
</dependency>
Mybatis-plus Mybatis-plus-join
3.2.0 1.2.0
3.3.1 - 3.42 1.0.2、1.3.4.1
3.4.3.4 - 3.5.2 1.0.3 、1.0.4、1.0.5、1.0.6、1.0.8、1.0.9、1.1.1、1.1.2、1.1.3、1.1.4、1.1.5、1.1.6、1.3.1、1.3.2、1.3.3
3.5.3 - * 1.3.3.1、1.3.4、1.3.5、1.3.5.1、1.3.6、1.3.7、1.3.8、2.0.4

Версия 2.0

Версия 2.0 поддерживает apt для генерации кода. Вы можете использовать цепочку вызовов, а QueryWrapper используется в качестве нижнего уровня. Почти все преимущества строк и лямбда-выражений включены в этот метод. Рекомендуется использовать его.

Использование предварительного просмотра

        UsersVo users = new UsersVo();
        users.setUserName("setUserName");
        users.setAgeName("setAgeName");
        UsersChain usersChain = UsersChain.create();
        UsersAgeChain ageChain = UsersAgeChain.create();

        return Joins.chain(usersChain)
                .selectAs(() -> {
                    return usersChain.userId().userName().createTime()
                                        .to(ageChain)
                                        .ageDoc().ageName().id();
                            })
                .leftJoin(ageChain._id(), usersChain._ageId())
                .joinAnd(ageChain, (w) -> w.eq(ageChain._id(1)))
                .eqIfNull(() -> {
                    return usersChain.userName(users.getUserName())
                    .userId(users.getUserId())
                    .ageId(users.getAgeId())
                    .to(ageChain)
                    .ageName(users.getAgeName())
                    .ageDoc(users.getAgeDoc());
                }).joinList(UsersVo.class);

Пример использования

List<UsersVo> list = Joins.of(Users.class)
                .leftJoin(UsersAge.class,UsersAge::getAgeId,Users::getAgeId)
  							.eq(UsersAge::getAgeName,1).end()
                .joinList(UsersVo.class);

 // 生成SQL
SELECT
	users.user_name,
	users.create_time,
	users.age_id,
	users.content_json,
	users.user_id
FROM
	users AS users
	LEFT JOIN users_age AS users_age ON users_age.id = users.age_id 
WHERE
	users_age.age_name = '1'

Документация

https://www.mhb.icu

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Java
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mhb0409-mybatis-plus-join.git
git@api.gitlife.ru:oschina-mirror/mhb0409-mybatis-plus-join.git
oschina-mirror
mhb0409-mybatis-plus-join
mhb0409-mybatis-plus-join
main