springboot整合mybatis实现数据库的增删查改的两种方式
程序员文章站
2022-05-06 20:56:58
...
springboot整合mybatis实现数据库的增删查改的两种方式
注释的是纯注解形式
mapper
package com.itheima.mapper;
import com.itheima.pojo.User;
import org.apache.ibatis.annotations.*;
import java.util.List;
/**
* @Mapper == @Component == @Service == @Repository == @ @Controller
*/
//当前接口的动态代理的实现类,注入Spring的容器
@Mapper
public interface UserMapper {
@Select("select * from user")
List<User> findAll1();
/**
* 查询全部
* @return
*/
// @Select("select * from user;")
List<User> findAll();
@Insert("insert into user(id,username,password,name) values(#{id},#{username},#{password},#{name})")
int addUser1(User user);
/**
* 增加用户
* @param user
* @return
*/
// @Insert("insert into user(id,username,password,name) values(#{id},#{username},#{password},#{name});")
int addUser(User user);
@Delete("delete from user where id=#{id}")
int delUser1(int id);
/**
* 删除用户
*/
// @Delete("delete from user where id=#{id}")
int delUser(int id);
@Update("update user set username=#{username},password=#{password},name=#{name} where id=#{id}")
int updUser1(User user);
/**
* 更改用户
*/
// @Update("update user set username=#{username},password=#{password},name=#{name} where id=#{id}")
int updUser(User user);
}
service以及serviceimpl
package com.itheima.service;
import com.itheima.pojo.User;
import java.util.List;
public interface UserService {
List<User> findAll1();
//查询所有
List<User> findAll();
int addUser1(User user);
//增加用户
int addUser(User user);
int delUser1(int id);
//删除用户
int delUser(int id);
int updUser1();
//更改用户
int updUser();
}
package com.itheima.service.impl;
import com.itheima.mapper.UserMapper;
import com.itheima.pojo.User;
import com.itheima.service.UserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/*
* @Autowired 注解会出现标红 但是是正常现象 可以使用@Resource注解
*
* */
@Service
public class UserServiceImpl implements UserService {
@Resource
private UserMapper userMapper;
@Override
public List<User> findAll1() {
return userMapper.findAll1();
}
@Override
public int delUser1(int id) {
return userMapper.delUser1(id);
}
@Override
public int addUser1(User user) {
return userMapper.addUser1(user);
}
@Override
public int updUser1() {
User user = new User();
user.setId(5);
user.setUsername("huahua");
user.setPassword("999");
user.setName("花花");
return userMapper.updUser1(user);
}
/**
* 查找全部用户
* @return
*/
@Override
public List<User> findAll() {
return userMapper.findAll();
}
/**
* 添加用话
* @param user
* @return
*/
@Override
public int addUser(User user) {
return userMapper.addUser(user);
}
/**
* 根据id删除用户
* @param id
* @return
*/
@Override
public int delUser(int id) {
return userMapper.delUser(id);
}
/**
* 更新用户
* @return
*/
@Override
public int updUser() {
User user1 = new User();
user1.setId(6);
user1.setUsername("xixi");
user1.setPassword("456");
user1.setName("嘻嘻");
return userMapper.updUser(user1);
}
}
controller
package com.itheima.controller;
import com.itheima.pojo.User;
import com.itheima.service.impl.UserServiceImpl;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@RestController
public class UserController {
@Resource
private UserServiceImpl userServiceImpl;
@RequestMapping("/user/findAll1")
public List<User> findAll1() {
return userServiceImpl.findAll1();
}
/**
* 查找全部用户
* @return
*/
@RequestMapping("/user/findAll")
public List<User> findAll() {
return userServiceImpl.findAll();
}
@RequestMapping("/user/addUser1")
public void addUser1() {
User user = new User(5,"xiaoming","666","小明");
int index = userServiceImpl.addUser1(user);
if(index > 0) {
System.out.println("增加成功");
}else {
System.out.println("增加失败");
}
}
/**
* 添加用户
*/
@RequestMapping("/user/addUser")
public void addUser() {
User user = new User(3,"wangwu","123","王五");
int index = userServiceImpl.addUser(user);
if(index > 0) {
System.out.println("添加成功");
}else {
System.out.println("添加失败");
}
}
@RequestMapping("/user/delUser1")
public void delUser1(@RequestParam(value = "id") int id) {
int index = userServiceImpl.delUser1(id);
if(index > 0) {
System.out.println("删除成功");
}else {
System.out.println("删除失败");
}
}
/**
* 根据id删除用户
* @param id
*/
@RequestMapping("/user/delUser")
public void delUser(@RequestParam(value = "id") int id) {
int index = userServiceImpl.delUser(id);
if(index > 0) {
System.out.println("删除成功");
}else {
System.out.println("删除失败");
}
}
@RequestMapping("/user/updUser1")
public void updUser1() {
int index = userServiceImpl.updUser1();
if(index > 0) {
System.out.println("更新成功");
}else {
System.out.println("更新失败");
}
}
/**
* 更新用户
*/
@RequestMapping("/user/updUser")
public void updUser() {
int index = userServiceImpl.updUser();
if(index > 0) {
System.out.println("更新成功");
}else {
System.out.println("更新失败");
}
}
}
pojo
package com.itheima.pojo;
import lombok.Data;
@Data
public class User {
private int id;
private String username;
private String password;
private String name;
public User(int id, String username, String password, String name) {
this.id = id;
this.username = username;
this.password = password;
this.name = name;
}
public User() {
}
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 getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public User(int id) {
this.id = id;
}
}
配置文件
# 配置数据库连接信息,数据库名称
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/heima?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
# 账户
spring.datasource.username=root
# 密码
spring.datasource.password=123456
# DB 配置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# 开启mybatis的mapper扫描
mybatis.mapper-locations=classpath:mapper/*Mapper.xml
# 开启mybatis的别名配置
mybatis.type-aliases-package=com.itheima.pojo
mapper.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.itheima.mapper.UserMapper">
<!--报红但是别名配置成功-->
<!--查找全部用户-->
<select id="findAll" resultType="user">
select * from user ;
</select>
<!--删除用户-->
<delete id="delUser" parameterType="int">
delete from user where id=#{id};
</delete>
<!--添加用户-->
<insert id="addUser" parameterType="user">
insert into user(username,password,name) values(#{username},#{password},#{name});
</insert>
<!--更新用户-->
<update id="updUser" parameterType="user">
update user set username=#{username},password=#{password},name=#{name} where id=#{id};
</update>
</mapper>
推荐阅读
-
php中PDO方式实现数据库的增删改查
-
PHP实现数据库的增删查改功能及完整代码
-
Java通过JDBC连接数据库的三种方式!!!并对数据库实现增删改查
-
记录一下springboot+mybatis实现增删改查的基本流程和心得
-
SpringBoot整合Mybatis实现高德地图定位并将数据存入数据库的步骤详解
-
使用 Mybatis 实现数据库的增删改查、Map和模糊查询
-
关于学生对象的增删改查的“改”(网页界面,bootstrap)(续,使用模态窗的修改操作)第二种实现方式(JavaScript DOM操作)
-
[实例]php中PDO方式实现数据库的增删改查
-
Python操作mysql数据库实现增删查改功能的方法
-
php中PDO方式实现数据库的增删改查