Недавно друг спросил меня, имеет ли Mybatis функцию автоматического создания структур таблиц, потому что они использовались для использования Hibernate раньше. Естественно, они считают, что путем настройки ставок или написания картирования файлов на классах объектов таблица может быть автоматически создана после запуска системы.
Я могу только с сожалением сказать ему, что у Mybatis нет этой функции. Видя его безразличие, я могу только утешить его, что даже если такая функция нет, мы можем развить его сами ~~
Итак, есть следующая система, которая была открыта, и вы можете спуститься и посмотреть ~~
Mybatis_buildtable_v0.2
https://git.oschina.net/sunchenbin/mybatis_buildtable_v0.2.git
Архитектура проекта использует Springmvc+Mybatis+Maven. Эта функция состоит в том, чтобы создать таблицы и изменять структуры таблицы путем настройки аннотаций модели. В настоящее время поддерживается только MySQL. Потому что основное внимание уделяется подчеркнуту функции автоматического создания таблицы Mybatis, поэтому нет необходимости слишком много думать о структуре.
Спецификация использования:
Основной код находится в модельном магазине-репо
1. Объект sysmysqlcolumns.java настроен с типом данных MySQL. Чем больше типов настроены здесь, тем больше типов вы можете использовать при создании таблицы.
2.lengthcount.java - это пользовательская аннотация, используемая для обозначения типа данных, настроенного в sysmysqlcolumns.java. Чтобы отметить этот тип, требуется несколько длин, таких как DateTime/Varchar (1)/Decimal (5,2), соответственно, 0, 1, 2 соответственно.
3.column.java также является индивидуальной аннотацией, используемой для отметки полей в модели. В качестве основы для создания таблиц, если не отмечены, они не будут отсканированы. Существует несколько атрибутов, используемых для установки настройки свойств, таких как имя поля, тип поля, длину и т. Д. Для получения подробной информации, пожалуйста, обратитесь к комментариям к коду.
4.table.java также является пользовательской аннотацией, используемой для маркировки объекта модели, и имеет имя атрибута, которое используется для установки имени таблицы после того, как модель генерирует таблицу. Если аннотация не установлена, модель не будет отсканирована.
ОК, после запуска системы она автоматически вызовет метод CreateMySQLTable () SysMySQLCreateTableManagerImpl.java. Правильно, это основной метод, который отвечает за создание, удаление и изменение таблиц.
модель-магазин-фронтал/ресурсы/config/autocreateatable.properties
Вы обнаружите, что есть такой файл конфигурации, который имеет две конфигурации
1.mybatis.table.auto = update
2.mybatis.model.pack = com.sunchenbin.store.model
Эта система предоставляет два режима:
1. Когда mybatis.table.auto = create, после запуска системы все таблицы будут удалены, а затем таблица будет восстановлена в соответствии со структурой, настроенной в модели. Эта операция разрушит исходные данные.
2. Когда mybatis.table.auto = update, система автоматически определит, какие таблицы созданы вновь, какие поля необходимо изменить в типе, какие поля необходимо удалить, и какие поля необходимо добавить. Эта операция не разрушит исходные данные.
3.mybatis.model.pack Эта конфигурация используется для настройки имени пакета объекта, который будет отсканирован для создания таблицы.
Система настроена на начало использования Maven. Интернет зависит от репо, фронта и мобильных устройств, зависящих от Интернета. Поэтому, чтобы запустить Frontend и Mobile, вы должны сначала установить Интернет и репо
Что касается того, как начать проект с Maven ... Я не скажу больше.
Выше приведено полное описание автоматического создания таблиц Mybatis и обновления структуры таблицы, введенной вам редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!