最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot分離打Jar包的兩種配置方式

 更新時間:2022年11月25日 17:04:46   作者:SerikaOnoe  
這篇文章主要介紹了SpringBoot分離打Jar包的兩種配置方式,方式一是基于maven-jar-plugin,方式二是基于spring-boot-maven-plugin,文中結合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下

SpringBoot分離打Jar包的兩種方式

方式一:基于maven-jar-plugin

此方式基于這個小伙伴的配置改的:http://m.fzitv.net/article/188606.htm

注意

  • 這種方式打包出來的Jar基于插件提供的類加載器啟動:org.springframework.boot.loader.PropertiesLauncher
  • 所有依賴包(包括systemScope),會通過插件 maven-dependency-plugin 自動復制到 lib 目錄
  • 所有資源文件,會通過插件 maven-resources-plugin 自動復制到 config 目錄
  • 此方式打包后,需要指定參數(shù)啟動 -Dloader.path=lib路徑,config路徑
  • 打包完后部署需要的文件清單:(在 target/ 目錄下都可以看到)
    • config/**:所有resources下的資源文件
    • lib/**:所有l(wèi)ib包,包括本地依賴
    • xxx.jar:應用Jar
  • 運行:java -Dloader.path=lib,config -Dspring.profiles.active=dev -jar main.jar

簡略版配置

<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">
	<properties>
		<!--依賴輸出目錄-->
		<lib-path>lib</lib-path>
		<!--配置文件輸出目錄-->
		<config-path>config</config-path>
		<!--jar包名稱-->
		<final-name>xxx</final-name>
		<!--指定啟動類-->
		<main-class>org.jeecg.JeecgSystemApplication</main-class>
	</properties>

	<build>
		<!--項目名稱-->
		<finalName>${final-name}</finalName>
		<plugins>
			<!--定義項目的編譯環(huán)境-->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>
			<!--maven的測試用例插件,建議跳過。-->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<skip>true</skip>
				</configuration>
			</plugin>
			<!--這個是springboot的默認編譯插件,他默認會把所有的文件打包成一個jar-->
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<skip>true</skip>
				</configuration>
			</plugin>
			<!-- 打自定義的JAR包 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<configuration>
					<archive>
						<manifest>
							<addClasspath>true</addClasspath>
							<!-- MANIFEST.MF 中 Class-Path 加入前綴 -->
							<classpathPrefix>${lib-path}/</classpathPrefix>
							<!-- jar包不包含唯一版本標識 -->
							<useUniqueVersions>false</useUniqueVersions>
							<!--指定入口類 -->
							<mainClass>${main-class}</mainClass>
						</manifest>
						<manifestEntries>
							<!--MANIFEST.MF 中 Class-Path 加入資源文件目錄 -->
							<!--本地依賴,多個需要使用空格隔開-->
							<Class-Path>./${config-path}/ lib/zwdd-1.2.0.jar lib/spire-10.jar</Class-Path>
						</manifestEntries>
					</archive>
					<outputDirectory>${project.build.directory}</outputDirectory>
				</configuration>
			</plugin>
			<!-- 該插件的作用是用于復制依賴的jar包到指定的文件夾里 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>copy-dependencies</id>
						<phase>package</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.directory}/${lib-path}/</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<!-- 該插件的作用是用于復制指定的文件 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<executions>
					<!-- 復制配置文件 -->
					<execution>
						<id>copy-resources</id>
						<phase>package</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<resources>
								<!--復制資源文件到外部,注意這里先不做filtering處理,防止某些靜態(tài)文件損壞-->
								<resource>
									<filtering>false</filtering>
									<directory>src/main/resources</directory>
									<includes>
										<include>**/*</include>
									</includes>
								</resource>
								<!--僅針對yml配置文件filtering處理(占位符@@等)-->
								<resource>
									<filtering>true</filtering>
									<directory>src/main/resources</directory>
									<includes>
										<include>*.yml</include>
									</includes>
								</resource>
							</resources>
							<outputDirectory>${project.build.directory}/${config-path}</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
		<resources>
			<!--包含java類路徑下的資源文件(mybatis的xml等)-->
			<resource>
				<directory>src/main/java</directory>
				<filtering>false</filtering>
				<includes>
					<include>**/*.xml</include>
					<include>**/*.json</include>
					<include>**/*.ftl</include>
				</includes>
			</resource>
			<!--排除jar包內(nèi)的所有resources配置文件-->
			<resource>
				<directory>src/main/resources</directory>
				<filtering>false</filtering>
				<excludes>
					<exclude>**/*</exclude>
				</excludes>
			</resource>
			<!--注: 為了能在IDEA中跑起來,需要將所有yml配置文件打進jar包,filtering必須開啟(處理占位符等操作)-->
			<resource>
				<directory>src/main/resources</directory>
				<filtering>true</filtering>
				<includes>
					<include>*.yml</include>
				</includes>
			</resource>
		</resources>
	</build>
</project>

完整配置(帶部分注釋)

<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">
	<parent>
		<groupId>org.jeecgframework.boot</groupId>
		<artifactId>jeecg-boot-parent</artifactId>
		<version>2.4.0</version>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	<artifactId>jeecg-boot-module-system</artifactId>
	<repositories>
		<repository>
			<id>aliyun</id>
			<name>aliyun Repository</name>
			<url>http://maven.aliyun.com/nexus/content/groups/public</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
	</repositories>
	<dependencies>
		<dependency>
			<groupId>com.spire</groupId>
			<artifactId>spire</artifactId>
			<version>10</version>
			<scope>system</scope>
			<systemPath>${project.basedir}/../lib/Spire.Doc.jar</systemPath>
		</dependency>
		<dependency>
			<groupId>com.zwdd.api</groupId>
			<artifactId>zwdd</artifactId>
			<version>1.2.0</version>
			<scope>system</scope>
			<systemPath>${project.basedir}/../lib/zwdd-sdk-java-1.2.0.jar</systemPath>
		</dependency>
	</dependencies>

	<properties>
		<!--依賴輸出目錄-->
		<lib-path>lib</lib-path>
		<!--springboot默認打包輸出目錄-->
		<jar-path>jar</jar-path>
		<!--配置文件輸出目錄-->
		<config-path>config</config-path>
		<!--jar包名稱-->
		<final-name>xxx</final-name>
		<!--指定啟動類-->
		<main-class>org.jeecg.JeecgSystemApplication</main-class>
	</properties>

	<build>
		<!--項目名稱-->
		<finalName>${final-name}</finalName>
		<plugins>
			<!--定義項目的編譯環(huán)境-->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>
			<!--maven的測試用例插件,建議跳過。-->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<skip>true</skip>
				</configuration>
			</plugin>
			<!--這個是springboot的默認編譯插件,他默認會把所有的文件打包成一個jar,注意這里打包出來不會包含systemScope的jar包,有需要的話得在最后的resources里配置-->
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>repackage</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<!--這里僅展示插件作用,直接跳過此插件-->
					<skip>true</skip>
					<mainClass>${main-class}</mainClass>
					<fork>true</fork>
					<addResources>true</addResources>
					<!--指定激活的配置文件application-xxx.yml-->
					<profiles>${profile.name}</profiles>
					<outputDirectory>${project.build.directory}/${jar-path}</outputDirectory>
				</configuration>
			</plugin>
			<!-- 打自定義的JAR包 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<configuration>
					<!-- 不打包資源文件(配置文件和依賴包分開),這里配置的資源排除,僅在*.xml這類文件通配符篩選生效,因此不在這里處理 -->
					<excludes>
						<!--這種文件方式匹配可以生效-->
						<!--<exclude>*.yml</exclude>-->
						<!--下面這種方式配置是無效的,見:https://stackoverflow.com/questions/4113697/in-maven-how-to-exclude-resources-from-the-generated-jar-->
						<!--上述問題鏈接中有此描述:<exclude>src/test/resources/**</exclude> doesn't work. Exclude will be applied on jar final path and should be <exclude>*.properties</exclude>-->
						<!--<exclude>src/main/resources/**</exclude>-->
					</excludes>
					<archive>
						<manifest>
							<addClasspath>true</addClasspath>
							<!-- MANIFEST.MF 中 Class-Path 加入前綴 -->
							<classpathPrefix>${lib-path}/</classpathPrefix>
							<!-- jar包不包含唯一版本標識 -->
							<useUniqueVersions>false</useUniqueVersions>
							<!--指定入口類 -->
							<mainClass>${main-class}</mainClass>
						</manifest>
						<manifestEntries>
							<!--MANIFEST.MF 中 Class-Path 加入資源文件目錄 -->
							<!--本地依賴,多個需要使用空格隔開-->
							<Class-Path>./${config-path}/ lib/zwdd-1.2.0.jar lib/spire-10.jar</Class-Path>
						</manifestEntries>
					</archive>
					<outputDirectory>${project.build.directory}</outputDirectory>
				</configuration>
			</plugin>
			<!-- 該插件的作用是用于復制依賴的jar包到指定的文件夾里 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>copy-dependencies</id>
						<phase>package</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<!--這里可以手動添加構建id,但默認是全打包就不需要了-->
							<!--<includeArtifactIds>xxxx</includeArtifactIds>-->
							<!--默認包含所有scope,因此本地的依賴也正常復制-->
							<!--<includeScope>system</includeScope>-->
							<outputDirectory>${project.build.directory}/${lib-path}/</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<!-- 該插件的作用是用于復制指定的文件 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<executions>
					<!-- 復制配置文件 -->
					<execution>
						<id>copy-resources</id>
						<phase>package</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<resources>
								<!--復制資源文件到外部,注意這里先不做filtering處理,防止某些靜態(tài)文件損壞-->
								<resource>
									<filtering>false</filtering>
									<directory>src/main/resources</directory>
									<includes>
										<!--<include>*.yml</include>-->
										<!--把所有resources目錄下的資源文件復制出來-->
										<include>**/*</include>
									</includes>
								</resource>
								<!--僅針對yml配置文件filtering處理(占位符@@等)-->
								<resource>
									<filtering>true</filtering>
									<directory>src/main/resources</directory>
									<includes>
										<include>*.yml</include>
									</includes>
								</resource>
							</resources>
							<outputDirectory>${project.build.directory}/${config-path}</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
		<!--手動處理資源文件,這里的操作都是針對最終打出的jar包內(nèi)部文件的進行引入、篩選、過濾等等,默認文件都打進jar包內(nèi)部的根路徑下,因此前面的插件[maven-jar-plugin]中需要配置相對路徑-->
		<!--具體路徑在這里: /project/build/plugins/[maven-jar-plugin]/configuration/archive/manifestEntries/Class-Path 添加classpath:. (注意和其它配置以空格分開)-->
		<resources>
			<!--包含java類路徑下的資源文件(mybatis的xml等)-->
			<resource>
				<directory>src/main/java</directory>
				<filtering>false</filtering>
				<includes>
					<include>**/*.xml</include>
					<include>**/*.json</include>
					<include>**/*.ftl</include>
				</includes>
			</resource>
			<!--排除jar包內(nèi)的所有resources配置文件-->
			<resource>
				<directory>src/main/resources</directory>
				<!--filtering會做處理配置文件@@占位符等操作,但是不排除某些文件的話可能導致壓縮損壞-->
				<filtering>false</filtering>
				<excludes>
					<exclude>**/*</exclude>
				</excludes>
			</resource>
			<!--注: 上述配置已經(jīng)能夠正常分離所有配置、外部依賴、工程代碼,啟動命令:java -jar xxx.jar-->
			<!--注: 但是工程打包后,你會發(fā)現(xiàn)IDEA上跑不起來(target/classes目錄下沒有配置文件)-->
			<!--注: 這里嘗試過在IDEA啟動app時指定JVM參數(shù)(但是沒有用,誰研究過可以說下): -Dloader.path=lib,config-->
			<!--注: 為了能在IDEA中跑起來,需要將所有yml配置文件打進jar包,filtering必須開啟(處理占位符等操作)-->
			<resource>
				<directory>src/main/resources</directory>
				<filtering>true</filtering>
				<includes>
					<include>*.yml</include>
				</includes>
			</resource>
			<!--本地依賴打進jar包,這個配置是配合spring-boot-maven-plugin插件使用的-->
			<!--<resource>-->
			<!--	<directory>../lib/crack</directory>-->
			<!--	<targetPath>BOOT-INF/lib/</targetPath>-->
			<!--	<includes><include>**/*.jar</include></includes>-->
			<!--</resource>-->
			<!--<resource>-->
			<!--	<directory>../lib</directory>-->
			<!--	<targetPath>BOOT-INF/lib/</targetPath>-->
			<!--	<includes><include>*.jar</include></includes>-->
			<!--</resource>-->
		</resources>
	</build>
</project>

方式二:基于spring-boot-maven-plugin

注意

  • 這種方式打包出來的Jar基于插件提供的類加載器啟動:org.springframework.boot.loader.PropertiesLauncher
  • 所有依賴包(包括systemScope),會通過插件 maven-dependency-plugin 自動復制到 lib 目錄
  • 所有資源文件,會通過插件 maven-resources-plugin 自動復制到 config 目錄
  • 此方式打包后,需要指定參數(shù)啟動 -Dloader.path=lib路徑,config路徑
  • 打包完后部署需要的文件清單:(在 target/ 目錄下都可以看到)
    • config/**:所有resources下的資源文件
    • lib/**:所有l(wèi)ib包,包括本地依賴
    • xxx.jar:應用Jar
  • 運行:java -Dloader.path=lib,config -Dspring.profiles.active=dev -jar main.jar

配置參考

<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">

	<build>
		<finalName>main</finalName>
		<plugins>
			<!--該插件的作用是指定編譯配置、做預處理,如Lombok、mapstruct等框架需要預處理代碼-->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
					<encoding>UTF-8</encoding>
					<annotationProcessorPaths>
						<path>
							<groupId>org.mapstruct</groupId>
							<artifactId>mapstruct-processor</artifactId>
							<version>1.4.1.Final</version>
						</path>
						<path>
							<groupId>org.projectlombok</groupId>
							<artifactId>lombok</artifactId>
							<version>1.18.12</version>
						</path>
					</annotationProcessorPaths>
				</configuration>
			</plugin>
			<!--該插件的作用是打包spring-boot的jar包-->
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<!--入口其實會自動配置-->
					<mainClass>org.jeecg.JeecgSystemApplication</mainClass>
					<!--不排除的話,systemScope的依賴包會自動被此插件打包進xxx.jar\BOOT-INF\lib,和外部依賴產(chǎn)生沖突 -->
					<includeSystemScope>false</includeSystemScope>
					<skip>false</skip>
					<!--分離Jar包-->
					<layout>ZIP</layout>
					<includes>
						<include>
							<groupId>nothing</groupId>
							<artifactId>nothing</artifactId>
						</include>
					</includes>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>repackage</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<!-- 該插件的作用是復制依賴的jar包到指定的文件夾里 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>copy-dependencies</id>
						<phase>package</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.directory}/lib/</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<!-- 該插件的作用是復制指定的文件 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<executions>
					<!-- 復制配置文件 -->
					<execution>
						<id>copy-resources</id>
						<phase>package</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<resources>
								<!--復制資源文件到外部,注意這里先不做filtering處理,防止某些靜態(tài)文件損壞-->
								<resource>
									<filtering>false</filtering>
									<directory>src/main/resources</directory>
									<includes>
										<include>**/*</include>
									</includes>
								</resource>
								<!--僅針對配置文件filtering處理(占位符@@等)-->
								<resource>
									<directory>src/main/resources</directory>
									<filtering>true</filtering>
									<includes>
										<include>*.xml</include>
										<include>*.yml</include>
										<include>*.properties</include>
									</includes>
								</resource>
							</resources>
							<outputDirectory>${project.build.directory}/config</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
		<resources>
			<!--打包java路徑下的靜態(tài)文件-->
			<resource>
				<directory>src/main/java</directory>
				<filtering>false</filtering>
				<includes>
					<include>**/*.xml</include>
					<include>**/*.json</include>
					<include>**/*.ftl</include>
				</includes>
			</resource>
			<!--注: 為了能在IDEA中跑起來,需要將所有yml配置文件打進jar包,filtering必須開啟(處理占位符等操作)-->
			<resource>
				<directory>src/main/resources</directory>
				<filtering>true</filtering>
				<includes>
					<include>*.yml</include>
          <include>*.txt</include>
				</includes>
			</resource>
		</resources>
	</build>
</project>

附錄:參考鏈接

到此這篇關于SpringBoot分離打Jar包的兩種方式的文章就介紹到這了,更多相關SpringBoot打Jar包內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Servlet3.0新特性全解

    Servlet3.0新特性全解

    Servlet3.0新特性有異步處理支持、新增的注解支持、可插性支持,下面我們將逐一講解這些新特性,通過下面的學習,讀者將能夠明晰了解Servlet?3.0的變化,并能夠順利使用它進行日常的開發(fā)工作
    2023-05-05
  • Spring Boot使用Log4j2的實例代碼

    Spring Boot使用Log4j2的實例代碼

    這篇文章主要介紹了Spring Boot使用Log4j2的實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 簡述Mybatis增刪改查實例代碼

    簡述Mybatis增刪改查實例代碼

    本文給大家分享編寫一個簡單的mybatis進行插入數(shù)據(jù)的實例代碼,非常不錯具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-10-10
  • java項目中多線程使用場景與實現(xiàn)方式詳解

    java項目中多線程使用場景與實現(xiàn)方式詳解

    在項目中,多線程的使用非常廣泛,主要用于提高程序的并發(fā)性和響應速度,本文為大家整理了一些常見的多線程使用場景以及相應的實現(xiàn)方式,希望對大家有一定的幫助
    2025-04-04
  • Java常見的四種負載均衡算法

    Java常見的四種負載均衡算法

    本文主要介紹了Java常見的四種負載均衡算法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05
  • Java數(shù)據(jù)結構之ArrayList從順序表到實現(xiàn)

    Java數(shù)據(jù)結構之ArrayList從順序表到實現(xiàn)

    Java中的ArrayList是一種基于數(shù)組實現(xiàn)的數(shù)據(jù)結構,支持動態(tài)擴容和隨機訪問元素,可用于實現(xiàn)順序表等數(shù)據(jù)結構。ArrayList在內(nèi)存中連續(xù)存儲元素,支持快速的隨機訪問和遍歷。通過學習ArrayList的實現(xiàn)原理和使用方法,可以更好地掌握Java中的數(shù)據(jù)結構和算法
    2023-04-04
  • Java延時執(zhí)行的三種實現(xiàn)方式

    Java延時執(zhí)行的三種實現(xiàn)方式

    本文主要介紹了Java延時執(zhí)行的三種實現(xiàn)方式,主要包括了Thread.sleep()方法,.sleep()使用Timer類或使用ScheduledExecutorService接口,感興趣的可以了解一下
    2023-12-12
  • Java使用Cipher類實現(xiàn)加密的過程詳解

    Java使用Cipher類實現(xiàn)加密的過程詳解

    這篇文章主要介紹了Java使用Cipher類實現(xiàn)加密的過程詳解,Cipher類提供了加密和解密的功能,創(chuàng)建密匙主要使用SecretKeySpec、KeyGenerator和KeyPairGenerator三個類來創(chuàng)建密匙。感興趣可以了解一下
    2020-07-07
  • Java分布式鎖的三種實現(xiàn)方案

    Java分布式鎖的三種實現(xiàn)方案

    本文主要介紹了Java分布式鎖的三種實現(xiàn)方案。具有一定的參考價值,下面跟著小編一起來看下吧
    2017-01-01
  • IntelliJ IDEA中SpringBoot項目通過devtools實現(xiàn)熱部署的方法

    IntelliJ IDEA中SpringBoot項目通過devtools實現(xiàn)熱部署的方法

    這篇文章主要介紹了IntelliJ IDEA中SpringBoot項目通過devtools實現(xiàn)熱部署的方法,本文分步驟給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-08-08

最新評論

长宁县| 安庆市| 长寿区| 偃师市| 镇坪县| 武强县| 禄丰县| 长垣县| 三都| 景洪市| 手游| 蒲江县| 广西| 丘北县| 开化县| 泊头市| 重庆市| 屏南县| 齐齐哈尔市| 西和县| 左云县| 敖汉旗| 天津市| 珲春市| 奉节县| 青海省| 栾川县| 肥乡县| 崇明县| 利辛县| 太和县| 邵东县| 湖南省| 平凉市| 博罗县| 田阳县| 玛曲县| 江山市| 台湾省| 沙洋县| 汾西县|