赞
踩
pom文件中导入依赖
<!-- mysql --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <!-- mybatis plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.1</version> </dependency> <!-- lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <!-- 热部署 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency>
application.properties文件中配置数据库相关属性
#设置端口号 server.port=8989 #数据库驱动 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #数据库连接地址 spring.datasource.url=jdbc:mysql://localhost:3306/myfavorite? useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai #数据库用户名 spring.datasource.username=root #数据库密码 spring.datasource.password=123456 #加载映射文件 mybatis-plus.mapper-locations=classpath*:/mapper/**/*.xml #设置别名 mybatis-plus.type-aliases-package=com.example.mybatisplus.entity #关闭驼峰命名映射 #mybatis-plus.configuration.map-underscore-to-camel-case=false #显示日志 logging.level.com.example.dao=debug #JSON日期格式化 spring.jackson.date-format= yyyy-MM-dd #JSON日期格式化设置时区为上海 spring.jackson.time-zone=Asia/Shanghai #日期格式化 spring.mvc.format.date=yyyy-MM-dd spring.mvc.format.date-time=yyyy-MM-dd HH:mm:ss
在com.example.mybatisplus.entity包下
创建实体类
注意要对应数据库中的表名和主键名称
package com.example.mybatisplus.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.util.Date; @Data @TableName("user")//TableName一定要对应表名 public class User { /** * 主键 */ @TableId(value = "id",type = IdType.AUTO) //@TableField("字段名")当属性名与数据库表字段名不一致时使用 private Long id; String username; String password; int role; Date ctime; }
在com.example.mybatisplus.dao包下
创建dao (Mapper接口)
注意需要extends BaseMapper<实体类>
package com.example.mybatisplus.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.mybatisplus.entity.User;
/**
* <p>
* Mapper 接口
* </p>
*/
public interface UserMapper extends BaseMapper<User> {
}
在 com.example.mybatisplus.Service包下
创建Service
注意继承 extends IService<实体类>
package com.example.mybatisplus.Service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.mybatisplus.entity.User;
public interface UserService extends IService<User> {
/**
*
* 根据用户名查询用户信息
* @param username
* @return
*/
User findUserByUserName(String username);
}
在com.example.mybatisplus.Service.impl包下
创建实现类
注意
继承 extends ServiceImpl<UserMapper,User>
实现 implements UserService
注解 @Service和@Transactional
package com.example.mybatisplus.Service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.example.mybatisplus.Service.UserService; import com.example.mybatisplus.dao.UserMapper; import com.example.mybatisplus.entity.User; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @Service @Transactional public class UserServiceImpl extends ServiceImpl<UserMapper,User> implements UserService { /** * * 根据用户名查询用户信息 * @param username * @return */ @Override public User findUserByUserName(String username) { //创建条件构造器对象 QueryWrapper<User> queryWrapper =new QueryWrapper<>(); queryWrapper.eq("username",username);//param1 列名 param2 对应参数值 //执行查询 return baseMapper.selectOne(queryWrapper); } }
在Resources目录下创建mapper文件夹
在mapper文件夹中创建UserMapper.xml
注意对应包名和属性名称
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.example.mybatisplus.dao.UserMapper"> <!-- 通用查询映射结果 --> <resultMap id="BaseResultMap" type="com.example.mybatisplus.entity.User"> <id column="id" property="id" /> <result column="username" property="username" /> <result column="password" property="password" /> </resultMap> <!-- 通用查询结果列 --> <sql id="Base_Column_List"> id, username, password,role,ctime </sql> </mapper>
注意不要把包名写错
package com.example.mybatisplus;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@MapperScan("com.example.mybatisplus.dao")
@SpringBootApplication
public class MybatisplusApplication {
public static void main(String[] args) {
SpringApplication.run(MybatisplusApplication.class, args);
}
}
最后可以在测试类中测试了
package com.example.mybatisplus; import com.example.mybatisplus.Service.UserService; import com.example.mybatisplus.entity.User; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest class MybatisplusApplicationTests { @Autowired UserService userService; @Test void contextLoads() { System.out.println(userService.findUserByUserName("刘翠花")); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。