文章目录
引言
引入了Spring框架,数据源、构建等工作就交给了Spring管理。
1. Spring + Mybatis + MP整合
1.1 新建子模块mp_spring
1.2 导入spring相关坐标
在mp模块下创建子模块mp_spring,子模块可以继承mp模块下的坐标依赖,但使用spring框架还是需要导入spring相关坐标依赖
mp_spring模块下的pom.xml
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
1.3 编写spring核心配置文件以及jdbc.properties数据源
jdbc.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/mp?
useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true&useSSL=false
jdbc.username=root
jdbc.password=123456
applicationContext.xml
需要注意的是:这里使用MP提供的sqlSessionFactory,完成了Spring与MP的整合
<context:property-placeholder location="classpath:*.properties"/>
<!-- 定义数据源 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
destroy-method="close">
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="maxActive" value="10"/>
<property name="minIdle" value="5"/>
</bean>
<!--这里使用MP提供的sqlSessionFactory,完成了Spring与MP的整合-->
<bean id="sqlSessionFactory"
class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
</bean>
<!--扫描mapper接口,使用的依然是Mybatis原生的扫描器-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="spring.mapper"/>
</bean>
1.4 添加User实体类以及UserMapper接口
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;//带全参的构造方法
import lombok.Data;//getter和setter方法及tostring
import lombok.NoArgsConstructor;//无参构造
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("tb_user")
public class User {
private Long id;
private String userName;
private String password;
private String name;
private Integer age;
private String email;
}
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import spring.pojo.User;
public interface UserMapper extends BaseMapper<User> {
}
1.5 添加测试类进行测试
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import spring.mapper.UserMapper;
import spring.pojo.User;
import java.util.List;
@RunWith(SpringJUnit4ClassRunner.class)
//配置spring核心配置文件的路径
@ContextConfiguration(locations = "classpath:applicationContext.xml")
public class TestDemo1 {
@Autowired
private UserMapper userMapper;
@Test
public void test01(){
List<User> userList = userMapper.selectList(null);
for (User user : userList) {
System.out.println(user);
}
}
}
接下来看控制台输出