Java(使用注解的方式)连接数据库增删改查-MyBatis

2023-12-13 21:28:39

@准备工作:

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);
    }

(一定要注意准备工作准备好,依赖都不要少,要不然必然爆红!!!!!!)

文章来源:https://blog.csdn.net/m0_71149935/article/details/134908856
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。