SpringBoot整合Mybatis-Plus
前言
提示:以下是本篇文章正文内容,下面案例可供参考
项目目录结构:
一、Mybatis-Plus是什么?
提示:首先盗个图。
二、使用步骤
1.引入Maven库
代码如下(示例):
<!--mybatis 和 mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.54</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.41</version>
</dependency>
2.编写yml配置文件
代码如下(示例):
server:
port: 8087
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
username: root
password: 123456
url: jdbc:mysql://127.0.0.1:3306/user
mybatis-plus:
global-config:
id-type: 1
db-column-underline: true
db-type: MYSQL
configuration:
map-underscore-to-camel-case: true
cache-enabled: true
type-aliases-package: com.hh.userservice.pojo
mapper-locations: classpath:mappers/*.xml
configuration-properties:
prefix: LJ_XC_FXCZF. //代码可以直接通过${prefix}获取值
3.切记需要在主启动类添加@MapperScan
代码如下(示例):
package com.hh.usermybatisplus;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.hh.usermybatisplus.mapper")
public class UserMybatisPlusApplication {
public static void main(String[] args) {
SpringApplication.run(UserMybatisPlusApplication.class, args);
}
}
同时需要在Mapper 接口继承Mybatis-Plus的基类。
package com.hh.usermybatisplus.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hh.usermybatisplus.pojo.UserBean;
public interface UserBeanMapper extends BaseMapper<UserBean> {
}
4.创建一个实体对象
package com.hh.usermybatisplus.pojo;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.springframework.stereotype.Component;
import java.io.Serializable;
@Data
@Accessors(chain = true)
@Component
@NoArgsConstructor
@AllArgsConstructor
@TableName("u_user") //声明映射那张表
public class UserBean implements Serializable {
public static final long serialVersionUID = 1L;
private String id;
private String username;
private String password;
private String email;
private String telephone;
}
5.使用案例,我就举例列举两个,
package com.hh.usermybatisplus.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.hh.usermybatisplus.mapper.UserBeanMapper;
import com.hh.usermybatisplus.pojo.UserBean;
import com.hh.usermybatisplus.service.UserBeanService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserBeanServiceImpl implements UserBeanService {
@Autowired
private UserBeanMapper userBeanMapper;
@Override
public UserBean findUserBean(String id) {
QueryWrapper queryWrapper = new QueryWrapper<UserBean>();
return (UserBean) userBeanMapper.selectList(queryWrapper).stream().findFirst().get();
}
@Override
public List<UserBean> findUserBeanByName(String username) {
QueryWrapper<UserBean> queryWrapper = new QueryWrapper<>();
queryWrapper.likeRight("username",username);
return userBeanMapper.selectList(queryWrapper);
}
}
总结
人生物语:还是要学杨柳,看似柔弱却坚韧,狂风吹不断;太刚强的树干,风中折枝。