当前位置: 首页 > news >正文

维护网站建设空间出租姓氏logo免费设计在线生成

维护网站建设空间出租,姓氏logo免费设计在线生成,施工企业负责人培训,百度搜索数据查询一. 前言 哈喽#xff0c;大家好#xff0c;最近金九银十#xff0c;又有不少小伙伴私信辉哥#xff0c;说自己在面试时被问到SpringBoot如何自定义启动器#xff0c;结果自己不知道该怎么回答。那么今天就手把手地带着大家#xff0c;去看看在SpringBoot中到底该怎么实…一. 前言 哈喽大家好最近金九银十又有不少小伙伴私信辉哥说自己在面试时被问到SpringBoot如何自定义启动器结果自己不知道该怎么回答。那么今天就手把手地带着大家去看看在SpringBoot中到底该怎么实现自定义启动器。 二. 什么是SpringBoot自动装配 在进行代码实现之前我们先来看看什么是SpringBoot的自动装配。与自动装配对应的是手动装配比如我们以前使用xml配置文件引入spring或者引入mybatis时需要配置数据源、配置mybatis扫描、配置数据库连接池等。 而在SpringBoot中我们只需要引入对应的mybatis启动器、druid启动器和数据库驱动配置文件就可以自动根据配置数据库地址、用户和密码等信息快速地完成框架的搭建。也就是说我们只要引入启动器再配置一些必要的初始化连接参数就可以直接使用而不需要再自己创建很多复杂的配置就可完成Bean类之间的依赖。 这一切都依赖于SpringBoot的自动装配而自动装配则离不开starter启动器这个核心那么starter启动器是怎么实现的呢为了让大家搞明白这个问题就给大家手写一个自定义的启动器。 三. 自定义启动器 1.第一步首先创建一个java-maven的父工程 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.qfedu/groupIdartifactIdspringboot-auto/artifactIdversion1.0-SNAPSHOT/versionpackagingpom/packagingparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.1.3.RELEASE/versionrelativePath//parent /project 2.第二步创建一个子工程 3.引入依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdparentartifactIdspringboot-auto/artifactIdgroupIdcom.qfedu/groupIdversion1.0-SNAPSHOT/version/parentmodelVersion4.0.0/modelVersionartifactIddemo/artifactIddependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependencies /project 4.第三步创建另一个子模块 java2113-starter作为启动器 5.引入依赖 dependencies!-- 引入springboot 自动装配核心注解 --dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-autoconfigure/artifactId/dependency /dependencies 6.第四步编写代码 package com.qfedu.java2113;public class HelloService {private String msg;public String sayHello(){return hello msg;}public String getMsg() {return msg;}public void setMsg(String msg) {this.msg msg;} } 7.编写配置文件application.properties hello.msgbyebye 8.HelloServiceProperties类中读取配置文件的配置数据hello.msg package com.qfedu.java2113;import org.springframework.boot.context.properties.ConfigurationProperties;// 读取配置文件中 以 hello为前缀的值 设置到 msg 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;} } 9.完成自动配置的类HelloServiceAutoConfiguration.java package com.qfedu.java2113;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;/**** hello-2009-starter 启动器 对应的配置 类 HelloServiceAutoConfiguration* 每一个启动器都有一个 这样的配置类* HelloServiceAutoConfiguration 的 作用是* 将HelloServiceProperties 加入到容器* 将 HelloService 加入到容器 并且和 HelloServiceProperties 进行装配* HelloServiceAutoConfiguration 就是自动装配的配置类* 完成了 HelloServiceProperties 和 HelloService 之间的装配*/ Configuration //标记当前类是配置类,加载 HelloServiceProperties.class配置到容器中 EnableConfigurationProperties(HelloServiceProperties.class) // 让配置类HelloServiceProperties bean加入到容器中 public class HelloServiceAutoConfiguration {Autowiredprivate HelloServiceProperties helloServiceProperties;Bean// 将HelloService 加入到容器 // ConditionalOnMissingBean(HelloService.class) // 只有当容器中没有 bean HelloService ,加入到容器,如果有就不需要加入到容器了public HelloService helloService(){HelloService helloService new HelloService();helloService.setMsg(helloServiceProperties.getMsg());return helloService;} } 10.第五步让自动装配类生效 在resources 创建 resources\META-INF\spring.factories # Auto Configure 让自定义的 自动配置类生效 org.springframework.boot.autoconfigure.EnableAutoConfiguration\ com.qfedu.java2113.HelloServiceAutoConfiguration 11.安装到本地maven仓库 执行 mvn install命令。 12.第六步在demo中引入java2113-starter 启动器 13.第七步编写代码使用自定义启动器 13.1 配置文件初始化 13.2 使用 Autowiredprivate HelloService helloService;RequestMapping(/getHellMsg)public String getHellMsg(){return 获取msg: helloService.getMsg();} 14.第八步测试看效果 四. 总结 哈现在你跟着写出来了吗这样我们就通过自定义启动器很好地理解了SpringBoot的运行原理特别是SpringBoot的自动装配原理。大家可以跟着辉哥上面的实现步骤一步步地来只要效果出来了再逆向反推实现过程。你就会发现原来很多所谓的实现原理也并不难。 千锋教育Java入门全套视频教程(java核心技术适合java零基础Java自学必备)
http://www.zqtcl.cn/news/457387/

相关文章:

  • 建设网站类型wordpress竖版图片尺寸
  • 网站建设数据库ER图怎么画公司网站建设建议书
  • 网站建设网站制作有限排名优化课程
  • 绵竹网站建设佛山网络营销推广
  • 网站备案名称重复学会网站建设目的
  • 网站套餐到期什么意思孝感的网站建设
  • 网站制作费用多少钱房地产建筑设计公司
  • 网站优化要素做网站看百度脸色
  • 软件开发 网站开发区别seo怎么刷关键词排名
  • python 网站开发必会智能网站
  • 重庆建设摩托车官方网站网络是干什么的
  • 建筑工程网站源码wordpress 多域名 图片不显示
  • 大型网站建设优化排名wordpress 投稿 插件
  • 二维码的网站如何做静安免费网站制作
  • 微网站免费模板管理网络的网站
  • 网站下载软件政企网站建设
  • 网站设计为什么要域名北京移动端网站设计
  • 自做网站多少钱哪个网站的课件做的好
  • 网站开发实现页面的跳转怎么添加网站关键词
  • 个人签名设计网站企业网站html模板
  • 做网站编辑大专可以吗小网站搜什么关键词好
  • 百度网首页登录入口宁波seo管理
  • 怎么把网站做的更好常州网站制作建设
  • 站长平台seo深圳有做公司网站
  • dedecms怎么部署网站云南网站定制
  • 禅城网站开发我赢网seo优化网站
  • 百度收录规则桂林seo公司推荐23火星
  • 做百度推广是网站好还是阿里好python开发工具
  • 秦皇岛网站制作小程序开发作图网站
  • 网站建设完整版指数是什么意思