zoukankan      html  css  js  c++  java
  • SpringInAction第一章笔记

    对应练习于 https://github.com/AganRun/SpringInAction

    第一章 Spring起步

    1.1 什么是Spring

    Spring的核心势提供了一个容器(container),通常称为Spring应用上下文(Spring application context),
    他们会创建和管理应用组件。
    这些组件也可以成为bean,会在Spring应用上下文中装配在一起,从而
    形成一个完整的应用程序。

    把bean装配在一起是通过依赖注入(dependency injection, DI)
    组件不会创建和管理,它依赖的组件的生命周期,使用依赖注入,大家共同依赖于单独的实体(容器)来创建和维护组件。

    @Configuration注解会告诉Spring这是一个配置类,会为Spring上下文提供bean。

    自动配置起源于自动装配(Autowiring)组件扫描(component scanning)

    • 借助组件扫描,Spring可以发现路径下的组件,并创建成上下文中的bean
    • 借助自动装配,Spring可以自动为组件注入他们依赖的bean

    1.3.1 处理web请求

    SpringMVC的核心是控制器(controller)的概念。
    控制器是处理请求并以某种方式进行消息响应的类。

    1.3.3 测试控制器

    @WebMvcTest注解。这是Spring Boot 提供的特殊类注解。
    它会让这个测试在Spring MVC的上下文中执行。
    尽管我们可以启动整个服务来测试,但是对于某些场景,只要仿造MVC的运行场景就可以。
    理解:只启动被测试的类注入到容器,然后通过MOCK只向被测试的路径发送请求。

    1.3.5 了解Spring Boot DevTools

    Spring向开发者提供的工具。例如,代码修改应用自动重启。

    当DevTools运行时,程序被加载到JVM的两个类加载器中。
    一个类加载器会加载你的代码,这部分内容可能常变。另一个加载器会加载依赖的库

    当探测到变更,DevTools会重新加载包含项目代码的类加载器,重启Spring上下文,这个过程中,
    另一个类加载器和JVM不动,减少应用启动的时间。

    这个策略的一个不足是,无法反应依赖项的变化。因为依赖项的类加载器不会重启。

    1.5 小结

    • Spring旨在简化开发人员面临的挑战。例如创建web程序,访问数据库
    • Spring Boot 建立在Spring之上。简化依赖管理、自动配置、运行时洞察,使Spring更佳易用
    • Spring应用上下文中,组件(bean)既可以使用JAVA或XML显示声明,也可以扫描发现,还可以Spring Boot自动配置。
  • 相关阅读:
    C++学习笔记十关联容器
    Ubuntu下使用GDB断点Go程序
    各种语言的数字转罗码方法的实现
    为什么 ++i和i++的效果是一样的,试了javascript ,c++ java
    罗马数字转换阿拉伯数字(Java版,考虑较为全面)
    C++学习笔记九顺序容器(二) ForFreeDom 博客园
    智立方 屁话真言108:能盛事者能成事_智立方的杨石头_新浪博客
    腾讯搜搜高管吴军离职的传闻与真相
    罗马数字_百度百科
    快速深入一门语言的几个问题 Shell909090 随笔杂记
  • 原文地址:https://www.cnblogs.com/AganRun/p/13125940.html
Copyright © 2011-2022 走看看