китайский | английский
Репозиторий Github | Облачный репозиторий кода | Официальный сайт | Экология среды |
Erupt Cloud [Конфигурация распределенного облака] | Erupt BI [Анализ данных] | Erupt Tenant [Мультиарендатор]
Группа связи QQ: 836044286
Erupt — это полнофункциональная платформа классов с низким уровнем кода, которая использует аннотации Java для динамического создания страниц и фоновых функций, таких как добавление, удаление, изменение, проверка и контроль разрешений.
Нулевой интерфейсный код, нулевой CURD, автоматическое создание таблиц, только один файл класса + простая конфигурация аннотаций и быстрая разработка основы управления администратором на уровне предприятия.
Высокая масштабируемость, поддержка CURD для свободного расширения @DataProxy, пользовательских источников данных, логического удаления, LDAP и OSS.
Предоставляйте комплексные решения для систем управления промежуточным и серверным уровнями предприятия, значительно сокращая цикл исследований и разработок и концентрируясь на основном бизнесе.
Прекрасно заменяет генераторы кода и разрабатывает лучшие решения для серверных систем управления.
С 2020 года он постоянно оптимизируется и обновляется. В настоящее время его используют сотни малых и средних компаний, а соответствующие приложения разрабатывают тысячи разработчиков. Сотни разработчиков участвовали в отправке предложений по функциям, а более 30 участников участвовали в отправке кода.
Автоматическое создание таблицы : структура таблицы генерируется автоматически, нет необходимости создавать таблицу вручную.
Легко начать : просто изучите основы Spring Boot.
Простота в использовании : вам нужно всего лишь понять две аннотации @Erupt и @EruptField, чтобы начать разработку.
Код краток : нужен только один файл .java
, шаблон, контроллер, сервис и dao создавать не нужно.
Мощные функции : динамическая обработка условий, логическое удаление, LDAP, пользовательская логика входа в систему, RedisSession, журнал операций и т. д.
Несколько источников данных : поддержка: MySQL, Oracle, SQL Server, PostgreSQL , H2 и даже MongoDB.
Высокая масштабируемость : поддерживает реализацию настраиваемого источника данных, настраиваемую логику входа в систему, динамическое управление разрешениями, функции жизненного цикла и настраиваемую OSS.
Большое количество компонентов : скользящий ввод, выбор времени, один ко многим , загрузка изображений, редактор кода, автозаполнение, дерево, многие ко многим , карта и другие 23 типа компонентов.
Богатое отображение : обычный текст, QR-код , ссылка, изображение, HTML, фрагмент кода, iframe, SWF и т. д.
Низкое вмешательство : почти все функции основаны на аннотациях и не влияют на другие функции Spring Boot или использование сторонних библиотек.
Разделение фронтенда и фронтенда : бекенд и фронтенд можно развернуть отдельно.
Адаптивный макет : поддерживает использование на устройствах различных характеристик, таких как ПК и мобильные телефоны.
Пользовательская страница : поддерживает пользовательскую страницу, пользовательский всплывающий слой, а также поддерживает: собственный H5/Freemarker/Thymeleaf и другие методы рендеринга.
Нулевой код внешнего интерфейса : макет внешнего интерфейса создается автоматически, и вам не нужно писать ни одной строки кода внешнего интерфейса.
Нет необходимости во вторичной разработке : просто обратитесь к пакету jar!
Гитхаб | облако кода | |
---|---|---|
Исходный код серверной части | https://github.com/erupts/erupt | https://gitee.com/erupt/erupt |
Исходный код внешнего интерфейса | https://github.com/erupts/erupt-web | https://gitee.com/erupt/erupt-web |
Пример кода | https://github.com/erupts/erupt-example | https://gitee.com/erupt/erupt-example |
Хотя в последние годы генераторы кода стали новым фаворитом серверной разработки, действительно ли это оптимальное решение для серверной разработки?
Суть генератора кода заключается в создании утомительного внешнего и внутреннего кода. После модификации сгенерированный позже код трудно объединить. Подумайте о Mybatis-Generator. Хотя это и облегчает задачу. работа, решение не самое лучшее.
В большинстве случаев при разработке серверной системы управления вам просто нужно создать общий интерфейс добавления, удаления, изменения и запроса для управления данными, аналогичный следующему:
PS: erupt поддерживает определение сложных настроек страницы, подробности см. в модуле erupt-tpl.
@ Erupt (
name = "简单的例子" ,
power = @ Power ( importable = true , export = true )
)
@ Table ( name = "t_simple" ) //数据库表名
@ Entity
public class Simple extends BaseModel {
@ EruptField (
views = @ View ( title = "文本" ),
edit = @ Edit ( title = "文本" , notNull = true , search = @ Search )
)
private String input ;
@ EruptField (
views = @ View ( title = "数值" , sortable = true ),
edit = @ Edit ( title = "数值" , search = @ Search )
)
private Float number ;
@ EruptField (
views = @ View ( title = "布尔" ),
edit = @ Edit ( title = "布尔" , search = @ Search )
)
private Boolean bool ;
@ EruptField (
views = @ View ( title = "时间" ),
edit = @ Edit ( title = "时间" , search = @ Search ( vague = true ))
)
private Date date ;
@ EruptField (
views = @ View ( title = "滑动条" ),
edit = @ Edit ( title = "滑动条" , type = EditType . SLIDER , search = @ Search ,
sliderType = @ SliderType ( max = 90 , markPoints = { 0 , 30 , 60 , 90 }, dots = true ))
)
private Integer slide ;
@ EruptField (
views = @ View ( title = "下拉选择" ),
edit = @ Edit (
search = @ Search ,
title = "下拉选择" , type = EditType . CHOICE ,
choiceType = @ ChoiceType ( fetchHandler = SqlChoiceFetchHandler . class ,
fetchHandlerParams = "select id,name from e_upms_menu"
)
)
)
private Long choice ;
}
Функциональный опыт
Хотя этот интерфейс можно грубо сделать с помощью Vue + Ant Design + SSM, если вы присмотритесь, вы обнаружите, что он имеет множество подробных функций, таких как:
Реализация всего этого требует большого количества кода только во внешнем интерфейсе, не говоря уже о внутренних интерфейсах и бизнес-логике.
Но вы можете видеть, что для использования erupt требуется всего 30 строк кода!
Нет необходимости знать Angular/React/Vue/Jquery вообще.
И не нужно знать JavaScript/HTML/CSS.
Даже не нужно знать Spring MVC/Mybatis/SQL.
Даже если вы не изучили Erupt, вы можете догадаться о роли большинства конфигураций. Вся фоновая разработка страниц может быть завершена с помощью простых конфигураций.
Это первоначальная цель создания Erupt. Для наиболее часто используемых страниц следует использовать самый простой метод. Вам даже не нужно изучать различные фреймворки и инструменты, чтобы сосредоточиться на основной деятельности.
Традиционная Spring веб-разработка | генератор кода | Акселор | Извержение | |
модель предметной области | Java-код | Java-код | XML-определение | Определение аннотации аннотации |
DTO | Java-код | генерация кода | ненужный | ненужный |
Сопоставление ORM | XML или Java-код | генерация кода | генерация кода | Определение аннотации |
доступ к данным | Интерфейс + реализация | генерация кода | генерация кода | Встроенная + реализация по требованию |
бизнес-логика | Интерфейс + реализация | Генерация кода + настройка логики | Встроенная + реализация по требованию | Встроенная реализация @DataProxy + по требованию |
Уровень представления MVC | Java-код + шаблон представления | Генерация кода + настройка логики | ненужный | ненужный |
внешний интерфейс | Больше, чем код Java | Генерация кода + настройка логики | Для обычных приложений не требуется разработка | Для обычных приложений не требуется разработка |
Эффект мобильного дисплея | |||
Загрузите последнюю версию JAR или получите ее через Maven.
<!--用户权限管理-->
< dependency >
< groupId >xyz.erupt</ groupId >
< artifactId >erupt-upms</ artifactId >
< version >LATEST-VERSION</ version >
</ dependency >
<!--接口数据安全-->
< dependency >
< groupId >xyz.erupt</ groupId >
< artifactId >erupt-security</ artifactId >
< version >LATEST-VERSION</ version >
</ dependency >
<!--后台WEB界面-->
< dependency >
< groupId >xyz.erupt</ groupId >
< artifactId >erupt-web</ artifactId >
< version >LATEST-VERSION</ version >
</ dependency >
Подробные шаги использования
erupt
├── erupt - annotation -- 核心注解声明
├── erupt - core -- 核心功能实现
├── erupt - data -- 数据实现包
├── erupt - jpa -- 关系型数据库erupt实现
└── erupt - mongodb -- mongodb数据库erupt实现
├── erupt - job -- 定时任务功能,支持动态定时任务,邮件发送,任务日志等功能
├── erupt - upms -- 用户权限管理
├── erupt - security -- 接口数据安全
├── erupt - web -- 编译后的前端页面
├── erupt - tpl -- 支持在 erupt 中自定义页面,自定义图表,自定义弹出层,模板引擎支持:FreeMarker / Thymeleaf / 原生H5 / Velocity 等
├── erupt - tpl - ui -- 在 erupt-tpl 中可使用的 UI 库
├── ant - design
├── element - ui
└── amis
├── erupt - generator -- 代码生成器,通过配置,生成 erupt 代码段
└── erupt - monitor -- 基于erupt实现的服务监控
erupt - pro
├── erupt - dataflow -- 基于erupt实现的数据流(构思中)
├── erupt - workflow -- 基于erupt实现的工作流(构思中)
├── erupt - tenant -- 基于erupt实现的SaaS云多租户(开发中,面向企业用户)
└── erupt - bi -- 通过 sql 加 js 混编实现动态报表,支持:多数据源、自定义函数、图表开发等(面向企业用户)
erupt - site -- Erupt 官方网站 https://github.com/erupts/erupt-site
erupt - web -- Erupt 前端源码 https://github.com/erupts/erupt-web
Серверная часть: Java 8, Spring Boot, ScriptEngine, SpEL, Annotation, JDBC, Reflect, JPA, Hibernate, Quartz, Gson, Lombok, POI...
Интерфейс: JavaScript, H5, MVVM, Router, Angular CLI, Angular, NG-ZORRO, NG-ALAIN, G2Plot, RxJS, TypeScript, Less...
Адрес демо: https://www.erupt.xyz/demo
Пароль учетной записи: guest / guest
Поддерживает 4 основных современных браузера, а также Internet Explorer 11+ и может работать непосредственно в средах, основанных на веб-стандартах, таких как Electron.
Край/IE | Firefox | Хром | Сафари | Опера | Электрон |
---|---|---|---|---|---|
Край 16/IE 11+ | 522 | 57 | 11 | 44 | Хром 57 |
zeta-api
: быстро создавайте API-интерфейсы и документы с помощью конфигурации XML, безопасно и эффективно, что необходимо для быстрой разработки!
Jpom
: простое и легкое онлайн-проектирование с низким уровнем вмешательства, автоматическое развертывание, ежедневная эксплуатация и обслуживание, а также программное обеспечение для мониторинга проекта.
Группа связи QQ: 836044286
Группа связи WeChat: поскольку QR-код группы WeChat действителен только в течение 7 дней, подпишитесь на официальную общедоступную учетную запись Erupt (EruptGuide), чтобы получить последнюю версию QR-кода группы.
Сервер, доменное имя, место, рабочая сила и другие затраты на эту структуру были оплачены и поддержаны самим автором. Открытый исходный код - это непросто, но чашка кофе - это еще и дело любви.
Перейти к пожертвованию
Репозиторий Github | Облачный репозиторий кода | Официальный сайт | Документация по использованию |
Автор: YuePeng / [email protected]