前后端分离增删改查 vue+springboot+elementui

前端页面

在这里插入图片描述
在这里插入图片描述

数据库

DROP TABLE IF EXISTS product;
CREATE TABLE product (
CRM_CODE int(8) NOT NULL,
CRM_TYPE varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
CCY_CODE varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
CRM_VALUE_ORI decimal(20, 0) NOT NULL,
CRM_CP_TYPE varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
CRM_CPC varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
CRM_ST_RATING varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
CRM_LT_RATING varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
PRIMARY KEY (CRM_CODE) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;


– Records of product


INSERT INTO product VALUES (1390000, ‘银行承兑汇票(非特别授信)(ZY0301006)’, ‘人民币(CNY)’, 1000, ‘商业银行(BANM)’, ‘中华人民共和国(CHN)’, NULL, NULL);
INSERT INTO product VALUES (1390001, ‘质押-现金’, ‘人民币(CNY)’, 5000, ‘一般公司(CROP)’, ‘中华人民共和国(CHN)’, NULL, NULL);

后端代码

层级结构

在这里插入图片描述

具体后端代码

bean

public class Product implements Serializable {
    private Integer CRM_CODE;
    private String CRM_TYPE;
    private String CCY_CODE;
    private BigDecimal CRM_VALUE_ORI;
    private String CRM_CP_TYPE;
    private String CRM_CPC;
    private String CRM_ST_RATING;
    private String CRM_CP_RATING;
    private String CRM_LT_RATING;
    private String START_DT;
    private String MAT_DT;

    public Integer getcrm_CODE() {
        return CRM_CODE;
    }

    public void setCRM_CODE(Integer CRM_CODE) {
        this.CRM_CODE = CRM_CODE;
    }

    public String getcrm_TYPE() {
        return CRM_TYPE;
    }

    public void setCRM_TYPE(String CRM_TYPE) {
        this.CRM_TYPE = CRM_TYPE;
    }

    public String getccy_CODE() {
        return CCY_CODE;
    }

    public void setCCY_CODE(String CCY_CODE) {
        this.CCY_CODE = CCY_CODE;
    }

    public BigDecimal getcrm_VALUE_ORI() {
        return CRM_VALUE_ORI;
    }

    public void setCRM_VALUE_ORI(BigDecimal CRM_VALUE_ORI) {
        this.CRM_VALUE_ORI = CRM_VALUE_ORI;
    }

    public String getcrm_CP_TYPE() {
        return CRM_CP_TYPE;
    }

    public void setCRM_CP_TYPE(String CRM_CP_TYPE) {
        this.CRM_CP_TYPE = CRM_CP_TYPE;
    }

    public String getcrm_CPC() {
        return CRM_CPC;
    }

    public void setCRM_CPC(String CRM_CPC) {
        this.CRM_CPC = CRM_CPC;
    }

    public String getcrm_ST_RATING() {
        return CRM_ST_RATING;
    }

    public void setCRM_ST_RATING(String CRM_ST_RATING) {
        this.CRM_ST_RATING = CRM_ST_RATING;
    }

    public String getcrm_CP_RATING() {
        return CRM_CP_RATING;
    }

    public void setCRM_CP_RATING(String CRM_CP_RATING) {
        this.CRM_CP_RATING = CRM_CP_RATING;
    }

    public String getcrm_LT_RATING() {
        return CRM_LT_RATING;
    }

    public void setCRM_LT_RATING(String CRM_LT_RATING) {
        this.CRM_LT_RATING = CRM_LT_RATING;
    }

    public String getstart_DT() {
        return START_DT;
    }

    public void setSTART_DT(String START_DT) {
        this.START_DT = START_DT;
    }

    public String getmat_DT() {
        return MAT_DT;
    }

    public void setMAT_DT(String MAT_DT) {
        this.MAT_DT = MAT_DT;
    }

    @Override
    public String toString() {
        return "Product{" +
                "CRM_CODE=" + CRM_CODE +
                ", CRM_TYPE='" + CRM_TYPE + '\'' +
                ", CCY_CODE='" + CCY_CODE + '\'' +
                ", CRM_VALUE_ORI=" + CRM_VALUE_ORI +
                ", CRM_CP_TYPE='" + CRM_CP_TYPE + '\'' +
                ", CRM_CPC='" + CRM_CPC + '\'' +
                ", CRM_ST_RATING='" + CRM_ST_RATING + '\'' +
                ", CRM_CT_RATING='" + CRM_CP_RATING + '\'' +
                ", CRM_LT_RATING='" + CRM_LT_RATING + '\'' +
                ", START_DT='" + START_DT + '\'' +
                ", MAT_DT='" + MAT_DT + '\'' +
                '}';
    }
}
public class RespBean {
    private Integer status;
    private String msg;
    private Object obj;

    public RespBean(Integer status, String msg) {
        this.status = status;
        this.msg = msg;
    }

    public static final RespBean DELETE_SUCCESS = new RespBean(200,"删除成功");
    public static final RespBean DELETE_ERROR = new RespBean(-1,"删除失败");

    public static final RespBean ADD_SUCCESS = new RespBean(200,"添加成功");
    public static final RespBean ADD_ERROR = new RespBean(-1,"添加失败");

    public static final RespBean UPDATE_SUCCESS = new RespBean(200,"更新成功");
    public static final RespBean UPDATE_ERROR = new RespBean(-1,"更新失败");

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getMsg() {
        return msg;
    }

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

    public Object getObj() {
        return obj;
    }

    public void setObj(Object obj) {
        this.obj = obj;
    }

    private RespBean(Integer status, String msg, Object obj) {
        this.status = status;
        this.msg = msg;
        this.obj = obj;
    }

    private RespBean() {
    }

}

controller

@RestController
public class BankController {

    @Autowired
    BankService bankService;

    @GetMapping("/getAll")
    @CrossOrigin(origins = "*",maxAge = 3600)
    public List<Product> findAll(){
        return bankService.getAll();
    }

    @PostMapping("/addProduct")
    @CrossOrigin(origins = "*",maxAge = 3600)
    public RespBean addProduct(@RequestBody String product){

        System.out.println(product);
        String objectStr = product;
        String sd = objectStr.substring(15,25);
        String ed = objectStr.substring(53,63);
        Product p = JSONObject.parseObject(objectStr,Product.class);
        p.setSTART_DT(sd);
        p.setMAT_DT(ed);
//        System.out.println(p);
        if(bankService.addProduct(p)==true){
            return RespBean.ADD_SUCCESS;//添加成功
        }
        return RespBean.ADD_ERROR;//添加失败
    }

    @DeleteMapping("product/{crm_CODE}")
    @CrossOrigin(origins = "*",maxAge = 3600)
    public RespBean deleteProduct(@PathVariable  Integer crm_CODE){

        if(bankService.deleteProductById(crm_CODE)==true){
            return RespBean.DELETE_SUCCESS;//删除成功
        }
        return RespBean.DELETE_ERROR;//删除失败
    }

    @PutMapping("product")
    @CrossOrigin(origins = "*",maxAge = 3600)
    public RespBean updateProductById(@RequestBody String product){
        System.out.println(product);
        String objectStr = product;
        String sd = objectStr.substring(15,25);
        String ed = objectStr.substring(53,63);
        Product p = JSONObject.parseObject(objectStr,Product.class);
        p.setSTART_DT(sd);
        p.setMAT_DT(ed);
        System.out.println(p);
//        System.out.println(crm_CODE);
        if(bankService.updateProductById(p)==true){
            return RespBean.UPDATE_SUCCESS;//添加成功
        }
        return RespBean.UPDATE_ERROR;//添加失败
    }
}

mapper

@Mapper
public interface BankMapper {

    //查询
    List<Product> getAll();
    //增加
    Boolean addProduct(Product product);
    //删除
    Boolean deleteProductById(Integer id);
    //修改
    Boolean updateProductById(Product product);
}

service

public interface BankService {

    List<Product> getAll();

    Boolean addProduct(Product product);

    Boolean deleteProductById(Integer id);

    Boolean updateProductById(Product product);
}
@Service
public class BankServiceImpl implements BankService {

    @Autowired
    private BankMapper bankMapper;

    @Override
    public List<Product> getAll() {
        return bankMapper.getAll();
    }

    @Override
    public Boolean addProduct(Product product) {
        return bankMapper.addProduct(product);
    }

    @Override
    public Boolean deleteProductById(Integer id) {
        return bankMapper.deleteProductById(id);
    }

    @Override
    public Boolean updateProductById(Product product) {
        return bankMapper.updateProductById(product);
    }
}

mybatis

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="useGeneratedKeys" value="true" />
    </settings>

    <!-- 为JavaBean起类别名 -->
    <typeAliases>
        <package name="com.muke.bean" />
    </typeAliases>
</configuration>
<?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.muke.mapper.BankMapper">
    <select id="getAll" resultType="com.muke.bean.Product">
        select * from product
    </select>
        <insert id="addProduct" parameterType="com.muke.bean.Product" useGeneratedKeys="true" keyProperty="CRM_CODE" >
        INSERT INTO product(CRM_TYPE,CCY_CODE,CRM_VALUE_ORI,CRM_CP_TYPE,CRM_CPC,CRM_ST_RATING,CRM_LT_RATING,START_DT,MAT_DT)
                    VALUES (#{CRM_TYPE}, #{CCY_CODE}, #{CRM_VALUE_ORI}, #{CRM_CP_TYPE}, #{CRM_CPC},#{CRM_ST_RATING},#{CRM_LT_RATING},#{START_DT},#{MAT_DT});
    </insert>

    <delete id="deleteProductById" parameterType="Integer">
        delete from product where CRM_CODE=#{crm_CODE}
    </delete>

    <update id="updateProductById" parameterType="com.muke.bean.Product">
        update product set CRM_CODE=#{crm_CODE},CRM_TYPE=#{crm_TYPE},CCY_CODE=#{ccy_CODE},CRM_VALUE_ORI=#{crm_VALUE_ORI},CRM_CP_TYPE=#{crm_CP_TYPE},
    CRM_CPC=#{crm_CPC},CRM_CP_RATING=#{crm_CP_RATING},CRM_ST_RATING=#{crm_ST_RATING},start_DT=#{start_DT},mat_DT=#{mat_DT}
    where CRM_CODE=#{crm_CODE}
    </update>
</mapper>

application.yml

server:
  port: 8888

spring:
  resources:
    static-locations: classpath:/
  datasource:
    url: jdbc:mysql://localhost:3306/bank?serverTimezone=UTC&useSSL=false&characterEncoding=UTF-8
    username: root
    password: 267367tt
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource

mybatis:
  config-location: classpath:mybatis/mybatis_config.xml
  mapper-locations: classpath:mybatis/mapper/*Mapper.xml

具体前端代码

请前往本人的git仓库自行获取
https://github.com/MUKE-start/vue.git

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值