zoukankan      html  css  js  c++  java
  • spring

    普通的bean

     动态bean方法,必须是有返回值的额

    静态工厂bean:方法的返回值是一个静态(static)的

    spring中的scope属性:

    (1) singleton:单态模式。即在整个 Spring 容器中,使用 singleton 定义的 Bean 将是单例的, 只有一个实例。默认为单态的。

    (2)prototype:原型模式。即每次使用 getBean 方法获取的同一个<bean />的实例都是一个 新的实例。

    (3)request:对于每次 HTTP 请求,都将会产生一个不同的 Bean 实例。

    (4)session:对于每个不同的 HTTP session,都将产生一个不同的 Bean 实例。

    (5)global session:每个全局的 HTTP session 对应一个 Bean 实例。典型情况下,仅在使用 portlet 集群时有效,多个 Web 应用共享一个 session。一般应用中,global-session 与 session 是等同的。 

    注意: (1)对于 scope 的值 request、session 与 global session,只有在 Web 应用中使用 Spring 时, 该作用域才有效。

    (2)对于 scope 为 singleton 的单例模式,该 Bean 是在容器被创建时即被装配好了。

    (3)对于 scope 为 prototype 的原型模式,Bean 实例是在代码中使用该 Bean 实例时才进行 装配的。

    </bean>标签的id属性和name属性

    一般情况下都是用id属性的,除非bean中含有特殊字符才使用name(定义id只可以以字母开头),在没有id属性的时候name属性的作用和id是一样的,

    注入分类:设值注入、构造注入          也可通过内部bean实现注入

    设值注入:

    当指定 bean 的某属性值为另一 bean 的实例时,通过 ref 指定它们间的引用关系。ref 的值必须为某 bean 的 id 值。

    (1)、

    (2)使用ref标签也可以调用

    构造注入:构造注入是指,在构造调用者实例的同时,完成被调用者的实例化。

    命名空间注入:

    p 命名空间注入:采用设值注入方式,故需要有相应的 setter ;c 命名空间注入:采用构造注入方式,故需要有相应的构造器 

     

    SPEL注入:SPEL 表达式以#开头,后跟 一对大括号

     主文件:包含关系的配置文件,用户管理其他配置文件

    也可以把spring-base.xml、spring-student.xml、spring-teacher.xml使用spring-*.xml代替,但是同时主文件不能以spring-开头。

    二、配置组件扫描器

    需要导入aop的jar包增加约束,约束在 %SPRING_HOME%docsspring-framework-referencehtmlxsd-configuration.html 文件中。 

    同时也需要在类上面实现注解——@repository、@service、@controller、@entity分别对应数据库层、逻辑服务层、控制器层、实体类层

    按类型注入域属性@Autowired,该注解默认使用按类型自动装配 Bean 的方式。 

    Bean 的生命始末@PostConstruct 与@PreDestroy 

    也可使用JavaConfig生成bean,例:

    spring中的AOP示例:

    定义和使用域属性

    对于一个 POJO 类,在类上使用@Configuration 注解,将会使当前类作为一个 Spring 的 容器来使用,用于完成 Bean 的创建。

    在该 JavaConfig 的方法上使用@Bean,将会使一个普通方法所返回的结果变为指定名称 的 Bean 实例。 

    by_name和by_type都可以使与属性自动注入

  • 相关阅读:
    centos7 忘记mysql5.7密码
    阿里云Linux(Centos7)下搭建SVN服务器
    JAVA金额格式字符串转数值
    win10下RabbitMQ的安装和配置
    Oracle update 两表及以上关联更新,出现多值情况,不是一对一更新
    java.lang.OutOfMemoryError: java heap space
    bootstrap.min.css.map
    css 边距等常用设置
    html 标签
    数据库总结
  • 原文地址:https://www.cnblogs.com/5858y/p/8708772.html
Copyright © 2011-2022 走看看