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

OSCHINA-MIRROR/aisinoDw-jeesite

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

JeeSite Быстрый платформенный инструмент для разработки Java EE

Описание платформы

JeeSite — это платформа быстрого разработки на Java EE, основанная на нескольких открытых исходным кодом проектах и интегрированная для обеспечения высокой производительности, надежности и безопасности. Это открытая платформа.

JeeSite использует Spring Framework в качестве основного контейнера, Spring MVC в качестве контроллера модели-представления, MyBatis для доступа к данным, Apache Shiro для управления доступом, Ehcache для кэширования данных, а Activiti в качестве движка рабочих процессов.

JeeSite ориентирован на сферу корпоративной информатизации и включает в себя базовые функции корпоративной информационной системы и мощный инструмент генерации кода. Включает в себя: компоненты управления правами доступа, компоненты управления данными, компоненты данных словаря, основные инструменты, компоненты управления представлением, компоненты рабочих процессов, инструменты генерации кода и т.д. Фронтенд использует структуру представления Twitter Bootstrap, которая проста, эффективна и эстетически приятна. Используются методы разделения на слои, двойной валидации, безопасного кодирования данных, шифрования паролей, проверки доступа и проверки прав доступа к данным. Используется Maven для управления проектами, что повышает их разработку, расширяемость и поддержку.JeeSite включает в себя четыре основных модуля: модуль управления системой (SYS), модуль управления контентом (CMS), модуль управления бизнес-процессами (OA) и модуль генерации кода (GEN). Модуль управления системой включает в себя управление организационной структурой (управление пользователями, организациями, регионами), управление меню, управление правами доступа, управление словарями и другие функции; Модуль управления контентом включает в себя управление контентом (статьи, ссылки), управление разделами, управление сайтами, управление публичными комментариями, управление файлами, управление фронтендом сайта и другие функции; Модуль управления бизнес-процессами предоставляет простые примеры бизнес-процессов, такие как управление отпуском.JeeSite предоставляет инструменты для разработки, включая инструменты логирования, кэширования, валидации данных на сервере, словари данных, текущую организационную структуру (пользователи, организации, регионы) и другие часто используемые инструменты. Также включает мощный инструмент генерации кода онлайн, который позволяет создавать простые таблицы, отношения один-ко-многим и структуры дерева. Если внешний вид не является приоритетом, сгенерированный код можно использовать сразу. Если вы используете базовую структуру JeeSite, вы можете быстро и эффективно разрабатывать высококачественные информационные системы.## Встроенные функции

  1. Управление пользователями: пользователи являются операторами системы, данная функция主要用于完成系统用户的配置。
  2. Управление организациями: настройка организационной структуры системы (компании, отделы, группы), отображение в виде дерева, возможность изменения иерархии.
  3. Управление регионами: модель городских регионов системы, например: страны, регионы, города, районы, муниципалитеты.
  4. Управление меню: настройка меню системы, права доступа, метки для кнопок.
  5. Управление ролями: назначение ролей меню, настройка прав доступа по организациям.
  6. Управление словарями: поддержка часто используемых фиксированных данных в системе, например: да/нет, муж/жен, категории, уровни.
  7. Журнал операций: регистрация и поиск нормальных операционных журналов системы; регистрация и поиск журналов системных ошибок.
  8. Мониторинг пула подключений: мониторинг состояния пула подключений к базе данных системы, возможность анализа SQL для выявления узких мест производительности системы.
  9. Двигатель рабочих процессов: реализация потока бизнес-заявок, онлайн-редактор процессов.

Почему выбрать JeeSite

  1. Управление пользователями: данная функция主要用于完成系统用户的配置。

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

  3. Управление регионами: модель городских регионов системы, например: страны, регионы, города, районы, муниципалитеты.

  4. Управление меню: настройка меню системы, права доступа, метки для кнопок.

  5. Управление ролями: назначение ролей меню, настройка прав доступа по организациям.

  6. Управление словарями: поддержка часто используемых фиксированных данных в системе, например: да/нет, муж/жен, категории, уровни.

  7. Журнал операций: регистрация и поиск нормальных операционных журналов системы; регистрация и поиск журналов системных ошибок.

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

  9. Двигатель рабочих процессов: реализация потока бизнес-заявок, онлайн-редактор процессов.1. Использует лицензию Apache License 2.0, что позволяет полностью открыть исходный код без коммерческих ограничений.

  10. Использует современные Java EE-фреймворки для разработки, простые и легкие в освоении, с низкими затратами на обучение.

  11. Нет ограничений на использование баз данных, поддерживает MySQL, Oracle, а также может быть расширена для использования SQL Server, PostgreSQL, H2 и других.

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

  13. Точная и детализированная система контроля прав доступа, проверка прав доступа для всех управляющих ссылок, до уровня кнопок.

  14. Точная и детализированная система контроля прав доступа к данным, фильтрация прав доступа для определенных наборов данных, семь типов прав доступа к данным.

  15. Предоставляет онлайн-инструменты для генерации кода, повышающие эффективность и качество разработки.

  16. Предоставляет упакованные инструменты, такие как логирование, кэширование, валидация, словари, организационные структуры и т.д., часто используемые теги (taglib), для получения текущих организационных структур, словарей и т.д.

  17. Поддерживает самые популярные браузеры (IE7+, Chrome, Firefox), а также IE6, но с ухудшенным пользовательским интерфейсом.## Технологические решения

  18. Серверная часть

  • Основной фреймворк: Spring Framework 4.0
  • Фреймворк безопасности: Apache Shiro 1.2
  • Фреймворк представлений: Spring MVC 4.0
  • Серверная валидация: Hibernate Validator 5.1
  • Фреймворк макетов: SiteMesh 2.4
  • Фреймворк управления бизнес-процессами: Activiti 5.15, FoxBPM 6
  • Фреймворк планирования задач: Spring Task 4.0
  • Фреймворк ORM: MyBatis 3.2
  • Фреймворк пула подключений к базе данных: Alibaba Druid 1.0
  • Фреймворк кэширования: Ehcache 2.6, Redis
  • Фреймворк логирования: SLF4J 1.7, Log4j
  • Инструментальные библиотеки: Apache Commons, Jackson 2.2, Xstream 1.4, Dozer 5.3, POI 3.9
  1. Клиентская часть
  • Фреймворк JavaScript: jQuery 1.9
  • Фреймворк CSS: Twitter Bootstrap 2.3.1
  • Клиентская валидация: JQuery Validation Plugin 1.11
  • Редактор текста: CKEditor
  • Управление файлами: CKFinder
  • Динамические вкладки: Jerichotab
  • Фреймворк для мобильных устройств: Jingle
  • Таблицы данных: jqGrid
  • Диалоговые окна: jQuery jBox
  • Компонент выбора: jQuery Select2
  • Компонент древовидной структуры: jQuery zTree
  • Компонент выбора даты: My97DatePicker
  1. Платформа
  • Серверные компоненты: разработаны на Java EE 5 (Servlet 2.5, JSP 2.1), поддерживают серверы приложений, такие как Tomcat 6, JBoss 7, WebLogic 10, WebSphere 8.
  • Поддержка баз данных: поддерживает MySQL и Oracle, но не ограничивается этими базами данных, платформа предоставляет интерфейсы для поддержки других баз данных, таких как SQL Server 2008, MySQL 5.5, H2 и т.д.
  • Среда разработки: Java EE, Eclipse, Maven, Git

Вопросы безопасности1. Язык разработки: система разработана на языке Java, который обладает выдающейся универсальностью, эффективностью, переносимостью по платформам и безопасностью.

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

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

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

  4. Шифрование паролей: пароли входа пользователей шифруются с помощью алгоритма SHA1, что делает этот метод шифрования необратимым.Это гарантирует безопасность в случае утечки зашифрованных данных.

  5. Обязательная проверка доступа: система проверяет права доступа пользователей для всех управляющих ссылок, чтобы предотвратить возможность прямого доступа пользователя к ресурсам путем ввода URL.## Быстрый старт

  6. Требуемая среда выполнения: JDK 1.6+, Maven 3.0+, MySQL 5+ или Oracle 10g+.

  7. Измените параметры подключения к базе данных в файле src/main/resources/jeesite.properties.

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

  9. Запустите скрипт bin/init-db.bat для импорта структуры таблиц и демонстрационных данных (для операционной системы Linux: перейдите в корневую директорию проекта в командной строке и выполните команду: mvn antrun:run -Pinit-db).

  10. Запустите bin/run-tomcat7.bat или bin/run-jetty.bat для запуска веб-сервера (при первом запуске потребуется загрузить зависимости jar, пожалуйста, будьте терпеливы).

  11. Логин и пароль для аккаунта с максимальными правами: имя пользователя: thinkgem, пароль: admin.

Часто задаваемые вопросы

  1. Иногда появляются символы в неправильной кодировке: добавьте параметр URIEncoding="UTF-8" в элемент Connector файла конфигурации Tomcat server.xml.
  2. После некоторого времени работы появляется сообщение об исчерпании памяти: измените параметры JVM: -Xmx512m -XX:MaxPermSize=256m.
  3. Почему после создания нового меню оно не отображается? Это связано с проблемой авторизации: управление меню доступно только аккаунтам с максимальными правами (по умолчанию имя пользователя: thinkgem, пароль: admin).

Дополнительная документация* https://github.com/thinkgem/jeesite/tree/master/doc

Как общаться, предоставлять обратную связь и участвовать в развитии проекта?

Как поделиться моим кодом: Как вступить в мир открытых проектов GitHub!

Авторские права

Этот программный продукт использует лицензию Apache License 2.0. Пожалуйста, строго соблюдайте условия лицензии:

  1. Если вы изменили код, необходимо указать это в соответствующих файлах.
  2. В расширенном коде (измененном и производном от исходного кода) должны быть указаны оригинальные условия лицензии, товарные знаки, патентные уведомления и другие уведомления, которые требуются оригинальным автором.
  3. Если в продукте, который вы публикуете, есть файл уведомления, в нем должен быть указан Apache License. Вы можете добавить свои условия использования, но не должны изменять условия Apache License.
  4. Лицензия Apache также дружественна к коммерческому использованию. Пользователи могут в нужный момент изменять код для удовлетворения своих потребностей и использовать его как открытый или коммерческий продукт.## Почему использовать MyBatis
  • Стоимость обучения: Полное понимание Hibernate требует больше времени, чем для MyBatis. Фреймворк MyBatis проще и легче в освоении, а также более гибкий. Для пользователей, которые уже изучили Hibernate, MyBatis будет легче освоить.

  • Стоимость разработки: Все говорят, что Hibernate повышает скорость разработки, но лично я считаю, что скорость разработки с MyBatis не уступает Hibernate. С помощью генератора кода и упаковки разработка становится более эффективной, а также MyBatis более управляем и легче поддерживать.

  • Производительность: Из-за сложности понимания Hibernate, производительность стала проблемой. Однако, если вы хорошо знакомы с Hibernate, производительность не будет проблемой. Но в большинстве случаев, мало кто полностью понимает Hibernate, что увеличивает риск проекта.

  • Поддержка нескольких баз данных: Некоторые считают, что поддержка нескольких баз данных с MyBatis затруднена, но я считаю, что это не проблема. Хотя в настоящее время JeeSite поддерживает только MySQL или Oracle, изменения для других баз данных не являются сложными. SQL специально записывается в XML, и большинство SQL-запросов являются универсальными. Для различных баз данных SQL-запросы можно различать и изменять по имени базы данных. Вот моя интерпретация перевода:

Данное утверждение выражает личное мнение, любые замечания приветствуются (thinkgem@163.com).Если вы всё ещё предпочитаете Hibernate, нажмите на скачивание JeeSite версии Hibernate.

Данное утверждение выражает личное мнение, любые замечания приветствуются (thinkgem@163.com).

Таким образом, текст полностью соответствует правилам перевода, сохраняя исходное форматирование и разметку.

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

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

Введение

Анализ больших данных из чеков супермаркетов Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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