Java各中依赖包介绍

Java (5) 2024-05-09 11:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说Java各中依赖包介绍,希望能够帮助你!!!。

单元测试依赖

<dependency> 
	<groupId>junit</groupId> 
	<artifactId>junit</artifactId> 
	<version>4.12</version> 
	<scope>test</scope> 
</dependency> 
<dependency> 
	<groupId>org.springframework</groupId> 
	<artifactId>spring-test</artifactId> 
	<version>5.2.10.RELEASE</version>
 </dependency>

Druid数据库连接池需要的依赖

<dependency> 
	<groupId>com.alibaba</groupId> 
	<artifactId>druid</artifactId> 
	<version>1.1.16</version> 
</dependency>

spring开发依赖

<dependencies> 
	<dependency> 
		<groupId>org.springframework</groupId> 
		<artifactId>spring-context</artifactId> 
		<version>5.2.10.RELEASE</version> 
	</dependency> 
</dependencies>

mybatis简化操作数据库依赖

 <dependency> 
	 <groupId>org.mybatis</groupId> 
	 <artifactId>mybatis</artifactId> 
	 <version>3.5.6</version> 
 </dependency>
  

链接MySQL依赖

<dependency> 
  <groupId>mysql</groupId> 
  <artifactId>mysql-connector-java</artifactId> 
  <version>5.1.47</version> 
</dependency>

AOP面向切片变成依赖

<dependency> 
	<groupId>org.aspectj</groupId> 
	<artifactId>aspectjweaver</artifactId> 
	<version>1.9.4</version> 
</dependency>

servlet开发依赖

<dependency> 
	<groupId>javax.servlet</groupId> 
	<artifactId>javax.servlet-api</artifactId> 
	<version>3.1.0</version> 
	<scope>provided</scope> 
</dependency> 

springmvc开发依赖

<dependency> 
	<groupId>org.springframework</groupId> 
	<artifactId>spring-webmvc</artifactId> 
	<version>5.2.10.RELEASE</version> 
</dependency>

Tomcat结合maven的插件配置

<build> 
	<plugins> 
		<plugin> 
		<groupId>org.apache.tomcat.maven</groupId> 
		<artifactId>tomcat7-maven-plugin</artifactId> 
		<version>2.1</version> 
		<configuration> 
			<port>80</port> 
			<path>/</path> 
		</configuration> 
		</plugin> 
	</plugins> 
</build>

SpringMVC默认使用的是jackson来处理json的转换,所以需要在pom.xml添加jackson依赖 即请求的参数是json格式的

<dependency> 
	<groupId>com.fasterxml.jackson.core</groupId> 
	<artifactId>jackson-databind</artifactId> 
	<version>2.9.0</version> 
</dependency>

不同层级之间的依赖之间的关系

Java各中依赖包介绍_https://bianchenghao6.com/blog_Java_第1张

  • 特殊优先:当同级配置了相同资源的不同版本,后配置的覆盖先配置的。
  • 情况二: 路径优先:当依赖中出现相同的资源时,层级越深,优先级越低,层级越浅,优先级越高
    A通过B间接依赖到E1
    A通过C间接依赖到E2
    A就会间接依赖到E1和E2,Maven会按照层级来选择,E1是2度,E2是3度,所以最终会选择E1
  • 情况三: 声明优先:当资源在相同层级被依赖时,配置顺序靠前的覆盖配置顺序靠后的
    A通过B间接依赖到D1
    A通过C间接依赖到D2
    D1和D2都是两度,这个时候就不能按照层级来选择,需要按照声明来,谁先声明用谁,也就是说B 在C之前声明,这个时候使用的是D1,反之则为D2

SpringBoot构建web依赖

<!--该依赖就是我们在创建 SpringBoot 工程勾选的那个 Spring Web 产生的--> 
<dependency> 
	<groupId>org.springframework.boot</groupId> 
	<artifactId>spring-boot-starter-web</artifactId> 
</dependency> 

SpringBoot构建测试依赖

<!--这个是单元测试的依赖,我们现在没有进行单元测试,所以这个依赖现在可以没有--> 
<dependency> 
	<groupId>org.springframework.boot</groupId> 
	<artifactId>spring-boot-starter-test</artifactId> 
	<scope>test</scope>
</dependency>

springboot打包

<plugin> 
	<groupId>org.springframework.boot</groupId> 
	<artifactId>spring-boot-maven-plugin</artifactId> 
</plugin>

所以我们只需要使用 Maven 的 package 指令打包就会在 target 目录下生成对应的 Jar 包。
注意:该插件必须配置,不然打好的 jar 包也是有问题的。

不用Tomcat服务器

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

现在我们启动工程使用的是 tomcat 服务器,那能不能不使用 tomcat 而使用 jetty 服务器, jetty 在我们 maven 高级时讲 maven 私服使用的服务器。而要切换 web 服务器就需要将默认的 tomcat 服务器给排除掉

jetty 服务器

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

解决一些警告需要在pom.xml 中添加如下依赖即可

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

mybatis-plus依赖

<dependency> 
	<groupId>com.baomidou</groupId> 
	<artifactId>mybatis-plus-boot-starter</artifactId> 
	<version>3.4.1</version> 
</dependency>

添加lombok依赖

<dependency> 
	<groupId>org.projectlombok</groupId> 
	<artifactId>lombok</artifactId> 
	<!--<version>1.18.12</version>--> 
</dependency>

Lombok,一个Java类库,提供了一组注解,简化POJO实体类开发。

MP中的代码生成器

<dependency>
	<groupId>com.baomidou</groupId> 
	<artifactId>mybatis-plus-generator</artifactId> 
	<version>3.4.1</version> 
</dependency> 
<!--velocity模板引擎--> 
<dependency> 
	<groupId>org.apache.velocity</groupId> 
	<artifactId>velocity-engine-core</artifactId> 
	<version>2.3</version> 
</dependency>

EurekaServer服务依赖

<dependency>    
	<groupId>org.springframework.cloud</groupId>    
	<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

eureka客户端依赖

<dependency>    
	<groupId>org.springframework.cloud</groupId>    
	<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

nacos配置管理依赖

<!--nacos配置管理依赖-->
<dependency>    
	<groupId>com.alibaba.cloud</groupId>    
	<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

Feign依赖

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

httpClient的依赖

<dependency>    
	<groupId>io.github.openfeign</groupId>    
	<artifactId>feign-httpclient</artifactId>
</dependency>

网关依赖

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

nacos服务发现依赖

<dependency>    
	<groupId>com.alibaba.cloud</groupId>    
	<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> 
</dependency>

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

发表回复