1.新建SpringBoot项目
1.1通过file->new project,新建项目
1.2.设置项目名称,包名等
1.3.选择web项目和数据库
1.4.点击Next,然后点击Finish完成项目创建,项目结构如下图
2.修改配置文件
项目中生成的配置文件为application.properties,使用起来不够简洁、切勿代码提示,因此,改换application.yml
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/mydb?serverTimezone=GMT%2B8
username: root
password: 1234
driver-class-name: com.mysql.cj.jdbc.Driver
mybatis:
mapper-locations: classpath*:mapper/*.xml
配置文件的设置,包括服务器端口设置,以及访问路径设置等,访问路径设置,只需在server下面添加path: /xxx即可
然后通过spring:datasource 配置数据库信息,url中mydb对应的数据库名称,?serverTimezone=GMT%2B8需要添加,否则在新版本的IDEA中会报错;另外mysql.cj.jdbc会被标红,说未引入,需要修改pom文件如下
接下来是mybatis的设置,classpath*:mapper/*.xml其中mapper对应resources下面的文件夹,需要自己创建。
3.创建和数据库通信的实体
3.1创建User实体
数据表如下图
对应的实体类User.java如下:
package com.sml.mybatisdemo.domin;
public class User {
public int id;
public String userName;
public String age;
public String sex;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
3.2创建service接口
创建接口UserService.java,包含有获取所有用户的接口和插入一条数据接口。
package com.sml.mybatisdemo.service;
import com.sml.mybatisdemo.domin.User;
import java.util.List;
public interface UserService {
List<User> getAllUser();
void insert(User user);
}
3.3创建dao接口
创建UserDao.java文件如下
package com.sml.mybatisdemo.dao;
import com.sml.mybatisdemo.domin.User;
import java.util.List;
public interface UserDao {
List<User> getAllUser();
void insert(User user);
}
3.4 创建实现类
创建UserServiceImpl.java,用来实现UserService中的方法
package com.sml.mybatisdemo.mapper;
import com.sml.mybatisdemo.dao.UserDao;
import com.sml.mybatisdemo.domin.User;
import com.sml.mybatisdemo.service.UserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class UserServiceImpl implements UserService {
@Resource
UserDao userDao;
@Override
public List<User> getAllUser() {
return userDao.getAllUser();
}
@Override
public void insert(User user) {
userDao.insert(user);
}
}
3.5创建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.sml.mybatisdemo.dao.UserDao">
<select id="getAllUser" resultType="com.sml.mybatisdemo.domin.User" >
SELECT * FROM userinfo;
</select>
<insert id="insert" parameterType="com.sml.mybatisdemo.domin.User" useGeneratedKeys="true" keyProperty="userId">
insert into
userinfo(id,userName,age, sex)
values
(#{id},#{userName},#{age},#{sex})
</insert>
</mapper>
3.6 创建controller
package com.sml.mybatisdemo.controller;
import com.sml.mybatisdemo.domin.User;
import com.sml.mybatisdemo.service.UserService;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class UserController {
@Autowired
UserService userService;
@GetMapping(value = "/getAllUser")
public List<User> getAllUser(){
return userService.getAllUser();
}
@PostMapping(value = "/insert")
public void insert(@Param("id") int id,
@Param("username") String username,
@Param("age") String age,
@Param("sex") String sex){
User user = new User();
user.setId(id);
user.setUserName(username);
user.setAge(age);
user.setSex(sex);
userService.insert(user);
}
}
3.7MybatisDemoApplication添加注解MapperScan
package com.sml.mybatisdemo;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan({"com.sml.mybatisdemo.dao"})
public class MybatisDemoApplication {
public static void main(String[] args) {
SpringApplication.run(MybatisDemoApplication.class, args);
}
}
3.8项目整体结构
4.总结
使用IDEA搭建了spring-boot+mybatis的工程,实现了和MySQL数据库的交互。
项目代码已传下载频道:https://download.csdn.net/download/u011649495/10802955m
欢迎沟通交流
来源:CSDN
作者:孙行者的修行
链接:https://blog.csdn.net/u011649495/article/details/84319835