{"id":28756804,"url":"https://github.com/wx-chevalier/spring-notes","last_synced_at":"2025-09-10T07:33:20.172Z","repository":{"id":48611772,"uuid":"206011648","full_name":"wx-chevalier/Spring-Notes","owner":"wx-chevalier","description":"Spring \u0026 Spring Boot \u0026 Spring Cloud \u0026 Alibaba Cloud 微服务与云原生实战","archived":false,"fork":false,"pushed_at":"2025-03-13T08:00:59.000Z","size":31612,"stargazers_count":19,"open_issues_count":5,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-17T03:08:49.945Z","etag":null,"topics":["mybatis","spring","spring-boot"],"latest_commit_sha":null,"homepage":"https://ng-tech.icu/books/Spring-Series","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wx-chevalier.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-03T07:07:33.000Z","updated_at":"2025-03-13T08:01:02.000Z","dependencies_parsed_at":"2024-06-10T08:55:11.150Z","dependency_job_id":"08ce9f80-40ba-4670-be8b-6398b5b41f99","html_url":"https://github.com/wx-chevalier/Spring-Notes","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wx-chevalier/Spring-Notes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wx-chevalier%2FSpring-Notes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wx-chevalier%2FSpring-Notes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wx-chevalier%2FSpring-Notes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wx-chevalier%2FSpring-Notes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wx-chevalier","download_url":"https://codeload.github.com/wx-chevalier/Spring-Notes/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wx-chevalier%2FSpring-Notes/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272805572,"owners_count":24995916,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mybatis","spring","spring-boot"],"created_at":"2025-06-17T03:08:50.526Z","updated_at":"2025-08-30T05:08:16.183Z","avatar_url":"https://github.com/wx-chevalier.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Contributors][contributors-shield]][contributors-url]\n[![Forks][forks-shield]][forks-url]\n[![Stargazers][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n[![license: CC BY-NC-SA 4.0](https://img.shields.io/badge/license-CC%20BY--NC--SA%204.0-lightgrey.svg)][license-url]\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/wx-chevalier/Spring-Notes\"\u003e\n    \u003cimg src=\"https://assets.ng-tech.icu/item/header.svg\" alt=\"Logo\" style=\"width: 100vw;height: 400px\" /\u003e\n  \u003c/a\u003e\n\n  \u003cp align=\"center\"\u003e\n    \u003ca href=\"https://ng-tech.icu/books/Spring-Notes\"\u003e\u003cstrong\u003e在线阅读 \u003e\u003e \u003c/strong\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/wx-chevalier\"\u003e代码案例\u003c/a\u003e\n    ·\n       \u003ca href=\"https://github.com/wx-chevalier/Awesome-Lists\"\u003e参考资料\u003c/a\u003e\n\n  \u003c/p\u003e\n\u003c/p\u003e\n\n# Spring Series | Spring 微服务与云原生实战\n\n![Spring 题图](https://s2.ax1x.com/2019/09/03/nFQaut.png)\n\nSpring 的设计目标是为我们提供一个一站式的轻量级应用开发平台，抽象了应用开发中遇到的共性问题。作为平台，它考虑到了企业应用资源的使用，比如数据的持久化、数据集成、事务处理、消息中间件、分布式式计算等高效可靠处理企业数据方法的技术抽象。开发过程中的共性问题，Spring 封装成了各种组件，而且 Spring 通过社区，形成了一个开放的生态系统，比如 Spring Security 就是来源于一个社区贡献。\n\n使用 Spring 进行开发，对开发人员比较轻量，可以使用 POJO 和 Java Bean 的开发方式，使应用面向接口开发，充分支持了面向对象的设计方法。通过 IOC 容器减少了直接耦合，通过 AOP 以动态和非侵入的方式增加了服务的功能，为灵活选取不同的服务实现提供了基础，这也是 Spring 的核心。轻量级是相对于传统 J2EE 而言的，传统的 J2EE 开发，需要依赖按照 J2EE 规范实现的 J2EE 应用服务器，设计和实现时，需要遵循一系列的接口标准，这种开发方式耦合性高，使应用在可测试性和部署上都有影响，对技术的理解和要求相对较高。\n\n![Spring](https://s2.ax1x.com/2019/09/03/nkYetx.png)\n\n本篇是[《服务端开发实践与工程架构](https://ng-tech.icu/books/Backend-Notes/#/)》系列文章的一部分，关联的示例代码请参考 [java-snippets](https://github.com/Dev-Snippets/java-snippets)，[spring-examples](https://github.com/BE-Kits/spring-snippets)。\n\n\u003e 如果你是才入门的新手，那么建议首先阅读 [《Java Series]()》、[《数据结构与算法]()》。如果你已经有了一定的经验，想了解更多工程架构方面的知识，那么建议阅读 []()。如果你想寻求分布式系统的解决方案，那么建议阅读 []()。\n\n# About\n\n## Copyright\n\n\u003cimg src=\"https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg\"/\u003e\u003cimg src=\"https://parg.co/bDm\" /\u003e\n\n笔者所有文章遵循 [知识共享 署名-非商业性使用-禁止演绎 4.0 国际许可协议](https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh)，欢迎转载，尊重版权。如果觉得本系列对你有所帮助，欢迎给我家布丁买点狗粮(支付宝扫码)~\n\n## Copyright \u0026 More | 延伸阅读\n\n您还可以前往 [NGTE Books](https://ng-tech.icu/books-gallery/) 主页浏览包含知识体系、编程语言、软件工程、模式与架构、Web 与大前端、服务端开发实践与工程架构、分布式基础架构、人工智能与深度学习、产品运营与创业等多类目的书籍列表：\n\n[![NGTE Books](https://s2.ax1x.com/2020/01/18/19uXtI.png)](https://ng-tech.icu/books-gallery/)\n\n## Links\n\n- https://zhuanlan.zhihu.com/p/78104880\n- https://netfilx.github.io/spring-boot/\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n\n[contributors-shield]: https://img.shields.io/github/contributors/wx-chevalier/Spring-Notes.svg?style=flat-square\n[contributors-url]: https://github.com/wx-chevalier/Spring-Notes/graphs/contributors\n[forks-shield]: https://img.shields.io/github/forks/wx-chevalier/Spring-Notes.svg?style=flat-square\n[forks-url]: https://github.com/wx-chevalier/Spring-Notes/network/members\n[stars-shield]: https://img.shields.io/github/stars/wx-chevalier/Spring-Notes.svg?style=flat-square\n[stars-url]: https://github.com/wx-chevalier/Spring-Notes/stargazers\n[issues-shield]: https://img.shields.io/github/issues/wx-chevalier/Spring-Notes.svg?style=flat-square\n[issues-url]: https://github.com/wx-chevalier/Spring-Notes/issues\n[license-shield]: https://img.shields.io/github/license/wx-chevalier/Spring-Notes.svg?style=flat-square\n[license-url]: https://github.com/wx-chevalier/Spring-Notes/blob/master/LICENSE.txt\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwx-chevalier%2Fspring-notes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwx-chevalier%2Fspring-notes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwx-chevalier%2Fspring-notes/lists"}