Проект представляет собой приложение для управления зарядными станциями, предназначенное для совместного использования зарядных станций.
Адрес проекта:
Интерфейс документа:
Пароль доступа: 123456.
Роли в проекте:
супер-администратор;
региональный агент;
обычный пользователь.
Используемые технологии:
Spring Boot: 2.1.4.RELEASE;
Spring Cloud: Greenwich.SR1;
MyBatis-Plus: 3.0.7.1;
Redis: 5.0.5 (для разработки — 3.0.503);
MySQL: 5.5;
JDK: 1.8.
Структура каталогов проекта:
common-server: различные пакеты инструментов и общие настройки;
doc: документы проекта;
db: файлы базы данных:
data.sql: содержит файл с базовыми данными;
ini_data.sql: скрипт SQL для инициализации базы данных при запуске проекта;
com_config_area.sql: используется для трёх уровней адресов привязки, но не поддерживается в небольших программах, поэтому проект использует только один уровень;
img: изображения для документации;
log: каталог журналов;
page: страницы управления бэкендом;
suda-common-constant: общие константы;
suda-common-entity: сущности проекта;
suda-platform-web: слои управления, бизнес-логики и данных проекта.
Описание конфигурационных файлов проекта:
Порт сервера, порт Redis и порт базы данных datasource.
Конфигурация WeChat Mini Program и конфигурация wx:pay, а также файл конфигурации my-configuration.
Файл конфигурации my-configuration:
* uploadPath: путь хранения изображений на сервере;
* imagePath: путь доступа к изображениям;
* staticPageUrl: конфигурация каталога статических ресурсов на сервере.
Проверка прав доступа на основе перехватчика:
Используемые технологии: Redis + JWT.
Метод реализации:
после входа пользователя генерируется токен JWT, который каждый раз отличается;
токен сохраняется в Redis с установленным временем ожидания;
после успешного входа пользователя возвращается токен переднего плана;
при каждом запросе токен помещается в заголовок запроса;
каждый запрос проходит через перехватчик для проверки токена;
состояние входа:
без входа: перехватчик не может получить информацию о токене;
вход с одного устройства: если информация о токене в заголовке запроса не совпадает с информацией в Redis, это означает, что пользователь вошёл в систему с другого места;
тайм-аут входа: если информация о токене не найдена в Redis, то пользователь превысил время ожидания входа.
Настройка серверной среды:
перейдите на сайт https://oneinstack.com/, чтобы создать собственный пакет установки (база данных, Redis, JDK, Nginx);
выполните команду на сервере:
wget -c http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --nginx_option 1 --jdk_option 2 --db_option 4 --dbinstallmethod 1 --dbrootpwd oneinstack --redis --reboot
Создайте базу данных.
Создайте каталог проекта на сервере:
каталог статических ресурсов: /home/project/staticFile;
каталог конфигурационных файлов: /home/project/config;
каталог журналов: /home/project/log;
файл запуска: поместите файл оболочки в каталоге doc в /home/project/. Измените имя файла на charge.sh и сделайте его исполняемым с помощью команды chmod 777 charge.sh. Измените имя запускаемого файла в скрипте на charge-1.0.jar.
Упакуйте проект в jar-файл с именем charge-1.0.jar и загрузите его в каталог /home/project/. Запустите проект с помощью команды ./charge.sh restart. Просмотрите журнал в реальном времени с помощью команды tail -f ./log/catalina.out.
Загрузите файлы переднего плана в каталог сервера /home/project/staticFile/. Если вы создадите каталог для административной панели в этом каталоге, например admin, поместите файлы переднего плана в этот каталог. Доступ к странице можно получить по адресу http://ip:порт/admin/index.html. Если index.html находится в каталоге /home/project/staticFile/, доступ к проекту можно получить по адресу http://ip:порт/index.html. В каталоге /home/project/staticFile/ можно создать несколько каталогов для разных проектов. Доступ к этим проектам можно получить по адресам http://ip:порт/[имя каталога]/index.html.
Используйте Nginx для пересылки запросов к проекту. Настройте HTTPS в Nginx.
Примечание:
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )