【Java高级】SpringBoot +JPA+thymeleaf+MySQL实现医院药品管理系统

本博客介绍了如何利用Java、Spring Boot、JPA、Thymeleaf和MySQL数据库构建一个医院药品管理系统。详细阐述了从选择依赖、配置数据库到前后端页面实现的步骤,包括管理员登录、药品信息管理、查询和分页等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

医院药品管理系统是现代化在线医药管理必不可少的基础设施与技术支撑环境。本系统可以实现管理员登录、重置密码,管理员进行药品信息的添加、更新、删除管理,还可以根据药品名称查询供药品信息,以及分页和排序,内置字段有:药品编号、药品名称、价格、厂家、保质期,而药品编号是依据生产日期而形成的。

一、系统实现步骤

1.选择依赖

  1. Lombok
  2. Spring Web
  3. Thymeleaf
  4. Spring Data JPA
  5. MYSQL Driver
    在这里插入图片描述

2.配置数据库并连接

在这里插入图片描述
打开IDEA右上角的database连接如下:
在这里插入图片描述

3.在model层创建一个Medicine类

该medicine类用于药品的属性有药品编号、药品名称、价格、厂家以及保质期,代码实现如下:

import jakarta.persistence.*;
import lombok.Data;

@Data
@Entity
@Table(name = "medicines")
public class Medicine {
   
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;
    @Column(name = "number")
    private Long number;//药品编号
    @Column(name = "name")
    private String name;//药品名称
    @Column(name = "price")
    private String price;//价格
    @Column(name = "manufacturers")
    private String manufacturers;//厂家
    @Column(name = "date")
    private String date;//保质期
}

4.在repository层创建MedicineRepository接口

在数据访问层创建一个MedicineRepository接口,并编写一个查询药品名称的方法,为了能在Web前端以药品名称查询得出药品信息,代码实现如下:

import mm.rr.lmrjava.model.Medicine;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface MedicineRepository extends JpaRepository<Medicine, Long> {
   
    @Query("select a from Medicine a where a.name like %:name%")
    List<Medicine> findByMedicinesName(@Param("name") String name);

}

5.在service层创建MedicineService接口

该MedicineService接口用于封装药品增删改查的方法,代码实现如下:

import mm.rr.lmrjava.model.Medicine;
import org.springframework.data.domain.Page;

import java.util.List;

public interface MedicineService {
   
    //获取所有的药品
    List <Medicine> getAllMedicines();
    //新增/更新一个药品
    void saveMedicine(Medicine medicine);
    //获取指定编号的药品
    Medicine getMedicineById(long id);
    //删除指定编号的药品
    void deleteMedicineById(long id);
    //查询药品
    List<Medicine> findByMedicinesName
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值