gradle7.6.1+springboot3.2.4+mybatis-plus搭建工程

目录

一、参考文章

二、创建工程

三、 引入mybatis-plus依赖

四、编写实体类 

 五、编写mapper接口类

六、编写Controller类

七、启动类增加@MapperScan

八、配置数据库连接

 九、创建数据库及表

 十、启动测试

十一、自定义Mapper需增改以下文件

 十二、gradle完整配置

 十三、junitTest


一、参考文章
https://baomidou.com/pages/226c21/
二、创建工程

三、 引入mybatis-plus依赖
implementation 'com.baomidou:mybatis-plus-spring-boot3-starter:3.5.5'
四、编写实体类 
@Data  
@TableName("user_info")  
public class User {  
	@TableId(value = "user_id",type = IdType.AUTO)  
	private Integer userId;  
	  
	@TableField("user_name")  
	private String userName;  
	  
	private int sex;  
}
 五、编写mapper接口类
public interface UserMapper extends BaseMapper<User> {  
  
}
六、编写Controller类
@RestController  
@RequestMapping("/user")  
public class UserController {  
	@Autowired  
	private UserMapper userMapper;  
	  
	@GetMapping("/getAll")  
	public List<User> getAll() {  
		return userMapper.selectList(null);  
	}  
}
七、启动类增加@MapperScan
@SpringBootApplication  
@MapperScan("com.fafa.mapper")  
public class MybatisPlusDemoApplication {  
  
	public static void main(String[] args) {  
		SpringApplication.run(MybatisPlusDemoApplication.class, args);  
	}  
}
八、配置数据库连接
spring:  
datasource:  
driver-class-name: com.mysql.cj.jdbc.Driver  
url: jdbc:mysql://localhost:3306/db_user?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC  
username: root  
password: 123456
 九、创建数据库及表
create database db_user;  
use db_user;  
  
SET NAMES utf8mb4;  
SET FOREIGN_KEY_CHECKS = 0;  
  
-- ----------------------------  
-- Table structure for user_info  
-- ----------------------------  
DROP TABLE IF EXISTS `user_info`;  
CREATE TABLE `user_info` (  
`user_id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID',  
`user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '用户名',  
`sex` tinyint NULL DEFAULT 0 COMMENT '性别 0 未知 1女 2男',  
PRIMARY KEY (`user_id`) USING BTREE  
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户表' ROW_FORMAT = Dynamic;  
  
SET FOREIGN_KEY_CHECKS = 1;
 十、启动测试
浏览器访问:http://localhost:8080/user/getAll
十一、自定义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.fafa.mapper.UserMapper">  
		<resultMap type="User" id="userResult">  
		<result property="userId" column="user_id"/>  
		<result property="userName" column="user_name"/>  
		<result property="sex" column="sex"/>  
	</resultMap>  
	  
	<sql id="selectUserVo">  
		select * from user_info  
	</sql>  
	  
	<select id="selectUserList" parameterType="User" resultMap="userResult">  
		<include refid="selectUserVo"/>  
		<where>  
			<if test="userName != null ">and user_name like concat('%', #{userName}, '%')</if>  
		</where>  
		order by user_id desc  
	</select>  
</mapper>
  • UserMapper.java 

@Mapper  
public interface UserMapper extends BaseMapper<User> {  
	/**  
	* 倒序查询用户信息  
	* @param user  
	* @return  
	*/  
	List<User> selectUserList(User user);  
}
  • IUserService.java 

public interface IUserService extends IService<User> {  
	/**  
	* 倒序查询用户信息  
	* @param user  
	* @return  
	*/  
	List<User> selectUserList(User user);  
}
  •  UserService.java

@Service  
public class UserService extends ServiceImpl<UserMapper, User> implements IUserService {  
	@Autowired  
	private UserMapper userMapper;  
	
	@Override  
	public List<User> selectUserList(User user) {  
		return userMapper.selectUserList(user);  
	}  
}
  •  UserController.java

@RestController  
@RequestMapping("/user")  
public class UserController {  
	@Autowired  
	private IUserService userService;  
	  
	@GetMapping("/getAll")  
	public List<User> getAll() {  
		return userService.selectUserList(null);  
	}  
}
  •  application.yml

spring:  
	datasource:  
		driver-class-name: com.mysql.cj.jdbc.Driver  
		url: jdbc:mysql://localhost:3306/db_user?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC  
		username: root  
		password: 123456  
mybatis-plus:  
	type-aliases-package: com.fafa.entity  
	mapper-locations: classpath:/mappers/**/*.xml
 十二、gradle完整配置
plugins {  
	id 'java'  
	id 'org.springframework.boot' version '3.2.4'  
	id 'io.spring.dependency-management' version '1.1.4'  
}  
  
group = 'com.fafa'  
version = '0.0.1-SNAPSHOT'  
  
java {  
	sourceCompatibility = '17'  
}  
  
configurations {  
	compileOnly {  
		extendsFrom annotationProcessor  
	}  
}  
  
ext{  
	MAVEN_REPO_RELEASE_URL = System.getenv('MAVEN_REPO_RELEASE_URL')  
	MAVEN_REPO_SNAPSHOT_URL = System.getenv('MAVEN_REPO_SNAPSHOT_URL')  
	MAVEN_DEPLOY_USER = System.getenv('MAVEN_DEPLOY_USER')  
	MAVEN_DEPLOY_PASSWORD = System.getenv('MAVEN_DEPLOY_PASSWORD')  
}  
  
repositories {  
	maven { url "https://maven.aliyun.com/nexus/content/groups/public/" }  
	maven {  
		url 'https://maven.aliyun.com/repository/public'  
	}  
	maven { url "https://repo.spring.io/milestone" }  
	maven { url "https://plugins.gradle.org/m2/" }  
	maven {  
		credentials {  
		username MAVEN_DEPLOY_USER  
		password MAVEN_DEPLOY_PASSWORD  
	}  
	url MAVEN_REPO_RELEASE_URL  
	}  
	maven {  
		credentials {  
		username MAVEN_DEPLOY_USER  
		password MAVEN_DEPLOY_PASSWORD  
	}  
	url MAVEN_REPO_SNAPSHOT_URL  
	}  
	mavenCentral()  
}  
  
dependencies {  
	implementation 'org.springframework.boot:spring-boot-starter-web'  
	implementation 'com.baomidou:mybatis-plus-spring-boot3-starter:3.5.5'  
	compileOnly 'org.projectlombok:lombok'  
	runtimeOnly 'com.mysql:mysql-connector-j'  
	annotationProcessor 'org.projectlombok:lombok'  
	  
	testImplementation 'org.springframework.boot:spring-boot-starter-test'  
}  
  
tasks.named('test') {  
	useJUnitPlatform()  
}
 十三、junitTest
@SpringBootTest  
class MybatisPlusDemoApplicationTests {  
	@Autowired  
	private UserMapper userMapper;  
	  
	@Autowired  
	private IUserService uservice;  
	  
	@Test  
	void contextLoads() {  
		List<User> list = userMapper.selectList(null);  
		Assert.isTrue(5 == list.size(), "查询成功");  
		list.forEach(System.out::println);  
	}  
	  
	@Test  
	void selectUserAll(){  
		List<User> list =uservice.selectUserList(null);  
		Assert.isTrue(5 == list.size(), "查询成功");  
		list.forEach(System.out::println);  
	}  
	  
	@Test  
	void add() {  
		User user = new User();  
		user.setUserName("张三");  
		user.setSex(0);  
		int count = userMapper.insert(user);  
		Assert.isTrue(count != 0, "添加数据成功");  
	}  
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值