This course offers a practical approach to system design with Java Spring, teaching you to build scalable, maintainable web applications. It covers microservices, Spring Boot, and key design patterns, ensuring you can apply these concepts to real-world projects.
抓住节省的机会!购买 Coursera Plus 3 个月课程可享受40% 的折扣,并可完全访问数千门课程。

推荐体验
推荐体验
初级
Ideal for developers with basic Java/Spring knowledge looking to advance in system design and microservices.
推荐体验
推荐体验
初级
Ideal for developers with basic Java/Spring knowledge looking to advance in system design and microservices.
您将学到什么
Implement microservices for scalable, resilient web systems
Break down business goals into well-structured product requirements
Weigh tradeoffs between asynchronous vs. synchronous services and SQL vs. NoSQL storage
您将获得的技能
要了解的详细信息

添加到您的领英档案
January 2026
12 项作业
了解顶级公司的员工如何掌握热门技能

该课程共有12个模块
In this section, we explore identifying business problems, articulating problem-solution statements, and avoiding technical choices in requirements to ensure clear, user-aligned software development.
涵盖的内容
2个视频5篇阅读材料1个作业
2个视频• 总计2分钟
- Course Overview• 1分钟
- What Are the Product Requirements - Overview Video• 1分钟
5篇阅读材料• 总计110分钟
- Introduction• 15分钟
- How Is This course Structured to Help You Succeed• 30分钟
- Crystal-clear Needs Ensuring Businesses Get Requirements Right• 20分钟
- Creating a Matrix of Problem-Solution Statements• 15分钟
- Are Solutions the Final Step• 30分钟
1个作业• 总计10分钟
- Foundations of Product Requirements• 10分钟
In this section, we break down complex requirements into features, use cases, and user stories. It focuses on structuring business requirements, clarifying roles, and defining workflows for software development.
涵盖的内容
1个视频12篇阅读材料1个作业
1个视频• 总计1分钟
- Sorting Complex Requirements into Features, Use Cases, and Stories - Overview Video• 1分钟
12篇阅读材料• 总计190分钟
- Introduction• 10分钟
- Critical Events for Tenants• 10分钟
- Listing the Main Features of the System• 10分钟
- Organizing the Property Search Feature on a Timeline• 20分钟
- Simplifying Requirements• 10分钟
- Life Cycles and Loops• 20分钟
- Creating User Journeys, Stories, and Use Cases• 20分钟
- What Questions Does a User Story Answer• 15分钟
- Comparing User Stories to Use Case Descriptions• 10分钟
- Use Case Sample• 20分钟
- Exceptional Use Cases Made Explicit• 30分钟
- Exercises• 15分钟
1个作业• 总计10分钟
- Sorting Complex Requirements into Features, Use Cases, and Stories• 10分钟
In this section, we prioritize high-value features, define application domains and boundaries, and model interactions through diagrams to align technical and business goals effectively.
涵盖的内容
1个视频8篇阅读材料1个作业
1个视频• 总计1分钟
- Defining Domains for Your Application - Overview Video• 1分钟
8篇阅读材料• 总计145分钟
- Introduction• 30分钟
- Problem Intensity• 15分钟
- Cost of Acquisition• 20分钟
- Sorting Priorities• 10分钟
- Defining Domains and Boundaries for Your Application• 20分钟
- Setting Up Domain Composition, Boundaries, and Limits• 10分钟
- Defining the Right Services for Your Domains• 10分钟
- Partnership Proposal Service Modeling• 30分钟
1个作业• 总计10分钟
- Domain Identification and Software Development Practices• 10分钟
In this section, we explore non-functional requirements, user handling, data maintenance, disaster recovery, and testing to ensure system reliability and performance.
涵盖的内容
1个视频3篇阅读材料1个作业
1个视频• 总计1分钟
- Defining Services for Your Domains - Overview Video• 1分钟
3篇阅读材料• 总计80分钟
- Introduction• 30分钟
- Exploring Sizing Requirements• 20分钟
- Requirements for Data Processing• 30分钟
1个作业• 总计10分钟
- System Design and Data Management Fundamentals• 10分钟
In this section, we implement RESTful APIs using Spring, design controllers for HTTP requests, and analyze Spring bean lifecycle and dependencies.
涵盖的内容
1个视频15篇阅读材料1个作业
1个视频• 总计1分钟
- Writing Your Services Introducing REST APIs with the Spring Framework - Overview Video• 1分钟
15篇阅读材料• 总计380分钟
- Introduction• 30分钟
- Microservice Communication• 30分钟
- What Are the Main HTTP Verbs• 30分钟
- Installing the Java SDK• 30分钟
- Implementing Your First Spring Controller Class• 30分钟
- Designing Your API Services• 30分钟
- Adding Parameters to Your API Endpoints• 30分钟
- Using UUIDs to Uniquely Identify Objects• 10分钟
- How Spring Apps Run Internally• 30分钟
- What Are Spring Beans and Why Are They Important?• 10分钟
- How to Easily Access a Spring Bean• 10分钟
- Creating RESTful APIs in Spring• 30分钟
- Writing the Rental Property Controller Class• 30分钟
- Using the Rental Properties API• 30分钟
- Searching for a Rental Property• 20分钟
1个作业• 总计10分钟
- Spring Framework and REST API Fundamentals• 10分钟
In this section, we translate business requirements into well-designed Spring APIs, focusing on microservice blueprints, REST clarity, and automated testing for reliable applications.
涵盖的内容
1个视频11篇阅读材料1个作业
1个视频• 总计1分钟
- Translating Business Requirements into Well-Designed Spring APIs - Overview Video• 1分钟
11篇阅读材料• 总计290分钟
- Introduction• 20分钟
- Implementations• 30分钟
- Implementing Business Services in Spring• 20分钟
- Organizing Your Spring Classes• 30分钟
- Testing Beans in Isolation• 30分钟
- Coming Up With a Test Case List• 20分钟
- Tuning Spring Web for Peak Performance• 20分钟
- Making Your API Design a Lot Better for Clients• 30分钟
- Hypermedia Controls• 30分钟
- Writing Rental Property Controller V2 Class• 30分钟
- Writing the Rental Property Hyper Media Utils Spring Bean• 30分钟
1个作业• 总计10分钟
- Spring API Development Fundamentals• 10分钟
This section covers SQL persistence with Spring Data, reactive vs non-reactive data handling, and microservice data modeling.
涵盖的内容
1个视频15篇阅读材料1个作业
1个视频• 总计1分钟
- Handling Data and Evolving Your Microservice - Overview Video• 1分钟
15篇阅读材料• 总计360分钟
- Introduction• 10分钟
- Reactive Versus Non-Reactive Data Handling• 10分钟
- NoSQL Databases• 30分钟
- Implementing Non-Reactive SQL Database Persistence• 30分钟
- Defining Entities to Be Persisted• 30分钟
- Declaring Relationships Between Entities• 30分钟
- Other Entity Lifecycle Annotations• 10分钟
- Using JpaRepository as an ORM-enabled Repository• 30分钟
- JpaRepository Class Hierarchy Made Simple• 30分钟
- Dealing with a Very High Volume of Data and Requests• 10分钟
- Retrieving Paged Results in Spring JpaRepository• 30分钟
- Using @Qualifier to Inject Multiple Bean Implementations for the Same Service• 30分钟
- Working with Transactions in Spring Data• 30分钟
- Using NamedParameterJdbcTemplate to Run Raw SQL Queries• 20分钟
- Referencing All the Implementations We Have Done So Far• 30分钟
1个作业• 总计10分钟
- Data Management in Microservices• 10分钟
In this section, we explore securing services using Spring Security and OAuth 2.0, focusing on JWT token validation and practical implementation strategies for microservices.
涵盖的内容
1个视频9篇阅读材料1个作业
1个视频• 总计1分钟
- Securing Services with Spring Security and OAuth 2.0 - Overview Video• 1分钟
9篇阅读材料• 总计260分钟
- Introduction• 30分钟
- Understanding How JWTs Work• 30分钟
- Different Architectures for Validating Tokens• 20分钟
- Creating Your Security Configuration Class• 30分钟
- The UserEntity and UserRepository Classes• 30分钟
- The Scope Service• 30分钟
- The UserController Class• 30分钟
- Setting the Security Configuration Class• 30分钟
- Adding Ownership Security Restrictions• 30分钟
1个作业• 总计10分钟
- Securing Services with Spring Security and OAuth 2.0• 10分钟
In this section, we explore high-performance secure communication between Spring services using WebFlux and RestAssured, focusing on reactive architectures and integration testing.
涵盖的内容
1个视频5篇阅读材料1个作业
1个视频• 总计1分钟
- High-Performance Secure Communication Between Spring Services - Overview Video• 1分钟
5篇阅读材料• 总计130分钟
- Introduction• 10分钟
- Writing a High-Performance Service with WebFlux• 30分钟
- Writing the Revoke Token Service Class• 30分钟
- Connecting Services with API Requests• 30分钟
- Creating the Project Structure• 30分钟
1个作业• 总计10分钟
- High-Performance Secure Communication in Spring• 10分钟
In this section, we explore event-driven architectures using Kafka and NoSQL databases, focusing on reducing service coupling and improving system maintainability through asynchronous design patterns.
涵盖的内容
1个视频8篇阅读材料1个作业
1个视频• 总计1分钟
- Building Asynchronous, Event-Driven Systems with NoSQL Databases - Overview Video• 1分钟
8篇阅读材料• 总计170分钟
- Introduction• 30分钟
- Develop Response Independence• 10分钟
- Introducing Event-Driven Architectures• 20分钟
- Fat Messages• 10分钟
- Destination Versus Source Topics• 10分钟
- Unidirectional Versus Bidirectional Topics• 30分钟
- Using MongoDB for NoSQL Persistency• 30分钟
- Our Event-Driven Sample in HomeIt• 30分钟
1个作业• 总计10分钟
- Asynchronous System Design Fundamentals• 10分钟
In this section, we explore structured logging, environment-specific property management, and Spring Cloud configuration for scalable microservices. These concepts enable efficient cloud deployment and service orchestration.
涵盖的内容
1个视频10篇阅读材料1个作业
1个视频• 总计1分钟
- Launching Your Self-Organizing Microservice Cloud - Overview Video• 1分钟
10篇阅读材料• 总计230分钟
- Introduction• 10分钟
- How to Write Logs in Spring• 20分钟
- How to Organize Your Property Files• 30分钟
- Overriding Properties with Environment Variables• 30分钟
- Setting Up Your Services Using Spring Cloud• 10分钟
- Launching the Discovery Service• 30分钟
- Setting Basic Application Properties and GitHub Access• 30分钟
- Setting Your Service Properties• 30分钟
- Create a Simple Spring Application in Spring Initializr with the Right Dependencies• 30分钟
- Hitting the API Gateway with Our Integration Tests• 10分钟
1个作业• 总计10分钟
- Microservice Architecture and Configuration Essentials• 10分钟
In this section, we explore strategies for optimizing service resilience, including caching, fault tolerance with Resilience4j, and throttling for high traffic management.
涵盖的内容
1个视频4篇阅读材料1个作业
1个视频• 总计1分钟
- Optimizing Your Services - Overview Video• 1分钟
4篇阅读材料• 总计120分钟
- Introduction• 30分钟
- Prepare Your Services for Concurrent Requests• 30分钟
- Recovering from Failures with Dead Letter Queues• 30分钟
- Using Retry in Resilience4J• 30分钟
1个作业• 总计10分钟
- Optimizing Service Performance and Reliability• 10分钟
位教师

提供方

提供方

Packt helps tech professionals put software to work by distilling and sharing the working knowledge of their peers. Packt is an established global technical learning content provider, founded in Birmingham, UK, with over twenty years of experience delivering premium, rich content from groundbreaking authors on a wide range of emerging and popular technologies.
从 Software Development 浏览更多内容
状态:免费试用免费试用BBoard Infinity
课程
状态:免费试用免费试用
状态:免费试用免费试用LLearnQuest
课程
状态:免费试用免费试用BBoard Infinity
课程
人们为什么选择 Coursera 来帮助自己实现职业发展

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.
常见问题
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
If you complete the course successfully, your electronic Course Certificate will be added to your Accomplishments page - from there, you can print your Course Certificate or add it to your LinkedIn profile.
This course is currently available only to learners who have paid or received financial aid, when available.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
更多问题
提供助学金,

