เทมเพลตระบบการจัดการแบ็กเอนด์ที่พัฒนาโดยใช้ SpringBoot + Vue
ตามที่อธิบายไว้ในกรอบงาน Zoey ฉันอยากจะพัฒนาเทมเพลตระบบการจัดการแบ็คเอนด์ของตัวเองมาโดยตลอด แต่ฉันไม่เคยสัมผัสกับระบบที่แยกส่วนหน้าและส่วนหลังออกในตอนแรก เมื่อพัฒนาส่วนหน้า ท้ายที่สุด ฉันรู้สึกทึ่งกับการเรนเดอร์ไดนามิกของสไตล์และเมนูต่างๆ ฉันรู้สึกทรมานมากกับ Spring Security เมื่อพัฒนาแบ็กเอนด์ ในช่วงเวลานี้ ฉันคิดถึงการใช้ชุดของเฟรมเวิร์กโอเพ่นซอร์สที่ยอดเยี่ยมนับครั้งไม่ถ้วน แต่ด้วยความเร่งรีบเช่นนี้ ความคิดที่จะเรียนรู้ ผลลัพธ์สุดท้ายคือฉันถูกระงับอีกครั้งโดยเฟรมเวิร์กโอเพ่นซอร์สที่ยอดเยี่ยมต่างๆ การถูบนพื้น...
หลังจากเรียนรู้จากประสบการณ์ดังกล่าว ฉันตระหนักอย่างลึกซึ้งว่าฉันควรสงบสติอารมณ์และเรียนรู้เทคโนโลยีในลักษณะที่ติดดิน ในที่สุด หลังจากช่วงระยะเวลาหนึ่ง ฉันก็แก้ไขปัญหาก่อนหน้านี้ทีละข้อและประสบความสำเร็จในการทำความเข้าใจกรอบงานโอเพ่นซอร์สที่ยอดเยี่ยม ความปรารถนาภายในของฉันในการพัฒนาชุดเทมเพลตระบบการจัดการเบื้องหลังก็แข็งแกร่งขึ้นเรื่อยๆ หากฉันมีความคิด ฉันจะทำ ทำมันซะ ในที่สุด ฉันก็พัฒนาชุดเทมเพลตระบบการจัดการแบ็กเอนด์ของตัวเองขึ้นมา
หลังจากการพัฒนาเสร็จสิ้น ฉันตระหนักดีว่าการพัฒนาและใช้งานฟังก์ชันพื้นฐานที่เกี่ยวข้องนั้นไม่เพียงพอ การจัดการกับสถานการณ์ต่างๆ ของระบบเมื่อเผชิญกับการทำงานพร้อมกันสูงและการเข้าถึงแบบหลายผู้ใช้ทำให้ฉันเข้าใจว่าฉันเพิ่งก้าวออกจาก ก้าวแรกอันยาวนาน ฉันจะเพิ่มประสิทธิภาพและทำซ้ำต่อไปในอนาคต ดาวของคุณคือแรงบันดาลใจของฉัน❤️
ที่อยู่ Github: https://github.com/Architect-Java/system-template
ที่อยู่ Gitee: https://gitee.com/dream-flight/system--template
บัญชีผู้ดูแลระบบ: ผู้ดูแลระบบ รหัสผ่าน: 123456
บัญชีทดสอบ: ทดสอบรหัสผ่าน: 1234567
โปรเจ็กต์ส่วนหน้าอยู่ในไดเร็กทอรี system-vue
โปรเจ็กต์แบ็กเอนด์อยู่ในไดเร็กทอรี system-springboot
ไฟล์ SQL คือไฟล์ system-mysql8.sql
ในไดเร็กทอรีรากซึ่งต้องใช้ MySQL8 ขึ้นไป
โครงการส่วนหน้า:
system-vue
├── public
├── api -- api请求接口目录
├── assets -- 静态资源
├── components -- 全局组件
├── constant -- 全局常量
├── filter -- 过滤器
├── icons -- svg图标
├── layout -- 布局目录
├── router -- 路由
├── store -- 全局缓存
├── styles -- scss样式目录
├── utils -- 工具目录
├── views -- 页面视图
├── App.vue -- App.vue
├── main.js -- main.js
└── permission.js -- 路由导航守卫
โครงการแบ็กเอนด์
system-springboot
├── annotation -- 自定义注解
├── aspect -- aop切面
├── config -- 配置模块
├── constant -- 静态常量模块
├── controller -- 控制器模块
├── dto -- dto模块
├── entity -- 实体类模块
├── enums -- 枚举模块
├── filters -- 过滤器模块
├── generator -- 逆向工程模块
├── handler -- 处理器模块(自定义JWT权限过滤器)
├── mapper -- 数据持久化模块
├── service -- 业务处理模块
├── util -- 工具类模块
└── vo -- vo模块
หลังจากดึงโปรเจ็กต์ไปยังพื้นที่ท้องถิ่นแล้ว เพียงเรียกใช้ไฟล์ system-mysql8.sql
ในฐานข้อมูลโดยตรง ฐานข้อมูลจะถูกสร้างขึ้นโดยอัตโนมัติ และข้อมูลจะถูกนำเข้า จากนั้นคุณจะต้องแก้ไขข้อมูลพารามิเตอร์ที่เกี่ยวข้องในคลาสการกำหนดค่าโปรเจ็กต์ จากนั้นดำเนินการวิธี npm install
ในโปรเจ็กต์ส่วนหน้าเพื่อดาวน์โหลดการขึ้นต่อกันที่สอดคล้องกับโปรเจ็กต์ส่วนหน้า และสามารถเริ่มต้นโปรเจ็กต์ได้สำเร็จ
หลังจากเริ่มต้นโครงการเรียบร้อยแล้ว ให้ป้อนบัญชีผู้ดูแลระบบ: ผู้ดูแลระบบ และรหัสผ่าน: 123456 เพื่อเข้าสู่ระบบและเข้าสู่ระบบ
ที่อยู่เอกสารอินเทอร์เฟซท้องถิ่น: http://localhost:8090/doc.html
การทำงานของตัวสร้างโค้ด: เมื่อใช้ตัวสร้างโค้ด Mybatis-Plus
คุณต้องแก้ไขพารามิเตอร์การเชื่อมต่อฐานข้อมูล รวมถึงชื่อผู้ใช้และรหัสผ่านของฐานข้อมูลในไฟล์ CodeGentrator
ในไดเร็กทอรี /src/main/java/com/zrkizzy/template/generator
ตามลำดับ มันสามารถทำงานได้สำเร็จหลังจากนั้น
หมายเหตุ: เริ่มโปรเจ็กต์แบ็คเอนด์ก่อน จากนั้นจึงโหลดโปรเจ็กต์ส่วนหน้า ข้อมูลและการกำหนดค่าจำนวนมากของโปรเจ็กต์ส่วนหน้าจะถูกโหลดแบบไดนามิกโดยส่วนหลัง
ส่วนหน้า: vue + vuex + vue-router + axios + element-ui + sass + vue-cropper + dayjs + nprogress
แบ็กเอนด์: SpringBoot + SpringSecurity + JWT + Swagger2 + MyBatisPlus + MySQL + Redis + Freemarker + FastJson + Kaptcha
เครื่องมือในการพัฒนา | บทบาทหน้าที่ |
---|---|
ความคิด | เครื่องมือพัฒนาจาวา |
นาวิแคท | เครื่องมือเชื่อมต่อ MySQL |
VSCode | เครื่องมือพัฒนา Vue |
เมดิ | เครื่องมือเชื่อมต่อ Redis |
สภาพแวดล้อมการพัฒนา | เวอร์ชัน |
---|---|
เจดีเค | 1.8 |
MySQL | 8.0.13 |
วิว | 2.6.11 |
เรดิส | 6.0.5 |
ฉันจำได้เสมอว่าโครงการเว็บแรกที่พัฒนาอย่างเต็มรูปแบบที่ฉันพัฒนาคือรางวัลและระบบการจัดการที่เป็นเลิศที่พัฒนาขึ้นสำหรับโรงเรียนในปีที่สองของฉัน ฉันยังจำได้ว่าเว็บไซต์ Layui อย่างเป็นทางการยังไม่ออฟไลน์ และ jQuery ยังคงครอบครองท้องฟ้า สำหรับมือใหม่ เทมเพลตระบบการจัดการแบ็กเอนด์นั้นค่อนข้างใช้งานง่าย หลังจากรวมตัวสร้างโค้ด Mybatis-Plus แล้ว ความยากในการพัฒนาก็ลดลงอีก เหมาะสำหรับผู้เริ่มต้นในการเรียนรู้การพัฒนาและการสืบพันธุ์ โดยส่วนตัวแล้วฉันคิดว่าความยากอยู่ที่นั้นมากกว่า การใช้งานสไตล์ส่วนหน้าและการสร้างด้วยตนเอง ฉันขอโทษสำหรับข้อบกพร่องใด ๆ ในโครงการ หากคุณมีคำถามหรือข้อเสนอแนะคุณสามารถส่งข้อความถึงฉันเป็นการส่วนตัว คุณสามารถเข้าร่วมแชทกลุ่มได้ เราสนับสนุนซึ่งกันและกัน พูดคุยร่วมกัน สร้างความก้าวหน้าร่วมกัน และให้กำลังใจซึ่งกันและกัน อื่น!