-
Idea创建一个Maven工程,然后删掉src目录
修改pom.xml,加一行
<packaging>pom</packaging>
- 在project中新建Module, 选择Spring Initializr, 名字叫core(可以任意取名), 勾选你需要的Spring组件,比如MySQL
- 修改core Module的pom.xml, 注明parent是谁
<parent>
<artifactId>v2sg</artifactId>
<groupId>com.v2sg_server</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
- 修改root Module的pom.xml, 查看idea是否为你指明了子module是谁
<modules>
<module>core</module>
</modules>
- 同理再创建一个Module, 我创建了一个api的Module,勾选了Spring MVC, 用来开发对外的api接口
现在在core Module中放数据库相关,我用的是Mybatis来操作数据库,用了Mybatis-generator来自动生成dao、mapper及model。
如何配置就大家自行找其他教程,不明白的可以问我。
现在我的工程目录如下:
由于数据库炒作的接口与Model在core的Module中,现在api这个Module如果要使用core中的类,就需要配置依赖关系,修改api的pom.xml,加一个依赖
<dependency>
<groupId>com.v2sg_server</groupId>
<artifactId>core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
api中要使用Mybatis的接口,还需要知道扫描,在Application中加一个注解即可
@MapperScan("com.v2sg.core.mybatis.dao")
在api中,我们还有配置一下mybatis, 应为是springboot, 我们可以通过在application.yml中简单配置一下就可以吧,当然也可以用Spring哪套写Config类来配置
mybatis:
typeAliasesPackage: com.v2sg.core.mybatis.model
mapperLocations: classpath*:com/v2sg/core/mybatis/mapper/**/*.xml
这些编译应该没有问题了。
但是运行的时候,如果api中用了core中的Mapper, 如果是xml来配置的Mapper,那么运行要报错,说找不到Mapper, 解决办法是,将api与core的pom.xml中都加上sources, 指明编译的时候剔除什么,包括什么。
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>**/.svn/*</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/.svn/*</exclude>
</excludes>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
好了,现在api依赖core的工程基本就配置好了。