springboot整合mybatisPlus

    技术2022-07-10  168

    一.pom.xml

    二.实体类对象

    1.代码块

    import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import static com.baomidou.mybatisplus.annotation.IdType.AUTO; @Data @NoArgsConstructor //空参构造方法 @AllArgsConstructor //全参构造方法 @TableName("tb_user") public class User { @TableId(type=IdType.AUTO) //声明主键自增长 private Long id; private String userName; private String password; @TableField(select = false) //查询时,则不返回该字段的值 private String name; private Integer age; @TableField(value = "email") //通过tableField进行字段不一致的映射 //数据库字段是email,而实体类对应的是mail private String mail; @TableField(exist = false) //设置该字段在数据库表中不存在 private String msg; //数据库中不存在该字段 }

    2.范例

    三.dao层

    1.代码块

    import com.baomidou.mybatisplus.core.mapper.BaseMapper; import cn.pojo.User; import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Repository; import java.util.List; /** * mybatisPlus整合spring */ @Mapper @Repository public interface UserMapper extends BaseMapper<User> { public List<User> findAll(); }

    2.范例

    四.启动器类

    1.代码块

    import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @MapperScan("cn.mapper") /** * springboot整合mybatisplus */ public class SpringBootApplicationDemo01 { public static void main(String[] args) { SpringApplication.run(SpringBootApplicationDemo01.class,args); } }

    2.范例

    五.配置文件yml

    1.代码块

    spring: #数据库连接配置 datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/db2?serverTimezone=GMT+8&useUnicode=true&characterEncoding=utf-8 username: root password: root #mybatis的相关配置 mybatis: #mapper配置文件 mapper-locations: classpath:mapper/*.xml type-aliases-package: cn.pojo #开启驼峰命名 configuration: map-undersco

    2.范例

    六.log4j

    七.测试类

    1.保存测试

    import cn.mapper.UserMapper; import cn.pojo.User; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; /** * 保存操作 */ @RunWith(SpringRunner.class) @SpringBootTest(classes = cn.SpringBootApplicationDemo01.class) public class UserMapperTest { @Autowired private UserMapper userMapper; @Test public void test1(){ User user = new User(); user.setUserName("小明"); user.setName("小明"); user.setPassword("32343"); user.setAge(22); int num = userMapper.insert(user); System.out.println(num); } }

    2.测试springboot整合junit

    (1)范例

    (2)代码块

    import cn.mapper.UserMapper; import cn.pojo.User; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import java.util.List; //声明junit的字节码 @RunWith(SpringJUnit4ClassRunner.class) //声明主启动器的路径 @SpringBootTest(classes = cn.SpringBootApplicationDemo01.class) public class MybatisSpringBootTest { @Autowired private UserMapper userMapper; @Test public void test1(){ List<User> users = userMapper.selectList(null); for (User user:users){ System.out.println(user); } } }

    3.测试实体类属性和数据库字段不一致

    (1)代码块

    import cn.mapper.UserMapper; import cn.pojo.User; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest(classes = cn.SpringBootApplicationDemo01.class) /** * 测试字段不一致 */ public class UserMapperTest2 { @Autowired private UserMapper userMapper; @Test public void test1(){ User user = new User(); user.setUserName("小明"); user.setName("小明"); user.setPassword("32343"); user.setAge(22); user.setMail("itcast.com"); int num = userMapper.insert(user); System.out.println(num); } @Test public void test2(){ User user = userMapper.selectById(1l); System.out.println(user); } }

    (2)范例

    八.源码

    mybatisplus.rar

    Processed: 0.014, SQL: 9