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

OSCHINA-MIRROR/xcOschina-freeter-admin

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

Фронт-бэкенд система управления, корпоративный фреймворк быстрого разработки

Технологический выбор

  • Регистрационный центр: Zookeeper
  • Распределенная система управления: Dubbo
  • Основной фреймворк: Spring Boot
  • Фреймворк управления доступом: Apache Shiro
  • Шаблонный движок: Freemarker
  • Фреймворк для работы с базами данных: MyBatis и MyBatis-plus
  • Подсистема пула соединений: Alibaba Druid
  • Кэширующая система: J2cache, Redis
  • Система логирования: Logback
  • Инструментальные классы: Apache Commons, HuTools
  • Фреймворк представлений: Spring MVC
  • Таймер: Quartz
  • Подсистема пула соединений: Druid
  • Система логирования: Logback
  • Интерактивное взаимодействие с пользователем: Layui
  • Компонент выпадающего списка: Bootstrap-select
  • Компонент загрузки файлов: Bootstrap File Input
  • Живая перезагрузка: JRebel
  • Фреймворк валидации: Hibernate-validator

Основные характеристики- Цель системы Фронт: приближение к искусственному интеллекту.

  • Модуль интернет-магазина: активно развивается, включает множество модулей интернет-магазина.
  • Супер-генератор кода: позволяет автоматически генерировать код в IDE, таких как eclipse и IntelliJ IDEA.
  • Использование J2cache: двухуровневая кэширующая система, используемая в проекте OSChina.
  • Гибкое управление правами доступа: позволяет контролировать права доступа на уровне страниц или кнопок, удовлетворяя большинство требований.
  • Полная система управления отделами и прав доступа к данным: реализована через аннотации.
  • Полная защита от XSS-атак: поддерживает белый список фильтров, полностью исключая XSS-атаки.
  • Поддержка распределенной системы: сессии хранятся в Redis.
  • Дружественная структура кода и комментарии: облегчают чтение и повторное использование.
  • Использование Quartz: позволяет динамически добавлять, изменять, удалять, приостанавливать, возобновлять задачи и просматривать их логи.
  • Интерактивное взаимодействие с пользователем: использование layui и vue.js значительно повышает эффективность разработки.
  • Поддержка Swagger: облегчает создание документации API.- Супер-генератор кода: позволяет генерировать аннотации валидации hibernate-validator, аннотации Swagger UI, SQL для постраничного запроса из нескольких таблиц, код модуля backend (контроллеры до представлений), код модуля мобильной версии (API). Необходимо написать только около 30% кода, остальной код генерируется системой, что позволяет быстро завершить разработку. Поддерживает генерацию кода для MySQL и Oracle.

Структура проекта

freeter-coding
freeter-admin (управление backend)
freeter-common (общие модули)
freeter-good (модуль товаров)
freeter-user (модуль пользователей)
freeter-job (модуль задач)
freeter-api (модуль API для мобильной версии)
freeter-generator (независимый модуль генерации кода)

Модуль магазина

Каналы: можно рассматривать как первичные категории, специальные категории, под которыми могут быть как категории, так и видео, изображения и т.д.

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

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

Основные функции товаров полностью завершены.

Управление пользователями

Программные требования

  • JDK 1.8
  • MySQL 5.5+
  • Tomcat 8+
  • Maven 3.0+

Локальная установка1. Скачайте проект https://gitee.com/xcOschina/freeter-admin.git с помощью git, затем импортируйте его в IDE.

  1. В Eclipse выберите File -> Import... -> Maven -> Existing Maven Projects и выберите корневую папку проекта.

  2. IDE автоматически загрузит зависимости Maven и скомпилирует проект. Если возникнут ошибки, выполните update project... и проверьте настройки JDK.

  3. Выполните файл doc/freeter.sql для инициализации данных [в зависимости от потребностей импортируйте структуру таблиц и данные].

  4. В конце измените параметры подключения к базе данных. Файл конфигурации находится в src/main/resources/application.yml.

  5. j2cache: config-location: /cache/j2cache-no.properties
    open-spring-cache: true j2cache-no.properties — это отключение кэширования. j2cache-redis.properties — использование Redis для вторичного кэширования. j2cache-caffeine.properties — использование Caffeine для первичного кэширования.

  6. В папке freeter-coding выполните mvn clean install.

  7. Как запустить проект

  • Запустите AdminApplication.java в Eclipse или IDEA, чтобы запустить проект [freeter-admin].
  • Адрес для доступа к freeter-admin: http://localhost:8080/freeter-admin/index.html
  • Логин/пароль: admin/admin

Демонстрация проекта


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

  • Разработка: https://gitee.com/xcOschina/freeter-admin.git
  • Официальный бесплатный QQ-чат: 806251058 飞特开源技术交流
  • Репозиторий на gitee: https://gitee.com/xcOschina/freeter-admin.git![Введите описание изображения]
  • Гитхаб репозиторий: временно не рассматривается, поддерживаем китайские аналоги
  • Если вы хотите следить за последними новостями проекта, нажмите Watch и Star, это также является лучшей поддержкой для проекта
  • Для технических обсуждений, вторичного развития и других консультаций, вопросов и предложений, пожалуйста, перейдите в официальный бесплатный QQ-чат, я буду отвечать и отвечать в первую очередь!
  • Используйте QR-код WeChat для подписки на [Flyte Open Source], чтобы получить последние новости проекта и уведомления о обновлениях, пока функция не открыта
  • Нажмите ссылку, чтобы присоединиться к чату [Flyte Open Source Technical Exchange]: https://jq.qq.com/?_wv=1027&k=5DJ0G9i


Код генератор: - Проектная структура введите описание изображения здесь


- Использование аннотаций для реализации поиска по шаблону и поддержки нескольких таблиц введите описание изображения здесь


Сущности, сгенерированные автоматически для модуля backend:

@TableName("cn_good") 
@ApiModel(value = "Good")
public class GoodEntity<T> implements Serializable {

private static final long serialVersionUID = 1L;


public GoodEntity() {
	
}

public GoodEntity(T t) {
	try {
		BeanUtils.copyProperties(this, t);
	} catch (IllegalAccessException | InvocationTargetException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
}

/**
 * ID товара
 */

@TableId 					
@ApiModelProperty(value = "ID товара",hidden = true)
private Integer goodId;

/**
 * Название товара
 */
			
@NotBlank (message = "Название товара не может быть пустым") 			
@ApiModelProperty(value = "Название товара")
private String goodName;

Mapper сгенерирует автоматически SQL-запросы для связей между таблицами:

<select id="selectListView"

resultType="com.freeter.modules.pc.entity.view.StudentView">

SELECT student.* FROM t_student student
left join t_professional professional on `

professional.professional_id = student.professional_id left join t_school school on school.school_id = student.school_id

    <where> 1=1 ${ew.sqlSegment}</where>
</select>`

Особая благодарность:

baomidou / mybatis-plus

红薯 / J2Cache

Пожертвование

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

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

Введение

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

Обновления

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

Участники

все

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

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