1.IDEA创建SpringBoot项目
2.选择依赖-关系型数据库(SQL)-勾选MySQL驱动、MyBatis环境、Web环境(没勾选的话手动加依赖)
org.springframework.boot spring-boot-starter-web org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.2 mysql mysql-connector-java runtime org.projectlombok lombok
3.创建application.yml配置文件,配置数据库信息。
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/shun?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
username: root
password: root
driver-class-name: com.mysql.jdbc.Driver
4.创建实体类,关联数据库中的数据。
@Data
public class User {
private int id;
private String name;
private int age;
}
5.创建Mapper类,定义查询所有数据的方法。
@Mapper
@Repository
public interface UserMapper {
@Select("select * from shun2")
public List findAll();
}
6.测试
@SpringBootTest
class DemoApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
void contextLoads() {
List list = userMapper.findAll();
System.out.println(list);
}
}
注解方式CRUD
UserMapper接口中创建CRUD方法
@Select("select * from shun2")
List findAll();
@Select("select * from shun2 where sname = #{name}")
User selectOneByName(@Param("name") String name);
@Insert("INSERT INTO shun2(sname,age) VALUES(#{sname},#{age})")
int addOne(User user);
@Delete("DELETE FROM shun2 WHERe id = #{id}")
boolean deleteOne(int id);
测试类进行测试
测试:查询所有用户
List list1 = userMapper.findAll();
System.out.println(list);*/
//测试:添加一个用户
User u1 = new User("张三",22);
userMapper.addOne(u1);
//测试:根据名字获取用户
User u2 = userMapper.selectOneByName("张三");
System.out.println(u2);
//测试:根据id删除用户
boolean b = userMapper.deleteOne(u2.getId());
System.out.println(b);
XML方式CRUD
新建一个UserXmlMapper接口
public interface UserXmlMapper {
List findAll();
User selectOneByName(String name);
void addOne(User user);
boolean deleteOne(int id);
}
在resources.mapper文件夹下,创建对应的UserMapper.xml
application.yml配置mybatis的mapper.xml文件位置和实体类位置
mybatis: type-aliases-package: com.example.domain mapper-locations: classpath:mapper/*Mapper.xml
测试类进行测试
// 测试:查询所有用户
List list2 = userXmlMapper.findAll();
System.out.println(list2);
// 测试:添加一个用户
User u3 = new User("赵四",40);
userXmlMapper.addOne(u3);
// 测试:根据名字获取用户
User u4 = userXmlMapper.selectOneByName("赵四");
System.out.println(u4);
// 测试:根据id删除用户
boolean b = userXmlMapper.deleteOne(u4.getId());
System.out.println(b);
Controller层提供Web接口
@RestController
public class HelloController {
@Autowired
UserMapper userMapper;
@RequestMapping("/list")
public List selectList(){
List list = userMapper.findAll();
return list;
}
@GetMapping("/add")
public void addOne(@RequestParam(value = "name",required = true) String name,
@RequestParam(value = "age",required = true) int age){
User u = new User(name,age);
userMapper.addOne(u);
}
@GetMapping("/selectOne")
public User selectOne(@RequestParam(value = "name",required = true) String name){
User user = userMapper.selectOneByName(name);
return user;
}
@GetMapping("/delete")
public boolean delte(@RequestParam(value = "id",required = true) int id){
boolean b = userMapper.deleteOne(id);
return b;
}
}



