Spring基础笔记

论坛 期权论坛     
选择匿名的用户   2021-5-30 01:46   112   0
<div class="blogpost-body cnblogs-markdown" id="cnblogs_post_body">
<ul><li>Spring带给了我们什么便利?</li><li>注解版本的IOC如何玩?
   <ul><li>组件注册
     <ul><li>组件注册的过程中有哪些过滤规则?</li><li>如何控制组件的作用域(单例多例)?</li><li>六种注册组件的方式?</li></ul></li><li>生命周期
     <ul><li>什么是bean的生命周期</li><li>在bean的生命周期的各个阶段我们可以插手做什么?</li></ul></li><li>属性赋值
     <ul><li>我们有哪些手段给bean的属性赋值?<br></li></ul></li><li>自动装配
     <ul><li>什么是自动装配?</li><li>Spring提供哪些注解可以帮我们实现自动装配?</li><li>java规范提供了哪些注解帮助我们实现了自动装配?</li><li>Spring提供的<code>&#64;Profile</code>实现适配多环境?</li></ul></li></ul></li><li>注解版本的AOP如何玩?</li></ul>
<h2 id="spring带给了我们什么">Spring带给了我们什么?</h2>
<p>假如我们是第一次学习Spirng,我们大可不必关心spring带给我了我们什么便利,因为spring大概是web阶段筑基需要学习的第一个主流框架,初学难免会遇见各种各样的错误,所以尽管放心大胆的去学习如何使用就行了.先会用,其它的不用多想</p>
<p>过几天,用着熟悉了如何使用,再考虑spring究竟带给了我们什么便利也不迟, <strong>那么,spring究竟带给了我们什么便利呢?</strong></p>
<ul><li><p><strong>IOC(Inverse of Control),把对象的创建权反转给Spring容器,实现了解耦</strong></p>
   <blockquote>
    <p>我们使用Spring提供给我们的注解,把bean注册进IOC容器,进而把bean之间的依赖关系全部交给Spring管理,现在想想这绝对是一件超级赞的事情,可能原来的我会想,我自己可以new对象,干嘛非让Spring插一脚,是,假如我的项目就是个小demo全文一共三对象,完全顾的上来,那么spring对我来说就是累赘,但是!慢慢的接触的工程大了就会发现,离开了Spring,自己去管理那些对象之间的依赖会累死人的,而且SpringIOC的诞生也应正了bean的管理,完全不需要我们关系,我们关心的就是,我们如何向Spring索取依赖的Bean就行了,所以说Spring真的是web爱好者的小春天.</p>
   </blockquote></li><li><p><strong>AOP(Aspect Oriented Programming),spring的aop</strong></p>
   <blockquote>
    <p>面向切面编程,aop说白了就是代码复用,把大量的重复代码从我们的业务逻辑中抽取出去,等程序运行的时候再动态的植入抽取出去的代码,这是件要多优雅就多优雅的事情!</p>
   </blockquote></li><li><p><strong>声明式事务</strong></p>
   <blockquote>
    <p>后端天天和数据库打交道,事务安全这样的不可能遇不见,我们这一代学习的人还真的是幸运,因为spring提供的声明式事务,我们不用再去苦苦的去写编程式事务,而且,现在spring4全面支持注解开发,我们甚至连配置文件都不用写,加一个注解就引入了spring的事务模块,激动不?</p>
   </blockquote></li><li><p><strong>方便集成其他开源框架</strong></p>
   <blockquote>
    <p>spring最擅长的事情就是整合这使它的生态变的超级庞大</p>
   </blockquote></li></ul>
<hr>
<blockquote>
  <p>例外给大家推荐一篇很棒的博客,里面详细图文论述了,spring究竟带给了我们什么?</p>
</blockquote>
<p><a href="https://blog.csdn.net/qq_38157516/article/details/81979219">spring实现解耦论述</a></p>
<hr>
<h2 id="注解版spring-ioc怎么玩">注解版Spring-IOC怎么玩?</h2>
<h3 id="组件注册">组件注册</h3>
<blockquote>
  <p>只使用IOC,导入Spring-Context就可以</p>
</blockquote>
<pre class="code"><code>&lt;dependency&gt;
    &lt;groupId&gt;org.springframework&lt;/groupId&gt;
    &lt;artifactId&gt;spring-context&lt;/artifactId&gt;
    &lt;version&gt;4.3.7.RELEASE&lt;/version&gt;
&lt;/dependency&gt;</code></pre>
<hr>
<blockquote>
  <p><strong>这个过程,我们要注意IOC以下几点</strong></p>
</blockquote>
<ul><li>组件注册的过程中有哪些过滤规则?</li><li>如何控制组件的作用域(单例多例)?</li><li>六种注册组件的方式?</li></ul>
<blockquote>
  <p><strong>组件注册及其过滤规则我串联在下面相邻的两部分里,这里先提一下Spring提供的所有过滤规则类型</strong></p>
</blockquote>
<p>在spring启动,开始扫描包,注册组件时,如果我们想按照我们的需求往IOC里面添加组件,就需要指定过滤规则,下面这五种类型的过滤规则,都源于我们在主配置类(相当于配置文件)上添加的<code>&#64;ComponentScan()</code>包扫描注解</p>
<ul><li>按照注解过滤<code>ANNOTATION</code></li></ul>
<pre class="blockcode"><code class="language-java"><code>&#64;ComponentScan(// 这个注解替换了原来配置文件中的包扫描
    value&#61;&#34;com.changwu.tryspring&#34;,
    useDefaultFilters&#61;false,
    includeFilters &#61; {
      &#64;Filter(type &#61; FilterType.ANNOTATION, classes &#61; Service.class)}
      )</code></code></pre>
<ul><li>按照给定的类型过滤</li></ul>
<pre class="blockcode"><code class="language-java"><code>&#64;Configuration
&#64;ComponentScan(
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP