利用注解配置Spring容器的方法

本文介绍了利用注解配置Spring容器的方法,分享给大家,具体如下:

@Configuration标注在类上,相当于将该类作为spring的xml的标签

@Configuration
public class SpringConfiguration {
 public SpringConfiguration() {
  System.out.println("初始化Spring容器");
 }
}

主函数进行测试

public class Main {
 public static void main(String[] args) {
  ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfiguration.class);

 }
}

利用注解AnnotationConfigApplicationContext加载ApplicationContext

运行结果如下

信息: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@2e5d6d97: startup date [Sat Dec 09 11:29:51 CST 2017]; root of context hierarchy
初始化Spring容器

利用@Bean向容器中添加bean实例

public class User {
 private String username;
 private int age;

 public User(String username, int age) {
  this.username = username;
  this.age = age;
 }

 public void init(){
  System.out.println("初始化User...");
 }

 public void say() {
  System.out.println(String.format("Hello,my name is %s,I am %d years old ", username, age));
 }

 public void destory(){
  System.out.println("销毁User ...");
 }
}
@Configuration
public class SpringConfiguration {
 public SpringConfiguration() {
  System.out.println("初始化Spring容器");
 }
 //@Bean注解注册bean,同时制定初始化和销毁的方法
 @Bean(name = "user", initMethod = "init", destroyMethod = "destory")
 @Scope("prototype")
 public User getUser() {
  return new User("tom", 20);
 }
}

@Bean注解在返回实例的方法上,如果没有指定bean的名字,则默认与标注的方法名称相同

@Bean注解默认作用域为单例的Singleton作用域

利用@ComponentScan添加自动扫描@Service,@Ripository,@Controller,@Component注解

@Component
public class Cat {
 public Cat() {
 }
 public void say() {
  System.out.println("I am a cat" );
 }
}
@Configuration
@ComponentScan(basePackages = "com.spring.annotation.ioc")
public class SpringConfiguration {
 public SpringConfiguration() {
  System.out.println("初始化Spring容器");
 }
 //@Bean注解注册bean,同时制定初始化和销毁的方法
 @Bean(name = "user", initMethod = "init", destroyMethod = "destory")
 @Scope("prototype")
 public User getUser() {
  return new User("tom", 20);
 }
}

利用basePackages扫描包配置路径

运行结果如下

初始化Spring容器
初始化User...
Hello,my name is tom,I am 20 years old
I am a cat

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 把spring boot项目发布tomcat容器(包含发布到tomcat6的方法)

    spring boot因为内嵌tomcat容器,所以可以通过打包为jar包的方法将项目发布,但是如何将spring boot项目打包成可发布到tomcat中的war包项目呢? 1. 既然需要打包成war包项目,首先需要在pom.xml文件中修改打包类型,将spring boot默认的<packaging>jar</packaging>修改为<packaging>war</packaging>形式: 2. 其次spring boot的web项目中内嵌tomca

  • 使用 Spring Boot 内嵌容器 Undertow创建服务器的方法

    Undertow是一个Web服务器,那么它就需要具备的现代Web服务器的基本特性,比如Servlet,JSP,文件服务器,代理服务器,安全认证等.undertow目前已经实现了绝大多数功能,并且因为wildfly通过了JavaEE7 TCK认证,所以可以说Undertow是一个通过Servlet 3.1认证的Web服务器和容器.这篇文章只分析Undertow的主干流程上的主要功能,即undertow-core和undertow-servlet. 1.简介 Undertow是一个非常轻量并高性能的

  • 选择Spring Boot项目的内嵌容器的理由

    Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者. Spring Boot继承了Spring的优点,并新增了一些新功能和特性: (1)SpringBoot是伴随着Spring4.0诞生的,一经推出,引起了巨大的

  • web容器中实例化spring相关配置解析

    文章主要探究了web容器中实例化spring的相关配置简单介绍,接下来我们看看具体内容. web容器中实例化spring相关配置说明: 要想在web容器实例化时加载spring容器,web.xml文件中配置如下: <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:bean.xml</param-value> </cont

  • Spring Boot 定制与优化内置的Tomcat容器实例详解

    1.Spring Boot 定制与优化内置Tomcat容器. > 内置的容器有三个分别是Undertow.Jetty.Tomcat,Spring Boot 对这三个容器分别进行了实现,它们上层接口都是EmbeddedServletContainerFactory,该接口也是本文的主要核心. 对于内置容器的定制与优化主要有两种方式,第一种方式是通过配置文件来配置,另外一种是通过码代码的方式.接下来主要对上述两种方式进行实现. 2.通过配置文件来定制与优化Tomcat > 配置的核心内容参考org

  • 浅谈Spring的两种配置容器

    Spring提供了两种容器类型 SpringIOC容器是一个IOC Service Provider.提供了两种容器类型:BeanFactory和ApplicationContext.Spring的IOC容器是一个提供IOC支持的轻量级容器.除了基本的ioc支持,它作为轻量级容器还提供了IOC之外的支持. BeanFactory BeanFactory是基础类型IOC容器.顾名思义,就是生产Bean的工厂.能够提供完整的IOC服务.没有特殊指定的话,其默认采用延迟初始化策略.只有当客户端对象需要

  • Spring生命周期回调与容器扩展详解

    本篇主要总结下Spring容器在初始化实例前后,提供的一些回调方法和可扩展点.利用这些方法和扩展点,可以实现在Spring初始化实例前后做一些特殊逻辑处理. 下面主要介绍: 类级别的生命周期初始化回调方法init-method配置.InitializingBean接口和PostConstruct注解 容器级别的扩展BeanPostProcessor接口和BeanFactoryPostProcessor接口 1.类级别生命周期回调 1.1init-method 参照:Springbeanxsdin

  • docker连接spring boot和mysql容器方法介绍

    在之前使用docker部署运行了Spring Boot的小例子,但是没有使用数据库.在这一篇中,介绍docker如何启动mysql容器,以及如何将Spring Boot容器与mysql容器连接起来运行. docker基本命令 首先熟悉一下在操作过程中常用的docker基本命令: docker images:列出所有docker镜像 docker ps:列出所有运行中的容器,-a参数可以列出所有容器,包括停止的 docker stop container_id:停止容器 docker start

  • 利用注解配置Spring容器的方法

    本文介绍了利用注解配置Spring容器的方法,分享给大家,具体如下: @Configuration标注在类上,相当于将该类作为spring的xml的标签 @Configuration public class SpringConfiguration { public SpringConfiguration() { System.out.println("初始化Spring容器"); } } 主函数进行测试 public class Main { public static void m

  • 详解Java如何使用注解来配置Spring容器

    目录 介绍 @Bean and @Configuration AnnotationConfigApplicationContext实例化容器 通过使用 register(Class...) 以编程方式构建容器 @ComponentScan启用组件扫描 Bean的依赖 生命周期回调 Bean指定作用域 自定义bean名称 Bean别名 Bean注入之间的依赖 @Import @ImportResource @PropertySource 支持多个properties文件 ApplicationCo

  • Spring注解配置IOC,DI的方法详解

    目录 1.注解 @Component 第一步:在 applicationContext.xml 中引入命名空间 第二步:在 applicationContext.xml 文件中引入注解扫描器 第三步:在 Person 类中添加注解@Component 第四步:测试 2.@Repository @Service @Controller 3.注解@Resource 4.注解 @Autowired 第一步:创建接口 PersonDao 第二步:创建一个接口实现类 PersonDaoImplOne 第三

  • docker-compose 配置spring环境的方法步骤

    最近需要打包项目给成员们进行测试,但打包运行后很影响开发,于是打算使用docker模拟生产环境运行打包后的项目,这样就能既开发,又能给成员进行测试了. 由于原项目过大,打算先拿软件工程的大实验试试水,软件工程大实验使用的是spring-boot,redis,mysql,angular,nginx这些环境,先试了试后台的spring-boot,redis,mysql的docker搭建. docker-compose compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快

  • docker配置Runner容器的方法

    1.创建runner容器 mk@mk-pc:~/桌面$ docker run -di --name my-runner --net my-gitlab-net gitlab/gitlab-runner:latest addc6e08521a6f707494c7a05e63670331c76baaf261282bdd17e2e24268583b 2.配置runner和gitlab做一个关联 root@addc6e08521a:/# gitlab-runner register Runtime pl

  • eclipse下配置Spring环境的方法步骤

    工具: jdk1.8 win10 spring5.0 1.准备工作:下载Spring开发应用的插件,api 1.spring插件包:springsource-tool-suite-3.9.4.RELEASE-e4.8.0-updatesite.zip 2.logging日志api文件:commons-logging-1.2-bin.zip,然后解压 3.Spring-framework开发的api:spring-framework-5.0.5.RELEASE-dist.zip,然后解压 2. 安

  • Spring利用注解整合Mybatis的方法详解

    目录 一.环境准备 步骤1:数据库相关 步骤2:导入jar包 步骤3:创建模型类 步骤4:创建Dao接口和实现类 步骤5:创建Service接口和实现类 步骤6:添加jdbc.properties文件 步骤7:添加Mybatis核心配置文件 步骤8:编写测试程序 二.整合思路分析 三.整合步骤 步骤1:导入整合jar包 步骤2:创建数据源配置类 步骤3:创建Mybatis配置类 步骤4:创建Spring主配置类 步骤5:编写运行程序 一.环境准备 步骤1:数据库相关 建库建表 创建spring_

  • Spring常用注解 使用注解来构造IoC容器的方法

    使用注解来构造IoC容器 用注解来向Spring容器注册Bean.需要在applicationContext.xml中注册<context:component-scan base-package="pagkage1[,pagkage2,-,pagkageN]"/>. 如:在base-package指明一个包 <context:component-scan base-package="cn.gacl.java"/> 表明cn.gacl.java

  • Spring Aop之AspectJ注解配置实现日志管理的方法

    最近项目要做一个日志功能,我用Spring Aop的注解方式来实现. 创建日志注解 package com.wyj.annotation; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lan

  • 解决springboot利用ConfigurationProperties注解配置数据源无法读取配置信息问题

    @ConfigurationProperties是springboot新加入的注解,主要用于配置文件中的指定键值对映射到一个java实体类上.那么它是怎么发挥作用的呢?下面我们将揭开@ConfigurationProperties的魔法. ConfigurationPropertiesBindingPostProcessor这个bean后置处理器,就是来处理bean属性的绑定的,这个bean后置处理器后文将称之为properties后置处理器.你需要知道以下几件事: ioc容器context的e

随机推荐