Spring_Boot_mybatis plus连接数据库实现增删查改

本文详细介绍了如何在Spring Boot项目中使用Mybatis Plus进行数据库的增删查改操作,包括实体类的创建、分页配置、控制器、服务层的实现,以及自定义分页器和数据源配置等步骤。
摘要由CSDN通过智能技术生成

在这里插入图片描述

实体类

EmpAttr

package cn.ps.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;


@TableName("emp_t")
public class EmpAttr {
   
	@TableId(type=IdType.AUTO)
	private String empno;
	@TableField("ename")
	private String ename;
	private String sal;
	private String job;
	private String email;
	private String phone;

	public String getEmpno() {
   
		return empno;
	}

	public void setEmpno(String empno) {
   
		this.empno = empno;
	}

	public String getEname() {
   
		return ename;
	}

	public void setEname(String ename) {
   
		this.ename = ename;
	}

	public String getSal() {
   
		return sal;
	}

	public void setSal(String sal) {
   
		this.sal = sal;
	}

	public String getJob() {
   
		return job;
	}

	public void setJob(String job) {
   
		this.job = job;
	}

	public String getEmail() {
   
		return email;
	}

	public void setEmail(String email) {
   
		this.email = email;
	}

	public String getPhone() {
   
		return phone;
	}

	public void setPhone(String phone) {
   
		this.phone = phone;
	}
}

``

分页配置(一般放到实体层)

Result

package cn.ps.entity;


import java.util.List;


public class Result {
   
    private  int code;
    private String msg;
    private int count;
    private List data;

    public int getCode() {
   
        return code;
    }

    public void setCode(int code) {
   
        this.code = code;
    }

    public String getMsg() {
   
        return msg;
    }

    public void setMsg(String msg) {
   
        this.msg = msg;
    }

    public int getCount() {
   
        return count;
    }

    public void setCount(int count) {
   
        this.count = count;
    }

    public List getData() {
   
        return data;
    }

    public void setData(List data) {
   
        this.data = data;
    }
}

控制层 (controller)

EmpController.java

package cn.ps.controller;


import cn.ps.entity.EmpAttr;
import cn.ps.entity.Result;
import cn.ps.service.EmpService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.validation.Valid;



@RestController
public class EmpController {
   

	@Autowired
	private EmpService service;
	

	/**
	 * 多条件搜索
	 * listEmp?ename=a&curPage=1&pageNum=2
	 * @param ename
	 * @param page
	 * @param limit
	 */

	@GetMapping(value = "/queryEmp")
	public Result listEmp(String sal,String ename, String page, String limit) throws Exception {
   
		try {
   
			Result pb=service.queryEmp(sal,ename,page,limit);
			return pb;
		} catch (Exception e) {
   			
			e.printStackTrace();
		}
		return null;
	}


	@PostMapping(value = "adEmp")
	public Result addEmp(EmpAttr empAttr) throws Exception {
   
		Result rt=new Result();
		try{
   
			service.addEmp(empAttr);
		}catch(Exception e){
   
			rt.setCode(1);
			rt.setMsg("新增出错"+e.getMessage());
		}
		return rt;
	}


	@DeleteMapping(value = "adEmp/{empno}")
	public Result addEmp(@PathVariable String empno) throws Exception {
   
		Result rt=new Result();
		try{
   
			service.deleteEmp(empno);
		}catch(Exception e){
   
			rt.setCode(1);
			rt.setMsg("删除出错"+e.getMessage());
		}
		return rt;
	}


	@PutMapping(value = "adEmp/{empno}")
	public Result addEmp(@PathVariable String empno, @Valid EmpAttr empAttr ) throws Exception {
   
		Result rt=new Result();
		empAttr.setEmpno(empno);
		try{
   
			service.updateEmp(empAttr);
		}catch(Exception e){
   
			rt.setCode(1);
			rt.setMsg("修改出错"+e.getMessage());
		}
		return rt;
	}
}

服务层

实现类EmpServiceImpl.java

package cn.ps.service.imp;

import java.sql.SQLException;
import java.util.List;
import cn.ps.entity.EmpAttr;

import cn.ps.entity.Result;
import cn.ps.mapper.EmpMapper;

import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import cn.ps.service.EmpService;


@Service
public class EmpServiceImpl implements EmpService{
   
	
	@Autowired
	private EmpMapper empMapper;
	
	public Result queryEmp(String sal,String ename, String curPage, String pageNum ) throws SQLException{
   
		//第一次访问 没有当前页
		if(StringUtils.isEmpty(curPage)) {
   
			curPage="1";
		}
		if(StringUtils.isEmpty(pageNum)) {
   
			pageNum="10";
		}
		if(StringUtils.isEmpty(ename)) {
   
			ename="";
		}
		if(StringUtils.isEmpty(sal)) {
   
			sal="";
		}
		
		//转换成int类型
		int curPageIn=Integer.parseInt(curPage);
		int pageNumIn=Integer.parseInt(pageNum);
		QueryWrapper<EmpAttr> qw=new QueryWrapper<>();
		qw.like("ename", ename);
		qw
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值