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

欧美做暖网站网络营销的主要内容包括

欧美做暖网站,网络营销的主要内容包括,网上购物系统功能模块,企业网站建设策划方案为什么要开发专用的Spring Boot Starter Spring在通常使用时,一般是通过pom.xml文件中引入相关的jar包,然后再通过application.yml文件配置初始化bean的配置,但随着项目越来越复杂或是项目组中的应用数量越来越多,可能会带来几个…

为什么要开发专用的Spring Boot Starter

Spring在通常使用时,一般是通过pom.xml文件中引入相关的jar包,然后再通过application.yml文件配置初始化bean的配置,但随着项目越来越复杂或是项目组中的应用数量越来越多,可能会带来几个问题:

  1. jar包依赖越来越多;
  2. 同一jar包的版本在不同的应用中可能不一样,甚至会发生冲突依赖;
  3. 自定义的配置没有相应的文档辅助,导致很多配置无从查找,进而可能会出现应用中重复开发;
  4. 最终,导致项目组中技术基线不统一,而且在很长一段时间内很难统一;
    在这里插入图片描述
    上述问题的解决方案有两种,一是定义一个通用的pom.xml,但公用的pom.xml也存在维护等问题,另一个问题是基础的pom.xml只是一个maven依赖配置,无法携带公用的java代码。
    在这里插入图片描述

所以最好的解决文案就是采用自定义的starter。
在这里插入图片描述

开发步骤

1. 新建Maven项目,在项目的POM文件中定义使用的依赖;
2. 新建配置类,写好配置项和默认的配置值,指明配置项前缀;
4. 新建自动装配类,使用@Configuration@Bean来进行自动装配;
5. 新建spring.factories文件,指定Starter的自动装配类;

自定义的 Spring Boot Starter实现

自定义的Spring Boot Starter就是一个普通的spring项目,下面就一步步来实现。
在这里插入图片描述

创建工程

创建一个springboot类型的模块。如下图所示,一路默认即可:
在这里插入图片描述

pom.xml依赖

这里的pom.xml依赖没有太严格的要求,就是按需引入,比如你在自定义的starter中实现了一些功能,比如jdbc操作mysql功能,那么是肯定要引入mysql-driver.jar驱动包的,因为这样才能做到版本统一管理,

但统一建议添加<optional>true</optional>不传递。这样防止多层依赖时冲突的发生。如下:

  • Starter 命名规则,即artifactId命名规则:Spring 官方定义的 Starter 通常命名遵循的格式为 spring-boot-starter-{name},例如 spring-boot-starter-data-mongodb。Spring 官方建议,非官方 Starter 命名应遵循 {name}-spring-boot-starter 的格式,例如,myjson-spring-boot-starter。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><!-- starter坐标 --><groupId>com.korgs</groupId><artifactId>korgs-framework-spring-boot-starter</artifactId><name>framework-springboot-starter</name><version>1.0-SNAPSHOT</version><packaging>jar</packaging><!--编译版本,这个一定要指定 --><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><!-- 功能依赖,scope按需添加,但注意添加optional=true,不强制但建议 --><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><version>3.2.4</version><scope>compile</scope><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><version>3.2.4</version><scope>annotationProcessor</scope><optional>true</optional></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.30</version><scope>annotationProcessor</scope><optional>true</optional></dependency></dependencies></project>

AppConfig自定义配置类实现

这个示例中,只是为了演示,如何在application.yml文件中添加自定义的配置,因为自定义的starter除了做maven管理外,另一个主要目的就是实现一些基础的功能(可配置)。

package com.korgs.framework.starter;import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;@Slf4j
@Configuration
@Data
@ConfigurationProperties(prefix = "framework.config")
public class AppConfig {String appRegisterName;/*可以通过这种方式实现一次功能上的扩展,总之是和正常的项目开发没太大区别*//*@Beanpublic AppServer appServer(){return  new AppServer(appRegisterName);}*/
}

spring.factories配置

src/resources/META-INF/目录下新建一个名为spring.factories的文件,META-INF这个目录需要手动创建一下,添加以下内容:

org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.korgs.framework.starter.AppConfig

spring.factories文件的作用是,springboot启动时会扫描jar下的spring.factories文件,如果发现了就根据配置内容执行相应的初始化工作。

工程打包

最后运行 mvn -clear install安装在本地maven缓存中,测试好了之后可以发布到公司的maven私服上面。
在这里插入图片描述

测试自定义的 Spring Boot Starter

再新建一个springboot工程,然后引入上面的自定义starter包。比如:

        <dependency><groupId>com.korgs</groupId><artifactId>korgs-framework-spring-boot-starter</artifactId><version>1.0-SNAPSHOT</version></dependency>

application.properties配置

这时在application.properties中配置时,如果是idea就会有提示功能(但这并不是最重要的):
在这里插入图片描述

AppConfig配置类测试

其实上面自定义的starter就是一个普通的配置类,和本模块中代码实现一样,比如:
在这里插入图片描述

http://www.ritt.cn/news/9878.html

相关文章:

  • 网站页头页尾怎么做浏览器缓冲设置网站seo诊断分析和优化方案
  • b s架构做的网站西安seo优化
  • 宝安自适应网站建设整合网络营销外包
  • 赣州企业网站建设游戏交易平台
  • 企业建站的费用上海百度推广开户
  • WordPress单页生成插件seo公司彼亿营销
  • 河北新闻网丽水百度seo
  • 建筑人才招聘网站平台手机网站免费客服系统
  • 兰州公司做网站推广活动策划方案范文
  • 运城做网站网络广告策划书范文
  • 网站开发公司 优帮云今日nba比赛直播
  • 济南网站免费制作新闻网最新消息
  • 漂亮的个人网站搜狗搜索网页版
  • 谁会在西安做网站的吗网络营销方法有哪些举例
  • 合肥市住房和城乡建设局seo定义
  • 网站建设常用视频格式郑州seo顾问热狗hotdoger
  • 做网站怎么移动图片杭州优化关键词
  • 网站建设公司net2006引擎搜索技巧
  • 完美建设工程有限公司网站seo排名
  • 用easyui皮肤做漂亮的网站雅虎搜索引擎
  • 手机网站建设比较好的公司互联网营销策划案
  • 做网站怎样安全采集营销策划方案模板范文
  • 海南网站建设中心公司网站模板设计
  • wordpress的后台链接seo优化推广多少钱
  • 网站后台密码存在哪域名备案查询站长工具
  • 福田网站建设哪家好怎么推广网页
  • 做网站分pc端和移动端的吗seo关键词推广
  • 搭建钓鱼网站教程网络推广的调整和优化
  • 门户网站建设公司案例新闻营销发稿平台
  • h5网站模板开发app推广策略