share

Instructor

  • 4.9 Average rating
  • 2 Courses
Instructor: Colin

Hi! I'm Colin, with extensive full-stack development experience, having worked at international companies. I'm passionate about sharing in the developer community, particularly regarding Domain-Driven Design, which I believe enhances software maintainability and scalability. Looking forward to growing with more peers and driving industry progress.

What Will I Learn?

  • The engineering approach to software development and cultivating related habits.
  • Common design patterns used in software architecture.
  • Three-tier architecture based on Spring Boot framework.
  • Authorization control implemented using Spring Security.
  • Front-end development of management systems with Vue.js and ElementUI components.

Description

  • This full-stack development course is tailored for learners aiming to expand their full-stack capabilities and delve into permission management systems.
  • Covers the entire process from foundational architecture setup to front-end interaction design.
  • Utilizes core programming languages such as Java, SQL, and JavaScript.
  • Provides an in-depth understanding of popular front-end and back-end frameworks like Spring Boot and Vue.js.
  • Guides students through the hands-on construction of a universal permission management system based on RBAC (Role-Based Access Control).
  • Teaches how to establish a robust three-layer architecture using Spring Boot.
  • Delves into leveraging Spring Security for meticulous and efficient authorization controls.
  • Focuses on front-end development with Vue.js and its associated ecosystem, particularly the ElementUI component library.
  • Emphasizes the philosophy and practices of engineering-driven development, including efficient configuration and use of IDEs like IntelliJ IDEA and VS Code.
  • Introduces fundamental concepts and practices of design patterns to enhance code reusability and maintainability.
  • Places significant emphasis on practical exercises and project experience accumulation.
  • Engages learners with real-life case studies throughout the entire product lifecycle.
  • Upon completion, students will possess solid full-stack development skills and substantial experience in permission management system development.
  • Includes 3 hours of office hours every week for additional support and guidance.

Technologies Covered

  • Java
  • Spring Boot
  • SQL
  • JavaScript
  • Vue.js
  • ElementUI
  • Spring Security
  • IntelliJ IDEA
  • Git
  • Docker
  • Redis
  • JPA (Java Persistence API)
  • Swagger/Knife4j
  • Axios
  • Nginx
  • RESTful APIs
  • JUnit
  • Mockito
  • Postman/Apifox
  • MySQL/PostgreSQL
  • JSON Web Tokens (JWT)
  • Maven/Gradle
  • MyBatis
  • Thymeleaf
  • Webpack
  • Node.js
  • Express.js
  • MongoDB

Curriculum For This Course

75 Sections
19:00:00

Project Introduction & Development Environment 6 Sections 90:00

  • Project Summary & Demonstration10:00
  • RBAC Model30:00
  • Introduction to the Engineering Development Process05:00
  • Git Installation & Getting Started15:00
  • Docker Installation & Getting Started15:00
  • Redis Installation & Getting Started15:00

Backend Project Setup 9 Sections 95:00

  • Database Creation05:00
  • Backend Environment, Technology Stack, and Tool Introduction05:00
  • Backend Project Initialization and Configuration Introduction10:00
  • Lombok Introduction and Usage05:00
  • Introduction to Restful Style and Implementation of Four HTTP Methods (GET, POST, PUT, DELETE)20:00
  • Testing APIs Using Postman/Apifox15:00
  • Providing API Documentation and Testing with Swagger/Knife4j10:00
  • Introduction to Logging Configuration and Usage15:00
  • Using JdbcTemplate to Access Databases and Implement Data Persistence in APIs10:00

Backend Project Architecture 6 Sections 95:00

  • Evolution of Layered Architecture20:00
  • SOLID Five Principles10:00
  • Dependency Injection30:00
  • Designing and Creating a User Table, Implementing a User Model05:00
  • Implementing User Creation, Update, Deletion, and List Interfaces10:00
  • Accessing the Database using JPA20:00

Aspect-Oriented Programming & Engineering Development 9 Sections 110:00

  • Designing and Creating a Business Log Table, Implementing Business Log Interface and Logic10:00
  • Aspect-Oriented Programming30:00
  • Implementing User Password Logic and Utilizing Enumerations10:00
  • Testing for Effective and Rapid Development20:00
  • Implementing User Activation and Deactivation Interfaces05:00
  • Unifying Return Result Objects10:00
  • Global Exception Handling / Custom Exceptions10:00
  • Data Validation10:00
  • Date Formatting10:00

Frontend Project 5 Sections 90:00

  • Frontend Environment, Technology Stack, and Tool Introduction10:00
  • Initializing the Project10:00
  • Engineering the Frontend Project30:00
  • Integrating Element-Plus20:00
  • Axios Wrapping20:00

System UI 7 Sections 110:00

  • Setting up the UI Framework20:00
  • Implementing Routing Menus20:00
  • Writing the User List Page20:00
  • Composing the User Creation and Modification Pages20:00
  • Integrating User Interface10:00
  • Realizing User Deletion, Activation, and Deactivation10:00
  • Centralized Management of API Interfaces10:00

Role, Log Management, and Department Interfaces 8 Sections 90:00

  • Designing and Creating Role and User-Role Tables05:00
  • Implementing Role Interfaces15:00
  • Composing the Role Page15:00
  • Crafting the User Role Assignment Page10:00
  • Authoring the Log List Page10:00
  • Designing and Creating Department and User-Department Tables05:00
  • Implementing Department Interfaces20:00
  • Implementing the Department Search Interface, Returning Results in Tree Structure10:00

Menu Management & Department Management UI 5 Sections 95:00

  • Composing the Department Tree List Page20:00
  • Crafting Other Department Pages20:00
  • Designing and Creating Menu Resource and Role-Menu Resource Tables05:00
  • Implementing Menu Resource Interfaces20:00
  • Authoring Menu Resource Page Functions20:00

SpringSecurity & Jwt 5 Sections 95:00

  • SpringSecurity Principles and Mechanisms10:00
  • Implementing User Authorization with SpringSecurity50:00
  • Introduction to Jwt05:00
  • Implementing JwtToken20:00
  • User Password Logic10:00

System Login 5 Sections 90:00

  • Writing User Login and Logout Interfaces20:00
  • Composing the Get Personal Information Interface20:00
  • Implementing Interface Authorization Checks Using Aspects (AOP) 20:00
  • Crafting the User Login Page20:00
  • Realizing User Login10:00

Frontend System Permissions 5 Sections 90:00

  • Caching User Identity Using Pinna20:00
  • Centralized Handling of All User Token Requests via Axios20:00
  • Implementing User Logout10:00
  • Modifying System Menus, Implementing Dynamic Routing, Fetching from System Settings20:00
  • Realizing Page Button Permission Checks20:00

Project Packaging & Deployment & Release 5 Sections 90:00

  • Java Packaging10:00
  • Dockerization20:00
  • Frontend Bundling10:00
  • Nginx Configuration20:00
  • Project Review30:00