大学生毕业设计之SpringBoot+Vue前后端分离项目中后端某一功能模块的设计与开发-----实现基础的增删改查

**本文以药品管理功能为例**

数据库设计

SpringBoot后端

环境配置省略(具体的环境因人而异)

部分依赖文件

<dependencies>
<!--        jwt-->
        <dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>4.3.0</version>
        </dependency>


        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>
        <!-- SpringBoot2.2.5默认的mysql是mysql8。所有手动降级为mysql5 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.41</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <!-- 热部署 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
        </dependency>
        <!-- spring与mybatis整合包 -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.1.1</version>
        </dependency>
    </dependencies>

Entity实体类

package cn.itsource.sickbay.Entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigInteger;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class Drugs {
    private BigInteger did;
    private String dname;
    private String dbrand;
    private String dproduct;
    private String dcreate;
    private String dendtime;
    private String dprice;
    private Integer stock;
    private Integer used;
    private Integer addin;
    private String addstaff;
    private String dfrom;
}

Mapper持久层

package cn.itsource.sickbay.Mapper;

import cn.itsource.sickbay.Entity.Drugs;
import cn.itsource.sickbay.Entity.Records;
import org.apache.ibatis.annotations.Mapper;

import java.math.BigInteger;
import java.util.List;
@Mapper
public interface DrugsMapper {
    /**
     * 药品列表
     */
    List<Drugs> queryDrugsList();

    /**
     * 药品的使用和入库
     */
    Integer UpdateDrugs(Drugs drugs);

    /**
     * 药品种类的添加
     */
    Integer AddDrugs(Drugs drugs);

    /**
     * 药品种类的移除
     */
    Integer DeleteDrugs(BigInteger did);
}

Service业务逻辑层

Service interface

package cn.itsource.sickbay.Service;

import cn.itsource.sickbay.Entity.Drugs;

import java.math.BigInteger;
import java.util.List;

public interface IdrugsService {
    /**
     * 药品列表
     */
    List<Drugs> queryDrugsList();

    /**
     * 药品的使用和入库
     */
    Integer UpdateDrugs(Drugs drugs);

    /**
     * 药品种类的添加
     */
    Integer AddDrugs(Drugs drugs);

    /**
     * 药品种类的移除
     */
    Integer DeleteDrugs(BigInteger did);
}

Service Impl

//Idea中alt + enter快速接口实现类

实现接口后引入Mapper进行数据操作。

package cn.itsource.sickbay.Service.Impl;

import cn.itsource.sickbay.Entity.Drugs;
import cn.itsource.sickbay.Mapper.DrugsMapper;
import cn.itsource.sickbay.Service.IdrugsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.math.BigInteger;
import java.util.List;

@Service
public class IdrugsServiceImpl implements IdrugsService {
    @Autowired
    private DrugsMapper mapper;

    @Override
    public List<Drugs> queryDrugsList() {
        return mapper.queryDrugsList();
    }

    @Override
    public Integer UpdateDrugs(Drugs drugs) {
        return mapper.UpdateDrugs(drugs);
    }

    @Override
    public Integer AddDrugs(Drugs drugs) {
        return mapper.AddDrugs(drugs);
    }

    @Override
    public Integer DeleteDrugs(BigInteger did) {
        return mapper.DeleteDrugs(did);
    }
}

DrugsMapper.xml  SQL映射文件

<?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="cn.itsource.sickbay.Mapper.DrugsMapper">
    <select id="queryDrugsList" resultType="Drugs">
        SELECT
            DID, DNAME, DBRAND, DPRODUCT, DCREATE, DENDTIME, DPRICE, STOCK, USED, ADDIN, ADDSTAFF, DFROM
        FROM drugs
    </select>
</mapper>

Controller控制类

package cn.itsource.sickbay.Controller;

import cn.itsource.sickbay.Common.R;
import cn.itsource.sickbay.Service.IdrugsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@CrossOrigin(origins = "*")
@RequestMapping("/drugs")
public class DrugsController {
    @Autowired
    private IdrugsService service;

    @GetMapping("/list")
    public R queryDrugsList() {
        return R.OK().setData(service.queryDrugsList());
    }
}

这里是以药品管理功能中的查询弄能进行的功能测试,

测试结果通过。

该功能模块的增删改功能可同理依次实现。

  • 14
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值