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

专用汽车网站模板wordpress大前端主题

专用汽车网站模板,wordpress大前端主题,WordPress 文艺,台州企业网站设计目录 一、Starter机制 1. 是什么 2. 有什么用 3. 应用场景 二、短信发送案例 1. 创建 2. 配置 3. 编写 4. 形成依赖 6. 其他项目的使用 每篇一获 一、Starter机制 1. 是什么 SpringBoot中的starter是一种非常重要的机制(自动化配置),能够抛弃以前繁杂…

目录

一、Starter机制

1. 是什么

2. 有什么用

3. 应用场景

二、短信发送案例

1. 创建

2. 配置 

3. 编写 

4. 形成依赖

6. 其他项目的使用

每篇一获


一、Starter机制

1. 是什么

SpringBoot中的starter是一种非常重要的机制(自动化配置),能够抛弃以前繁杂的配置,将其统一集成进starter,应用者只需要在maven中引入starter依赖,SpringBoot就能自动扫描到要加载的信息并启动相应的默认配置。starter让我们摆脱了各种依赖库的处理,需要配置各种信息的困扰。

SpringBoot中的starter也可以说是一种用于简化依赖管理和配置的工具。它们是一组预先配置好的依赖项和自动配置的模块,可以帮助开发人员快速地构建和部署SpringBoot应用程序。starter通常包含了所需的依赖项、自动配置和其他必要的设置,使开发人员可以更轻松地开始开发应用程序,而不必担心繁琐的配置和依赖项管理。SpringBoot提供了许多官方和第三方的starter,涵盖了各种不同的功能和需求,开发人员可以根据自己的需求选择合适的starter来加速应用程序的开发和部署过程。

2. 有什么用

在项目开发中使用SpringBoot Starter有以下几个好处:

1. 简化配置:SpringBoot Starter包含了一组预先配置好的依赖项和自动配置,可以帮助开发人员快速地构建和部署SpringBoot应用程序,减少了繁琐的配置工作。

2. 提高开发效率:使用SpringBoot Starter可以减少开发人员在配置和依赖项管理上的时间和精力,使开发人员可以更专注于业务逻辑的实现,从而提高开发效率。

3. 统一依赖管理:SpringBoot Starter可以帮助开发人员统一管理项目中的依赖项,避免因为版本冲突或者配置错误而导致的问题,简化了项目的依赖管理。

4. 提供标准化的配置:SpringBoot Starter提供了一种标准化的配置方式,使得不同的开发团队可以更容易地理解和维护项目的配置,降低了项目的维护成本。

总之,使用SpringBoot Starter可以帮助开发人员简化项目的配置和依赖管理,提高开发效率,降低项目的维护成本,是项目开发中的一个很好的选择。

3. 应用场景

在我们的日常开发工作中,可能会需要开发一个通用模块,以供其它工程复用。SpringBoot就为我们提供这样的功能机制,我们可以把我们的通用模块封装成一个个starter,这样其它工程复用的时候只需要在pom中引用依赖即可,由SpringBoot为我们完成自动装配。

常见应用场景

1)通用模块-短信发送模块

2)基于AOP技术实现日志切面

3)分布式雪花ID,Long转String,解决精度问题

4)微服务项目的数据库连接池配置

5)微服务项目的每个模块都要访问redis数据库,每个模块都要配置redisTemplat

在日常开发工作中,常见的应用场景包括但不限于:

  1. Web应用开发:开发基于Web的应用程序,包括前端和后端开发,使用各种框架和技术栈进行开发。

  2. 数据库开发:设计和维护数据库,编写SQL查询和存储过程,进行数据库优化和性能调优。

  3. API开发:设计和开发RESTful API或GraphQL API,用于不同系统之间的数据交换和通信。

  4. 移动应用开发:开发iOS和Android应用程序,使用Swift、Kotlin、React Native等技术进行开发。

  5. 容器化和微服务:使用Docker、Kubernetes等技术进行应用的容器化和微服务化,实现应用的高可用和可扩展性。

  6. 云平台开发:在云平台上进行开发,包括AWS、Azure、Google Cloud等,利用云服务进行应用部署和管理。

  7. DevOps实践:实施持续集成、持续交付和持续部署,自动化测试和部署流程,提高开发和部署效率。

  8. 数据分析和人工智能:开发数据分析和人工智能应用,使用机器学习、深度学习等技术解决实际问题。

  9. 物联网应用开发:开发连接物联网设备的应用程序,处理传感器数据和控制设备。

  10. 安全和隐私保护:实施应用安全和隐私保护措施,包括身份认证、授权、数据加密等。

这些应用场景涵盖了软件开发的各个方面,开发人员根据具体项目需求和技术栈选择相应的开发方式和工具。

二、短信发送案例

1. 创建

新建一个Starter(启动项)的SpringBoot项目,创建如图 :

其中Starter(启动项)的SpringBoot项目的工件名命名规范

  • SpringBoot官方命名方式:

  • spring-boot-starter-{模块名}

   例如:spring-boot-starter-web

  • 自定义命名方式:

  • {模块名}-spring-boot-starter

    例如:mystarter-spring-boot-starter 

选择如图中的两项即可。

创建完成之后,就直接修改maven设置,设置为自己的本地仓库,将maven引进项目中。 

2. 配置 

将application.properties的文件换成.yml后缀的文件

所用的依赖,pom.xml 中引入

将其中的

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

依赖修改为以下依赖 (去掉其中的[ -web ])

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>

starter项目和SpringBoot工程结构没有什么区别。必须引入的依赖:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional>
</dependency>

pom.xml 所有依赖

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.CloudJun.depend</groupId><artifactId>sms-spring-boot-start</artifactId><version>0.0.1-SNAPSHOT</version><name>depend</name><description>depend</description><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><spring-boot.version>2.7.6</spring-boot.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><!--starter项目的依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version><configuration><mainClass>com.cloudjun.depend.DependApplication</mainClass><skip>true</skip></configuration><executions><execution><id>repackage</id><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build></project>

starter项目中 application.yml 配置文件的配置如下 : 

#server:
#    port: 8080
sms:key: 2000secret: 2023enable: true

3. 编写 

创建 SmsProperties 短信配置类

package com.cloudjun.depend;import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/*** @author CloudJun* @create  2023-12-14 17:55*/
@Data
//@Component定义组件,交给spring进行管理
//@Component
//prefix = "sms"定义配置文件前缀,如果在yml文件中有sms前缀将进行匹配获取
@ConfigurationProperties(prefix = "sms")
public class SmsProperties {@Value("${sms.key}")private  String key;//应用标识@Value("${sms.secret}")private  String secret; //应用密钥private  String enable; //是否启用}

创建 ISmsService 接口

package com.cloudjun.depend.service;public interface ISmsService {/*** 发送短信* @param phone        要发送的手机号* @param data         要发送的内容*/void send(String phone, String data);}

实现接口  SmsServiceImpl

package com.cloudjun.depend.service;import com.cloudjun.depend.SmsProperties;public class SmsServiceImpl implements ISmsService {private SmsProperties smsProperties; //nullpublic SmsServiceImpl(SmsProperties smsProperties) {this.smsProperties=smsProperties;}@Overridepublic void send(String phone, String data) {String key = smsProperties.getKey();String secret = smsProperties.getSecret();System.out.println("接入短信系统,Key=" + key + ",Secret=" + secret);System.out.println("短信发送,phone=" + phone + ",data=" + data);}}

创建一个控制类 SmsConfig    ,service是否加载到spring里面去,(true)加载就使用这个依赖项目,(false)不加载就不使用这个依赖项目

package com.cloudjun.depend;import com.cloudjun.depend.service.ISmsService;
import com.cloudjun.depend.service.SmsServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
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;@Configuration  //表明当前类是一个配置类
@EnableConfigurationProperties({SmsProperties.class})//开启配置加载,加载指定的SmsProperties.class
//添加一个条件  (prefix):匹配.yml文件中sms前缀的 (name): 属性enable的 (havingValue): 值 true 为开启配置加载 false 为禁用配置加载
@ConditionalOnProperty(prefix = "sms",name = "enable",havingValue = "true")
public class SmsConfig {//控制当前的service是否加载到spring里面去@Autowiredprivate SmsProperties smsProperties;@Bean //该@Bean注解在方法上,表示该方法在spring运行的时候自动执行该方法,如有返回值,会被放到spring的容器中public ISmsService smsService(){return new SmsServiceImpl(smsProperties);}}

在resources下新建META-INF文件夹,然后创建spring.factories文件;

在该文件中加入如下配置,该配置指定上步骤中定义的配置类为自动装配的配置:

 配置指定的配置类

org.springframework.boot.autoconfigure.EnableAutoConfiguration
=com.cloudjun.depend.SmsConfig

在测试类中进行测试 DependApplicationTests

package com.cloudjun.depend;import com.cloudjun.depend.service.ISmsService;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;@SpringBootTest
class DependApplicationTests {@Autowiredprivate SmsProperties smsProperties;@Autowiredprivate ISmsService iSmsService;@Testvoid contextLoads() {iSmsService.send("158","IKUN");}}

执行方法

展示的结果为 : 

4. 形成依赖

将完成好的Starter项目安装下载成依赖,操作如图 : 

在右侧点击Maven,打开生命周期,双击执行install

找到我们的Maven本地仓库的路径,在按照项目的组名进行查找,这个依赖是否已经完成。

在pom.xml文件中可以查询组名 : 

查询如图,有生成的依赖即可。

6. 其他项目的使用

我们在打开一个项目,在项目中增加这个依赖就可以使用短信发送的项目了

在新打开的项目中增加引用短信发送的项目的依赖

       <dependency><groupId>com.CloudJun.depend</groupId><artifactId>sms-spring-boot-start</artifactId><version>0.0.1-SNAPSHOT</version></dependency>

这里的引用是短信发送的项目中pom.xml文件中对应的groupId,artifactId,version

并且在新打开的项目中,找到.yml文件,增加配置

#定义应用
sms:key: 2000 #标识secret: 2023 #密钥enable: true #true 启用 false 禁用

在新打开的项目中,进行测试使用

每篇一获

学习以上这些技术可以为我们带来很多收获,包括但不限于:

1. 扩展技术视野:学习不同的技术和工具可以帮助我们拓宽技术视野,了解不同领域的发展趋势和最佳实践。

2. 提升解决问题的能力:掌握多种技术和工具可以帮助我们更好地解决复杂的问题,选择合适的技术栈和解决方案。

3. 增强适应能力:学习多种技术可以增强我们的适应能力,更快速地适应新的工作环境和项目需求。

4. 提高职业竞争力:掌握多种技术和工具可以提高我们在职场上的竞争力,更容易找到理想的工作机会。

5. 促进跨团队合作:了解多种技术可以更好地与其他团队成员合作,促进跨团队的协作和沟通。

6. 增加创新思维:学习多种技术可以激发我们的创新思维,帮助我们更好地解决问题和提出新的解决方案。

总之,学习多种技术可以为我们带来丰富的收获,有助于提升个人能力和职业发展。

http://www.yayakq.cn/news/349257/

相关文章:

  • php网站开发前端网页源代码怎么看懂
  • 北京代建网站网页设计报告论文
  • 做模特网站做商城网站应该用什么程序
  • 网站开发主要学什么网站开发立项申请表
  • 做网站要切图吗工地临时工400元一天
  • 网站的做代理商太原市建设交易中心网站
  • 国外网站推广如何做不用模板怎么建设网站
  • 设计师学编程能自己做网站吗腾讯云获取WordPress密码
  • 95598网站服务建设厂房网络推广平台
  • 免费建站公司联系方式培训公司网站建设
  • 北京电商平台网站建设网站seo在线优化
  • 双语网站怎么做中山做网站专业的公司
  • 使用wordpress的购物网站阿里云网站建设优化
  • 淄博企业网站建设哪家专业如何利用网站开发客户
  • wordpress 哪些网站吗网站因备案关闭
  • 摄影作品网站或app字体在线设计网站
  • 网站页面布局优化襄阳网站seo公司
  • 我自己做个网站怎么做茌平做网站公司
  • 简约的网站常州网站设计公司
  • 舟山网站建设seo建自己博客网站
  • 高端网站设计教程什么是网站实施
  • 网站怎么做关键词搜索排面太原关键词排名首页
  • 网站 建设 成品微信营销模式
  • 免费中英文网站模板学做蛋糕什么网站
  • 广州网站建设大公司排名深圳做网站建设和维护专员管理层
  • 张家口网站设计小说网站怎么做词
  • 网站搭建论文wordpress配置要求
  • 泰州做网站软件合肥做网站公司有哪些
  • 做外贸企业网站网站新闻页设计
  • 胶南市场建设服务中心网站管理信息系统