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

西安工程建设信息网站pc端ui设计

西安工程建设信息网站,pc端ui设计,开的免费网站能赚钱吗,如何自己开发一款appSpring Boot如何实现自定义Spring Boot启动器 在Spring Boot中#xff0c;启动器#xff08;Starter#xff09;是一组依赖项的集合#xff0c;它们一起提供了某个特定的功能。使用Spring Boot启动器可以让我们更加方便地集成第三方库和框架#xff0c;并且可以避免版本冲…Spring Boot如何实现自定义Spring Boot启动器 在Spring Boot中启动器Starter是一组依赖项的集合它们一起提供了某个特定的功能。使用Spring Boot启动器可以让我们更加方便地集成第三方库和框架并且可以避免版本冲突等问题。在本文中我们将介绍如何实现自定义Spring Boot启动器并提供一个示例代码。 什么是Spring Boot启动器 Spring Boot启动器是一组依赖项的集合它们一起提供了某个特定的功能。启动器通常包括一组依赖项和一些默认的配置信息它们可以帮助我们更加方便地集成第三方库和框架并且可以避免版本冲突等问题。 Spring Boot提供了很多内置的启动器例如spring-boot-starter-web、spring-boot-starter-data-jpa等。这些启动器可以帮助我们快速地搭建一个Web应用程序或者一个数据访问层而无需手动配置依赖项和默认配置信息。 自定义Spring Boot启动器 除了可以使用Spring Boot内置的启动器外我们还可以自己定义一个Spring Boot启动器。自定义Spring Boot启动器可以帮助我们更加方便地集成第三方库和框架并且可以提高应用程序的可维护性和可扩展性。下面我们将介绍如何实现自定义Spring Boot启动器并提供一个示例代码。 创建Maven项目 首先我们需要创建一个Maven项目并添加必要的依赖项和插件。在pom.xml文件中我们需要添加spring-boot-starter-parent、spring-boot-starter-test等Spring Boot相关的依赖项以及maven-assembly-plugin插件和spring-boot-maven-plugin插件。具体的pom.xml文件内容如下 project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns: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.example/groupIdartifactIdmy-starter/artifactIdversion1.0.0-SNAPSHOT/versionnameMy Starter/namedescriptionMy custom Spring Boot starter/descriptionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.6.0/versionrelativePath//parentdependencies!-- Add your dependencies here --/dependenciesbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-assembly-plugin/artifactIdversion3.2.0/versionconfigurationarchivemanifestmainClasscom.example.MyStarterApplication/mainClass/manifest/archivedescriptorRefsdescriptorRefjar-with-dependencies/descriptorRef/descriptorRefs/configurationexecutionsexecutionidmake-assembly/idphasepackage/phasegoalsgoalsingle/goal/executions/pluginplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build /project创建自定义配置类 接下来我们需要创建一个自定义的配置类用于定义一些默认的配置信息。在该配置类中我们可以使用Configuration注解和Bean注解来定义一些Bean以及使用ConfigurationProperties注解来绑定配置文件中的属性值。具体的代码如下 Configuration ConfigurationProperties(prefix my.starter) public class MyStarterAutoConfiguration {private String message Hello, World!;public String getMessage() {return message;}public void setMessage(String message) {this.message message;}Beanpublic MyStarterService myStarterService() {return new MyStarterService(message);} }在上述代码中我们创建了一个名为MyStarterAutoConfiguration的配置类并使用ConfigurationProperties注解绑定了配置文件中的my.starter前缀的属性值。我们还定义了一个名为myStarterService的Bean并使用Bean注解将该Bean注册到Spring容器中。 创建自定义启动器在自定义配置类之后我们需要创建自定义的启动器。在Spring Boot中启动器通常以spring-boot-starter-*的命名格式命名。因此在本文中我们将创建一个名为my-starter-spring-boot-starter的自定义启动器。 创建启动器项目 我们首先需要在Maven项目中创建一个新的模块用于存放自定义启动器的代码。在该模块中我们需要创建一个名为my-starter-spring-boot-starter的Maven项目并添加必要的依赖项和插件。具体的pom.xml文件内容如下 project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns: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/modelVersionparentgroupIdcom.example/groupIdartifactIdmy-starter/artifactIdversion1.0.0-SNAPSHOT/version/parentartifactIdmy-starter-spring-boot-starter/artifactIdversion1.0.0-SNAPSHOT/versionnameMy Starter Spring Boot Starter/namedescriptionMy custom Spring Boot starter/descriptiondependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-autoconfigure/artifactIdversion2.6.0/version/dependencydependencygroupIdcom.example/groupIdartifactIdmy-starter/artifactIdversion1.0.0-SNAPSHOT/version/dependency/dependenciesbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-jar-plugin/artifactIdversion3.2.0/versionconfigurationarchivemanifestmainClasscom.example.MyStarterApplication/mainClass/manifest/archive/configuration/plugin/plugins/build /project在上述代码中我们创建了一个名为my-starter-spring-boot-starter的Maven项目并添加了spring-boot-autoconfigure和my-starter的依赖项。这些依赖项将帮助我们自定义启动器和自动配置类。 创建自动配置类 接下来我们需要在自定义启动器模块中创建一个自动配置类用于定义自定义启动器提供的功能。在该自动配置类中我们可以使用Configuration注解和ConditionalOnClass注解来定义一些Bean并使用Bean注解将这些Bean注册到Spring容器中。具体的代码如下 Configuration ConditionalOnClass(MyStarterService.class) EnableConfigurationProperties(MyStarterProperties.class) public class MyStarterAutoConfiguration {private final MyStarterProperties properties;public MyStarterAutoConfiguration(MyStarterProperties properties) {this.properties properties;}BeanConditionalOnMissingBeanpublic MyStarterService myStarterService() {return new MyStarterService(properties.getMessage());} }在上述代码中我们创建了一个名为MyStarterAutoConfiguration的自动配置类并使用ConditionalOnClass注解来判断当前应用程序是否存在MyStarterService类。如果存在该类则该自动配置类才会生效。 另外我们还使用EnableConfigurationProperties注解来启用配置属性类MyStarterProperties并在构造函数中注入该类。我们还定义了一个名为myStarterService的Bean并使用Bean注解将该Bean注册到Spring容器中。在这里我们使用ConditionalOnMissingBean注解来判断是否已经存在名为myStarterService的Bean。如果不存在则创建一个新的Bean。 创建配置属性类 除了自动配置类外我们还需要创建一个配置属性类用于定义自定义启动器的属性值。在该类中我们可以使用ConfigurationProperties注解来绑定属性值。具体的代码如下 ConfigurationProperties(prefix my.starter) public class MyStarterProperties {private String message Hello, World!;public String getMessage() {return message;}public void setMessage(String message) {this.message message;} }在上述代码中我们创建了一个名为MyStarterProperties的配置属性类并使用ConfigurationProperties注解绑定了配置文件中的my.starter前缀的属性值。其中message属性的默认值为Hello,World!。 创建自定义启动器类 最后我们需要创建一个自定义启动器类用于将自定义启动器的自动配置类和配置属性类注册到Spring容器中。在该类中我们可以使用EnableAutoConfiguration注解和Import注解来注册自动配置类和配置属性类。具体的代码如下 Configuration EnableAutoConfiguration Import({MyStarterAutoConfiguration.class, MyStarterProperties.class}) public class MyStarterAutoConfigurationImportSelector implements ImportSelector {Overridepublic String[] selectImports(AnnotationMetadata importingClassMetadata) {return new String[]{MyStarterAutoConfiguration.class.getName(),MyStarterProperties.class.getName()};} }在上述代码中我们创建了一个名为MyStarterAutoConfigurationImportSelector的自定义启动器类并使用EnableAutoConfiguration注解和Import注解将自动配置类和配置属性类注册到Spring容器中。另外我们还实现了ImportSelector接口并重写了selectImports方法用于返回需要导入的类的全限定名数组。 创建示例应用程序 最后我们需要创建一个示例应用程序用于演示如何使用自定义启动器。在该应用程序中我们可以直接引入自定义启动器的依赖项然后使用自定义的配置属性和Bean。具体的代码如下 SpringBootApplication public class MyApp {public static void main(String[] args) {SpringApplication.run(MyApp.class, args);}Autowiredprivate MyStarterService myStarterService;GetMapping(/hello)public String sayHello() {return myStarterService.sayHello();} }在上述代码中我们创建了一个名为MyApp的Spring Boot应用程序并在其中注入了自定义启动器提供的Bean myStarterService。在sayHello方法中我们调用myStarterService的sayHello方法返回一个字符串。 测试自定义启动器 现在我们可以使用mvn clean install命令将自定义启动器打包成一个可执行的jar包并将其安装到本地Maven仓库中。然后我们可以创建一个新的Spring Boot应用程序并在其中引入自定义启动器的依赖项。具体的步骤如下 在Maven项目的根目录下运行mvn clean install命令将自定义启动器打包成一个可执行的jar包并安装到本地Maven仓库中。 创建一个新的Spring Boot应用程序并在pom.xml文件中添加自定义启动器的依赖项具体如下 dependencygroupIdcom.example/groupIdartifactIdmy-starter-spring-boot-starter/artifactIdversion1.0.0-SNAPSHOT/version /dependency在应用程序的配置文件例如application.yml中可以使用my.starter前缀来配置自定义启动器的属性值具体如下 my:starter:message: Hello, Spring Boot!在应用程序中可以通过Autowired注解注入自定义启动器提供的Bean并调用其中的方法具体如下 Autowired private MyStarterService myStarterService;GetMapping(/hello) public String sayHello() {return myStarterService.sayHello(); }启动应用程序并访问http://localhost:8080/hello可以看到浏览器中显示的字符串为Hello, Spring Boot!。 总结 在本文中我们介绍了如何实现自定义Spring Boot启动器包括创建自动配置类、配置属性类和自定义启动器类并演示了如何在示例应用程序中使用自定义启动器。自定义启动器可以帮助我们封装常用的配置和Bean并提供给其他应用程序使用从而提高开发效率和代码复用性。
http://www.dnsts.com.cn/news/101079.html

相关文章:

  • 在线网站建设教程肯德基的网站建设
  • 360建站平台网站发稿平台
  • 安徽建筑大学城市建设学院网站网站上切换语言是怎么做的
  • 比较还做的调查网站网站图标在哪里修改
  • 网站目录生成软件界面设计要求
  • 网站外连抖音开放平台橡塑app
  • 建设ca网站visual studio怎么做网页
  • 如何建设自己的网站 知乎购物网站开发可行性
  • 网站备案的是空间还是域名wordpress 用什么编辑器
  • 免费又实用的网站去什么网站做推广
  • 清河做网站哪儿便宜只建设电子商务网站不维护
  • 网站建设与维护模拟一1网站建设
  • 建设风景区网站的目的产品创意设计
  • 网站建设方案书0深圳企业展厅设计公司
  • php asp网站开发学校招聘教师网站建设
  • 做网站怎样收费的两栏式设计网站
  • 苏州做管网gis的网站古镇企业网站建设定制
  • 陕西咸阳网站建设淄博北京网站建设
  • 做门户网站需要准备什么中铁建设集团有限公司领导名单
  • 阿里云空间可以做网站吗如何建立一个小程序
  • 重庆建新建设工程有限公司网站前端网站开发的公用头部
  • 网站域名解析到了空间 但空间未绑定此域名网站建设和优化需要几个人
  • flask公司网站开发品牌网站运营
  • 手机网站自动适配海南在线 海南一家
  • intitle 网站建设wordpress 置顶 函数
  • 我国企业网站的建设情况网站头部导航代码
  • 网站搬家数据库配置做网站美工赚钱吗
  • 企业网站开发信息网店美工的意义
  • 自己做的网站链接上海网站建设公司兴田德润放心
  • 服务器迁移对做网站的影响网页升级紧急通知狼急通知