maven项目中什么时候dependency中的version可以省略?

maven项目中什么时候dependency中的version可以省略?

背景

在idea或者eclipse中创建maven项目时对于依赖组件的版本管理还是非常重要的,尤其是在多模块的maven项目中,如果各个模块都在自己的pom.xml中随意指定相同依赖库的不同版本,则很容易出现jar包冲突的问题。因此maven提供了帮我们实现对依赖库版本的统一管理。

实现原则

1、首先在父级项目的pom.xml中通过在指定各子模块可能依赖的库的版本。
2、为了方便依赖库的版本查看和升级,版本信息统一在父级项目的pom.xml中的中指定。
3、在各子模块项目中的pom.xml中直接在中使用依赖需要的库,不用再指定库的版本信息,就是可以省略。

实现案例

1、首先在父级项目的pom.xml中通过在指定各子模块可能依赖的库的版本。案例如下:

<dependencyManagement>
	<dependencies>
	    <dependency>
	        <groupId>org.springframework.cloud</groupId>
	        <artifactId>spring-cloud-dependencies</artifactId>
	        <version>${spring-cloud.version}</version>
	        <type>pom</type>
	        <scope>import</scope>
	    </dependency>
	    <dependency>
	        <groupId>com.alibaba.cloud</groupId>
	        <artifactId>spring-cloud-alibaba-dependencies</artifactId>
	        <version>${spring-cloud-alibaba.version}</version>
	        <type>pom</type>
	        <scope>import</scope>
	    </dependency>
	    <dependency>
	        <groupId>com.baomidou</groupId>
	        <artifactId>mybatis-plus-boot-starter</artifactId>
	        <version>${mybatis-plus-starter.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>com.baomidou</groupId>
	        <artifactId>mybatis-plus-generator</artifactId>
	        <version>${mybatis-plus-generator.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>com.alibaba</groupId>
	        <artifactId>druid-spring-boot-starter</artifactId>
	        <version>${druid-starter.version}</version>
	    </dependency>
	</dependencies>
</dependencyManagement>

2、为了方便依赖库的版本查看和升级,版本信息统一在父级项目的pom.xml中的中指定。实现案例如下:

<properties>
     <maven.compiler.source>8</maven.compiler.source>
     <maven.compiler.target>8</maven.compiler.target>
     <java.version>1.8</java.version>
     <spring-cloud.version>Hoxton.SR8</spring-cloud.version>
     <spring-cloud-alibaba.version>2.2.4.RELEASE</spring-cloud-alibaba.version>
     <druid-starter.version>1.2.4</druid-starter.version>
     <mybatis-plus-starter.version>3.4.1</mybatis-plus-starter.version>
     <mybatis-plus-generator.version>3.4.1</mybatis-plus-generator.version>
</properties>

3、在各子模块项目中的pom.xml中直接在中使用依赖需要的库,不用再指定库的版本信息,就是可以省略。案例如下:

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-oauth2</artifactId>
    </dependency>
    <dependency>
        <groupId>com.wongoing</groupId>
        <artifactId>wgms-redis-spring-boot-starter</artifactId>
        <optional>true</optional>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-configuration-processor</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>
Maven项目使用JDBC驱动实现MySQL数据库的增删改查,你需要按照以下步骤进行操作: 1. 添加MySQL JDBC驱动依赖:在你的Maven项目的pom.xml文件,添加MySQL JDBC驱动的依赖。示例依赖如下: ```xml <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.26</version> </dependency> </dependencies> ``` 请确保你使用的是与你的MySQL数据库版本兼容的驱动版本。 2. 创建数据库连接:在Java代码,使用JDBC API创建与MySQL数据库的连接。示例代码如下: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DatabaseConnector { private static final String URL = "jdbc:mysql://localhost:3306/mydatabase"; private static final String USERNAME = "your_username"; private static final String PASSWORD = "your_password"; public static Connection getConnection() throws SQLException { return DriverManager.getConnection(URL, USERNAME, PASSWORD); } } ``` 请将`URL`、`USERNAME`和`PASSWORD`替换为你自己的数据库连接信息。 3. 执行增删改查操作:使用上一步获得的数据库连接,可以执行增删改查操作。示例代码如下: ```java import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class DatabaseOperations { public static void insertData(String name, int age) throws SQLException { Connection connection = DatabaseConnector.getConnection(); String sql = "INSERT INTO users (name, age) VALUES (?, ?)"; PreparedStatement statement = connection.prepareStatement(sql); statement.setString(1, name); statement.setInt(2, age); statement.executeUpdate(); statement.close(); connection.close(); } // 同样的方式可以实现更新和删除操作 public static void selectData() throws SQLException { Connection connection = DatabaseConnector.getConnection(); String sql = "SELECT * FROM users"; PreparedStatement statement = connection.prepareStatement(sql); ResultSet resultSet = statement.executeQuery(); while (resultSet.next()) { String name = resultSet.getString("name"); int age = resultSet.getInt("age"); System.out.println("Name: " + name + ", Age: " + age); } resultSet.close(); statement.close(); connection.close(); } } ``` 以上代码示例了如何执行插入数据和查询数据的操作,你可以根据需求进行修改和扩展。 注意:在实际开发,为了安全性和性能考虑,建议使用连接池来管理数据库连接。此外,还应该处理异常和关闭资源,示例省略了部分错误处理和资源关闭的代码,请在实际项目完善。 以上就是在Maven项目使用JDBC驱动实现MySQL数据库的增删改查的简要步骤。希望对你有帮助!如果你还有其他问题,请继续提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值