1.首先添加pom文件的依賴:
這僅僅一些所需依賴,不要盲目全直接粘貼到pom文件中。
<!--
設置版本信息
-->
<properties>
<mybatis-spring-boot.version>1.1.1</mybatis-spring-boot.version>
<mybatisplus-spring-boot-starter.version>1.0.5</mybatisplus-spring-boot-starter.version>
<mybatisplus.version>2.0.7</mybatisplus.version>
<mysql-connector-java.version>5.1.38</mysql-connector-java.version>
<druid.version>1.1.12</druid.version>
</properties>
<dependencies>
<!-- 數據庫連接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>${druid.version}</version>
</dependency>
<!-- mybatis 依賴-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis-spring-boot.version}</version>
</dependency>
<!-- jdbc支持-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- mysql驅動 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-connector-java.version}</version>
</dependency>
<!-- mybatis-plus 依賴 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatisplus-spring-boot-starter</artifactId>
<version>${mybatisplus-spring-boot-starter.version}</version>
</dependency>
<!-- mybatis-plus 依賴 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>${mybatisplus.version}</version>
</dependency>
</dependencies>
2、修改application.yml
配置文件,添加Mybatis-Plus
的配置
### 啓動端口號
server:
port: 8080
### 設置數據庫
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/hrabbit_admin?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false
username: root
password: root
### 配置mybatisPlus
mybatis-plus:
mapper-locations: classpath:mapper/*.xml
typeAliasesPackage: com.hrabbit.admin.modual.system.bean
3、注入Mybatis-Plus的插件
在數據庫配置類,SingleDataSourceConfig.java
中添加如下代碼:
import com.alibaba.druid.pool.DruidDataSource;
import com.baomidou.mybatisplus.enums.DBType;
import com.baomidou.mybatisplus.plugins.PaginationInterceptor;
import com.hrabbit.admin.config.properties.DruidProperties;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
* 數據源配置
*
* @Auther: hrabbit
* @Date: 2018-12-19 11:18 AM
* @Description:
*/
@Configuration
@EnableTransactionManagement
@MapperScan({"com.hrabbit.admin.modual.system.mapper"})
public class SingleDataSourceConfig {
/**
* Druid配置
*/
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DruidProperties druidProperties() {
return new DruidProperties();
}
/**
* 單數據源連接池配置
*/
@Bean
public DruidDataSource dataSource(DruidProperties druidProperties) {
DruidDataSource dataSource = new DruidDataSource();
druidProperties.config(dataSource);
return dataSource;
}
/**
* mybatis-plus分頁插件
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
paginationInterceptor.setDialectType(DBType.MYSQL.getDb());
return paginationInterceptor;
}
}
4、 修改實體Bean
添加@TableName
和@TableId
等註解:
/**
* 系統用戶
* @Auther: hrabbit
* @Date: 2018-12-19 12:02 PM
* @Description:
*/
@Data
@TableName(value = "sys_user")
public class SysUser {
/**
* 主鍵id
*/
@TableId(type = IdType.AUTO)
private Integer id;
/**
* 用戶名稱
*/
private String name;
}
5、 修改SysUserMapper.java
主要繼承BaseMapper
類,實現一些crud
/**
* 系統用戶數據庫層
*
* @Auther: hrabbit
* @Date: 2018-12-19 12:02 PM
* @Description:
*/
public interface SysUserMapper extends BaseMapper<SysUser> {
/**
* 根據id查詢用戶信息
*
* @param id
* @return
*/
SysUser findSysUserById(@Param("id") Long id);
}
注意 : 如果在xml 中不寫SQL的,可以使用註解的方式在此接口當中直接寫SQL,實體和數據庫表字段不一致,使用@Result註解來映射
6、 修改SysUserService.java
主要繼承 IService<T>
/**
* 用戶業務層
* @Auther: hrabbit
* @Date: 2018-12-19 11:59 AM
* @Description:
*/
public interface SysUserService extends IService<SysUser> {
/**
* 根據id獲取用戶信息
* @param id
* @return
*/
SysUser findSysUserById(Long id);
/**
* 業務層的根據id獲取用戶信息
* @param id
* @return
*/
SysUser selectById(Long id);
}
7、 修改SysUserServiceImpl.java
/**
* 系統用戶業務層
* @Auther: hrabbit
* @Date: 2018-12-19 12:01 PM
* @Description:
*/
@Service
@SuppressWarnings("all")
public class SysUserServiceImpl extends ServiceImpl<SysUserMapper,SysUser> implements SysUserService {
@Autowired
private SysUserMapper sysUserMapper;
/**
* 根據id獲取用戶信息
* @param id
* @return
*/
@Override
public SysUser findSysUserById(Long id){
return sysUserMapper.findSysUserById(id);
}
/**
* 調用mybatis-plus中的根據id查詢數據
* @param id
* @return
*/
@Override
public SysUser selectById(Long id){
return sysUserMapper.selectById(id);
}
}
8、測試的Controller
/**
* 系統用戶
*
* @Auther: hrabbit
* @Date: 2018-12-17 6:21 PM
* @Description:
*/
@Controller
@RequestMapping("user")
public class SysUserController {
@Autowired
private SysUserService sysUserService;
/**
* 根據id獲取用戶信息
*
* @return
*/
@RequestMapping("/")
@ResponseBody
public Object index() {
return sysUserService.selectById(1L);
}
}
在Postman訪問接口,成功獲取到系統用戶數據:
歡迎訪問我的博客:http://www.hrabbit.xin
歡迎和大家交朋友,可以添加我的微信!