java 脚手架_肝了一个半月的 Java 项目快速开发脚手架:Chewing
前言
閑來無事,整一個 Java 項目快速開發腳手架。
正文 一、簡介
Chewing 是一個簡單的 Java 項目快速開發腳手架。既適合需要開發小型項目的小伙伴使用,也適合剛入門的新手用來學習一些常用的技術。
二、源碼
源碼地址:https://github.com/jingqueyimu/chewing。
三、核心技術 1、后端SpringBoot:Web 應用框架。
MyBatis:持久層框架。
MySQL:關系型數據庫。
Redis:緩存數據庫。
RabbitMQ:消息隊列中間件。2、前端Thymeleaf:模板引擎。
Bootstrap:UI 框架。四、環境部署 1、準備工作JDK 1.8
MySQL 5.7
Maven 3.x
Redis
RabbitMQ2、必要配置application.properties 配置文件:數據庫、Redis、RabbitMQ、郵箱等配置。
config/myconfig.properties 配置文件:系統相關的自定義配置。五、項目介紹 1、文件結構src/main/java |— com.jingqueyimu |— annotation // 注解 |— aspect // 切面 |— config // 配置 |— constant // 常量 |— context // 上下文 |— controller // 控制層 |— exception // 異常 |— factory // 工廠 |— filter // 過濾器 |— handler // 處理器 |— init // 初始化 |— interceptor // 攔截器 |— mapper // 持久層 |— model // 數據模型 |— mq // 消息隊列 |— schedule // 調度 |— service // 服務層 |— util // 工具 MyAppcation.java // 應用啟動類src/main/resources |— config // 配置文件 |— mapper // 映射文件 |— static // 靜態文件 |— templates // 頁面文件 application.properties // 應用配置文件 quartz.properties // 調度配置文件2、代碼說明 (1)路由/api/xxx:需要用戶登錄。
/console/xxx:需要管理員登錄,登錄、登出等部分接口除外。(2)接口規范頁面請求:GET、URL 參數。
接口請求:POST、JSON 參數。(3)數據庫初始化初始化配置文件:config/dbinit.json。
配置初始化標識及 SQL 語句。
初始化示例:
[ { "initKey": "site_config_20210110", "sqls": [ "INSERT INTO t_site_config (id, code, name, content, description, public_flag, gmt_create) VALUES(NULL, 'site_record_no', '網站備案號', '備案號', '網站備案號', true, NOW());" ] }](4)文件上傳下載上傳單個文件:/file/upload。
上傳多個文件:/file/uploads。
下載文件:/file/download。(5)Excel 導入導出Excel 導入導出方法:ExcelUtil.importExcel()、ExcelUtil.exportExcel()。
Excel 導入導出處理器接口:IExcelImportHandler、IExcelExportHandler。
導入示例:
String msg = null;try { String[] keys = new String[] {"username", "realName", "mobile"}; msg = ExcelUtil.importExcel(file.getInputStream(), keys, new IExcelImportHandler() { @Override public void handle(JSONObject data) { if (StringUtils.isBlank(data.getString("username"))) { throw new RuntimeException("用戶名不能為空"); } if (StringUtils.isBlank(data.getString("mobile"))) { throw new RuntimeException("手機號不能為空"); } // 業務處理 } }); log.info(msg);} catch (IOException e) { e.printStackTrace();}
導出示例:
ServletOutputStream os = null;try { String fileName = "用戶列表"; ... // 用戶列表數據 List list = userService.list(params); // 表頭 String[] headers = new String[] {"編號 ", "用戶名", "姓名", "手機號", "郵箱", "注冊方式", "注冊時間", "上次登錄時間", "是否VIP"}; os = response.getOutputStream(); // 導出 ExcelUtil.exportExcel(fileName, list, headers, os, new IExcelExportHandler() { @Override public List
總結
以上是生活随笔為你收集整理的java 脚手架_肝了一个半月的 Java 项目快速开发脚手架:Chewing的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: chm文件打开,有目录没有内容
- 下一篇: Java 中removelinked_J