下面我来详细讲解一下“springboot 多模块将dao(mybatis)项目拆分出去”的完整攻略。
1. 拆分dao(mybatis)项目
1.1 新建dao模块
首先,我们需要在springboot项目中新建一个单独的dao模块,用于存放mybatis相关的代码。这个模块的pom.xml文件需要引入mybatis、mybatis-spring和mysql等依赖。
<!-- 引入Mybatis和Mybatis-Spring依赖 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>${mybatis-spring.version}</version>
</dependency>
<!-- 引入MySQL依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
1.2 配置dao模块
然后,我们需要在dao模块中新建mybatis的配置文件,配置数据库连接信息、mapper扫描路径以及其他相关配置。通常我们可以在resources目录下创建一个名为mybatis的文件夹,并在里面新建一个名为mybatis-config.xml的文件,内容如下:
<configuration>
<environments default="dev">
<environment id="dev">
<transactionManager type="JDBC"/>
<dataSource type="UNPOOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper/xxxMapper.xml"/>
<!-- 可以添加多个Mapper -->
</mappers>
</configuration>
其中,${jdbc.driver}、${jdbc.url}、${jdbc.username}和${jdbc.password}是从properties文件中读取的属性值,用于配置数据库连接信息。另外,mapper/xxxMapper.xml为我们的mapper配置文件路径。
1.3 编写dao代码
在dao模块中编写dao和mapper代码,在编写mapper时,需要注入SqlSessionFactoryBean,并使用@Mapper注解标注Mapper接口。具体示例如下:
@Repository
public class UserDao {
@Autowired
private SqlSessionTemplate sqlSessionTemplate;
public User getUserById(int id) {
return this.sqlSessionTemplate.selectOne("getUserById", id);
}
}
@Mapper
@Repository
public interface UserMapper {
User getUserById(int id);
}
1.4 完成dao模块的打包
然后,我们需要完成dao模块的打包,将其发布到本地maven仓库中。需要在dao模块的pom.xml中添加以下配置:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<finalName>${project.artifactId}-${project.version}</finalName>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>XXX.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
然后执行mvn package命令,将dao模块打包成jar包。
2. 在项目中引入dao模块
2.1 引入dao模块依赖
接下来,在springboot项目中引入dao模块的依赖。需要在springboot项目的pom.xml文件中添加以下配置:
<dependency>
<groupId>com.xxx</groupId>
<artifactId>dao</artifactId>
<version>1.0.0</version>
</dependency>
2.2 配置dao模块属性
在springboot项目中,我们需要在application.properties文件中添加以下属性配置:
# 数据库连接信息
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=root
# Dao配置信息
spring.dao.type=MYBATIS
mybatis.config=classpath:mybatis/mybatis-config.xml
其中,spring.dao.type表示使用Dao的类型,这里是MYBATIS;mybatis.config表示mybatis的配置文件路径。
2.3 编写Service代码
在springboot项目的Service层中使用@Autowired注入Dao,然后在Service中调用Dao中的方法。具体示例如下:
@Service
public class UserService {
@Autowired
private UserDao userDao;
public User getUserById(int id) {
return userDao.getUserById(id);
}
}
2.4 启动springboot项目
最后,我们需要启动springboot项目,这样配置就完成了。启动项目后,我们可以通过调用getUserById方法来获取User对象。
至此,整个“springboot 多模块将dao(mybatis)项目拆分出去”的攻略就讲解完成了。
示例:
-
基于springboot和mybatis的简单用户管理系统(已拆分dao模块) https://github.com/Amber1289/springboot-mybatis-demo
-
基于springboot和mybatis-plus的简单用户管理系统(已拆分dao模块)https://github.com/Amber1289/springboot-mybatis-plus-demo
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:springboot 多模块将dao(mybatis)项目拆分出去 - Python技术站