@准备工作:
1.创建一个springboot项目,并添加四个依赖
分别是,MyBatis的启动依赖和安装依赖,SQL的依赖,测试依赖,如下:
2.然后创建一张至少两条数据的表
(表可以用各种图形化工具创建,因为SQL语句是统一的)
3.配置数据库的信息:
(一定要是自己的表名和密码,否则连接不上你本机数据库信息)
4.创建一个自己的员工类,来为后面的操作做准备:
package com.zaizai.springmybatisrued.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.time.LocalDate;
import java.time.LocalDateTime;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Emp {
private Integer id;
private String username;
private String password;
private String name;
private Short gender;
private String image;
private Short job;
private LocalDate entrydate;
private Integer deptId;
private LocalDateTime createTime;
private LocalDateTime updateTime;
}
@增
1.先常见一个接口,在接口里面创建一个接口方法来实现增加数据
(方法上面要一个注解,就是数据库添加数据的关键字,看下面代码):
(注意,这里两个注解第一个是是否返回主键,并给主键设置返回给谁用的,第二个就是往数据库添加数据的注解,添加的对象被封装到了一个emp类里面)
@Options(keyProperty = "id",useGeneratedKeys = true)
@Insert("insert into emp (username, name, gender, image, job, entrydate, dept_id, create_time, update_time)" +
" values (#{username},#{name},#{gender},#{image},#{job},#{entrydate},#{deptId},#{createTime},#{updateTime})")
void insert(Emp emp);
2.接口设置好了之后直接在测试类里面写测试代码:(先设置对象,然后封装好的对象交给方法添加到数据库)
@Test
public void springInsert() {
Emp emp = new Emp();
// emp.setId(15);
emp.setUsername("Tom3");
emp.setName("汤姆2");
emp.setImage("1 .jpg");
emp.setGender((short) 1);
emp.setJob((short) 1);
emp.setEntrydate(LocalDate.of(2000, 1, 1));
emp.setCreateTime(LocalDateTime.now());
emp.setUpdateTime(LocalDateTime.now());
emp.setDeptId(1);
empMapper.insert(emp);
System.out.println(emp.getId());
}
@删
方法:
(我这个是设置的返回删除的数据的主键的)
@Delete("delete from emp where id=#{id}")
//id删除数据
public Integer delete(Integer id);
实现:
@Autowired
private EmpMapper empMapper;
@Test
public void springUred() {
//返回的是删除的数据数
Integer id = empMapper.delete(15);
System.out.println(id);
}
@改
(接下来就差不多了,都是用对应的接口然后定义方法,调用方法连接数据库进行对数据的操作)
方法:
@Update("update emp set username=#{username},name=#{name},gender=#{gender},image=#{image}," +
"job=#{job},entrydate=#{entrydate},dept_id=#{deptId},update_time=#{updateTime} where id=#{id}")
public void update(Emp emp);
实现:
public void testUpdate() {
//构造员工对象
Emp emp = new Emp();
emp.setId(14);
emp.setUsername("wei");
emp.setName("afaf");
emp.setImage("1 .jpg");
emp.setGender((short) 1);
emp.setJob((short) 1);
emp.setEntrydate(LocalDate.of(2000, 1, 1));
emp.setUpdateTime(LocalDateTime.now());
emp.setDeptId(1);
empMapper.update(emp);
}
@查
方法:
@Select("select * from emp where id=#{id}")
public Emp select(Integer id);
实现:
public void springSelect(){
Emp emp = empMapper.select(14);
System.out.println(emp);
}
(一定要注意准备工作准备好,依赖都不要少,要不然必然爆红!!!!!!)