博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Boot 7-SpringBoot运行原理实现
阅读量:5133 次
发布时间:2019-06-13

本文共 3009 字,大约阅读时间需要 10 分钟。

Spring Boot自动配置实战 1、新建Spring-boot-starter-hello项目。 2、新建HelloService.java
package com.tzp.helloworld.helloservice;public class HelloService {    private String msg;    public String sayHello() {        return "=======>>" + msg;    }    public String getMsg() {        return msg;    }    public void setMsg(String msg) {        this.msg = msg;    }}

 

2、新建HelloServiceProperties.java
package com.tzp.helloworld.helloproperties;import org.springframework.boot.context.properties.ConfigurationProperties;@ConfigurationProperties(prefix = "hello")public class HelloServiceProperties {    private static final String MSG = "World";        private String msg = MSG;    public String getMsg() {        return msg;    }    public void setMsg(String msg) {        this.msg = msg;    }    }

 

3、新建HelloServiceAutoConfigration.java
package com.tzp.helloworld.helloServiceConfigration;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;import org.springframework.boot.context.properties.EnableConfigurationProperties;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import com.tzp.helloworld.helloproperties.HelloServiceProperties;import com.tzp.helloworld.helloservice.HelloService;@Configuration@EnableConfigurationProperties(HelloServiceProperties.class)@ConditionalOnClass(HelloService.class)@ConditionalOnProperty(prefix = "hello",value = "enabled",matchIfMissing = true)public class HelloServiceAutoConfigration {    @Autowired    private HelloServiceProperties helloServiceProperties;        @Bean    @ConditionalOnMissingBean(HelloService.class)    public HelloService helloService() {        HelloService helloService = new HelloService();        helloService.setMsg(helloServiceProperties.getMsg());        return helloService;    }    }

 

4、mvn install将项目打成jar包,并将jar包添加到本地maven仓库。 5、接下来我们就可以在别的工程上使用该jar包了。
com.tzp
spring-boot-starter-hello
  
1.0.0
hello:  msg: 唐增平的springboot
package com.tzp.helloworld.controller;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Value;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import com.tzp.helloworld.helloservice.HelloService;@RestControllerpublic class HelloSpringBoot {    @Value("${melo.name}")    private String name;    @Autowired    private HelloService helloService;    @RequestMapping("/")    public String hello() {        return "hello spring boot " + name + helloService.getMsg();    }}
6、运行项目并访问。
 

 

 

转载于:https://www.cnblogs.com/zengpingtang/p/10803706.html

你可能感兴趣的文章
变量声明和定义的关系
查看>>
Wpf 之Canvas介绍
查看>>
linux history
查看>>
jQuery on(),live(),trigger()
查看>>
Python2.7 urlparse
查看>>
sencha touch在华为emotion ui 2.0自带浏览器中圆角溢出的bug
查看>>
【架构】Linux的架构(architecture)
查看>>
ASM 图解
查看>>
Date Picker控件:
查看>>
你的第一个Django程序
查看>>
grafana授权公司内部邮箱登录 ldap配置
查看>>
treegrid.bootstrap使用说明
查看>>
[Docker]Docker拉取,上传镜像到Harbor仓库
查看>>
javascript 浏览器类型检测
查看>>
nginx 不带www到www域名的重定向
查看>>
记录:Android中StackOverflow的问题
查看>>
导航,头部,CSS基础
查看>>
[草稿]挂载新硬盘
查看>>
[USACO 2017 Feb Gold] Tutorial
查看>>
关于mysql中GROUP_CONCAT函数的使用
查看>>