gradle 多项目配置

使用开发工具是 Intillij

在一个Project中创建多个 module
目录如下:在项目下创建了3个module
project:HelloGradle
module1: dao
module2: utils
module3: web

创建方式:
Project: HelloGradle
new Project >> Gradle >> 选择插件(例如:java) >> 填写groupId 和 ArtifactId >>next >>finish
Module:
右击项目 >> new Module >> 选择插件(例如:web)>> 填写 ArtifactId >>next >>finish

三个module创建好后,将gradle.build 中冗余的配置,统一配置到 HelloGradle 的 gradle.build 中:

allprojects 表示所有子项目共享下面的配置。(例如下面的例子)
主project中的配置都放到 allprojects中。

allprojects{
    apply plugin: 'java'
    sourceCompatibility = 1.8
    repositories {
        mavenCentral()
    }
    //    只需要这里一个地方配置,所有module都可以使用
    dependencies {
        compile 'ch.qos.logback:logback-classic:1.3.0-alpha4'
        testCompile group: 'junit', name: 'junit', version: '4.12'
    }
}

属性配置:
最顶上的 group 和 version 配置到单独的文件
group ‘com.zll.web
version ‘1.0-SNAPSHOT’
创建 gradle.properties

//注意 换成 = 号
group = 'com.zll.web'
version = '1.0-SNAPSHOT'

module件的依赖配置:
例如 (dao 依赖 utils )
在utils gradle.build 单独配置:

dependencies {
    compile project(":utils")
}

web 又依赖 dao

dependencies {
    compile project(":dao")
}

这样你在 intellij的右侧的 gradle 显示栏刷新,就可以看见所有依赖关系:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用Gradle配置JPA的多模块项目的步骤: 1. 在根目录下的build.gradle文件中添加JPA依赖: ```gradle dependencies { // JPA依赖 implementation 'javax.persistence:javax.persistence-api:2.2' implementation 'org.hibernate:hibernate-core:5.4.32.Final' implementation 'org.hibernate:hibernate-entitymanager:5.4.32.Final' implementation 'org.hibernate:hibernate-validator:6.2.0.Final' implementation 'org.postgresql:postgresql:42.2.23' } ``` 2. 在每个模块的build.gradle文件中添加JPA插件和依赖: ```gradle plugins { id 'java' id 'org.springframework.boot' version '2.5.2' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'war' id 'org.hibernate.orm' } dependencies { // JPA依赖 implementation 'javax.persistence:javax.persistence-api:2.2' implementation 'org.hibernate:hibernate-core:5.4.32.Final' implementation 'org.hibernate:hibernate-entitymanager:5.4.32.Final' implementation 'org.hibernate:hibernate-validator:6.2.0.Final' implementation 'org.postgresql:postgresql:42.2.23' } // 配置JPA hibernate { jpa { generate-ddl true show-sql true database-platform "org.hibernate.dialect.PostgreSQLDialect" } // 配置实体类扫描路径 scanPackages 'com.example.demo.entity' } ``` 3. 在每个模块的src/main/resources目录下创建META-INF/persistence.xml文件,并配置JPA实体类扫描路径和数据源信息: ```xml <?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd" version="2.2"> <persistence-unit name="default"> <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> <class>com.example.demo.entity.User</class> <properties> <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/> <property name="hibernate.connection.url" value="jdbc:postgresql://localhost:5432/testdb"/> <property name="hibernate.connection.username" value="postgres"/> <property name="hibernate.connection.password" value="123456"/> <property name="hibernate.hbm2ddl.auto" value="update"/> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.format_sql" value="true"/> <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/> </properties> </persistence-unit> </persistence> ``` 4. 在代码中使用JPA进行数据库操作: ```java @Repository public class UserRepository { @PersistenceContext private EntityManager entityManager; public User save(User user) { entityManager.persist(user); return user; } public User findById(Long id) { return entityManager.find(User.class, id); } public List<User> findAll() { CriteriaBuilder builder = entityManager.getCriteriaBuilder(); CriteriaQuery<User> query = builder.createQuery(User.class); Root<User> root = query.from(User.class); query.select(root); return entityManager.createQuery(query).getResultList(); } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值