`
wiselyman
  • 浏览: 2097258 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
博客专栏
Group-logo
点睛Spring4.1
浏览量:82549
74ae1471-94c5-3ae2-b227-779326b57435
点睛Spring MVC4...
浏览量:130946
社区版块
存档分类
最新评论

Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持

 
阅读更多

2.1 默认方法(default method)

  • java8引入了一个default medthod;
  • 用来扩展已有的接口,在对已有接口的使用不产生任何影响的情况下,添加扩展
  • 使用default关键字
  • Spring 4.2支持加载在默认方法里声明的bean

2.2

  • 将要被声明成bean的类
public class DemoService {
    public void doSomething(){
        System.out.println("find bean in default method");
    }
}
  • 在接口的默认方法里定义bean
package com.wisely.spring4_2.defaultMethod;

import org.springframework.context.annotation.Bean;
public interface DemoServiceConfig {

    @Bean 
    default DemoService DemoService(){
        return new DemoService();
    }

}
  • 配置类
package com.wisely.spring4_2.defaultMethod;

import org.springframework.context.annotation.Configuration;

@Configuration
public class AppConfig implements DemoServiceConfig{



}

  • 运行
package com.wisely.spring4_2.defaultMethod;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class Main {
    public static void main(String[] args) {
         AnnotationConfigApplicationContext context =
                    new AnnotationConfigApplicationContext("com.wisely.spring4_2.defaultMethod");
         DemoService ds = context.getBean(DemoService.class);
         ds.doSomething();
    }
}

  • 输出结果
find bean in default method

新书推荐《JavaEE开发的颠覆者: Spring Boot实战》,涵盖Spring 4.x、Spring MVC 4.x、Spring Boot企业开发实战。

 

京东地址:http://item.jd.com/11894632.html

当当地址:http://product.dangdang.com/23926195.html

亚马逊地址:http://www.amazon.cn/图书/dp/B01D5ZBFUK/ref=zg_bsnr_663834051_6 

淘宝地址:https://item.taobao.com/item.htm?id=528426235744&ns=1&abbucket=8#detail

 

 

 

或自己在京东、淘宝、亚马逊、当当、互动出版社搜索自选。

 


0
0
分享到:
评论

相关推荐

    spring-beans-3.0.xsd

    在`<bean>`元素中,`lookup-method`和`replaced-method`属性的引入,使得在运行时动态查找或替换bean的方法成为可能,这是对AOP(面向切面编程)的一种补充,提供了更细粒度的控制。 除此之外,`<util>`命名空间在...

    thymeleaf-extras-springsecurity-3.0-master.zip

    Spring Security version 3.0.x to 4.2.x Web environment (Spring Security integration cannot work offline) Maven info groupId: org.thymeleaf.extras artifactId: Spring Security 3 integration package: ...

    Struts2+spring2+hibernate3实例源码-java源码

    2. **搭建开发环境**:创建新的Web项目,并添加Struts2、Spring2和Hibernate3的相关库文件。 #### 四、数据库设计 为了演示整合流程,我们设计了一个简单的用户表`user`,包含字段`userid`、`username`、`password...

    spring-boot-reference.pdf

    - Spring Boot提供自动配置功能,它是通过分析项目类路径上的jar包、已定义的Bean和各种设置,来猜测如何配置Spring应用。 - 开发者可以根据需要逐步替换掉由Spring Boot自动配置的内容。 文档中还提到了高级主题...

    spring笔记

    `default-init-method`和`default-destroy-method`应用于整个`<beans>`根元素,它们只对单例bean有效,因为原型bean的生命周期不受容器控制,所以容器无法确保在适当的时候调用默认的初始化或销毁方法。 接下来,...

    第十章 Spring 配置元信息(Configuration Metadata)1

    - `default-init-method`和`default-destroy-method`:用于指定默认的初始化和销毁方法,如果未在Bean定义中指定,容器会尝试调用这些方法。 4. **Spring 外部化配置元信息**:PropertySource表示从外部文件加载的...

    Spring-整合-Struts2

    - **Spring 插件的作用**:Spring插件作为桥梁,允许Struts2直接访问Spring容器中的Bean,从而实现对Action的依赖注入。 - **Struts2 的生命周期管理**:通过Spring管理Struts2的Action实例,可以更灵活地控制Action...

    Spring java注解,元注解和自定义注解

    Spring框架充分利用了Java注解的功能,简化了配置过程,并提供了许多内置的注解来支持依赖注入、事务管理等功能。以下是一些常用的Spring注解: 1. **@Component** - 用于标记一个类作为Spring管理的Bean。 - ...

    spring_MVC源码

    弃用了struts,用spring mvc框架做了几个项目,感觉都不错,而且使用了注解方式,可以省掉一大堆配置文件。本文主要介绍使用注解方式配置的spring mvc,之前写的spring3.0 mvc和rest小例子没有介绍到数据层的内容,...

    spring配置详解

    例如,可以使用`init-method`和`destroy-method`属性定义初始化和销毁方法,`scope`属性指定bean的作用域(单例、原型等)。 六、自动装配 Spring的自动装配功能可以减少手动配置的工作量。`autowire`属性可以设置...

    Java Spring Controller 获取请求参数的几种方法详解

    `@RequestParam`注解可以将特定的请求参数绑定到方法参数上,支持指定参数是否必需(默认必需),以及参数的默认值: ```java @RequestMapping("/addUser4") public String addUser4(@RequestParam(value = ...

    Sprig学习笔记—适用刚接触者

    method`用于使用工厂方法创建Bean,`primary`用于在自动装配时指定首选Bean,`scope`定义Bean的作用域,`name`定义Bean的别名。 7. **Bean的作用域**:Spring支持多种作用域,包括: - **Singleton**:全局唯一...

    spring3.2+strut2+hibernate4

    -- 启用spring注解支持 --> <context:annotation-config /> <!-- <bean id="sessionFactory"--> <!-- class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">--> <!-- ...

    SpringSecurity 3.0.1.RELEASE.CHM

    2.3.4. 对OpenID的支持 2.3.4.1. 属性交换 2.3.5. 添加你自己的filter 2.3.5.1. 设置自定义 AuthenticationEntryPoint 2.4. 保护方法 2.4.1. <global-method-security>元素 2.4.1.1. 使用protect-pointcut添加...

    Spring集成ActiveMQ配置

    - `spring-context-support-2.5.6.jar`:提供对各种数据源的支持。 - `spring-jms-2.5.6.jar`:特别用于JMS消息服务的支持。 - `spring-tx.jar`:提供事务管理功能。 此外,还需要引入JMS规范的实现包`jms-1.1.jar`...

    SpringSource CoreSpring认证考试题库.docx

    解释:在 Spring 框架中,需要在 Java 主方法中实例化 ApplicationContext 对象,以便启动 Spring 应用程序。 第 4 题 题目:Consider the following code sample which creates an ApplicationContext from a file...

    SPRING FRAMEWORK BEAN作用域和生命周期原理解析

    3. 在 xml 配置文件中定义默认的 default-init 和 default-destroy 方法。 其中,实现接口的方式优先级最高,xml 配置文件的方式优先级最低。如果在 Bean 中定义了 init 和 destroy 方法,则一定需要实现,否则会...

    spring-boot-strategy

    Spring Boot 是一个流行的 Java 框架,它简化了创建独立的、生产级别的基于 Spring 应用程序的过程。在本主题"spring-boot-strategy"中,我们将深入探讨如何使用策略模式和简单工厂模式来优化代码中的条件判断,比如...

Global site tag (gtag.js) - Google Analytics