当前位置: 首页 > news >正文

图书管理系统练习项目源码-前后端分离-【Java版】

今天给大家分享一个 我最近使用java8, 框架 springboot 写的一个web项目 ,叫图书管理系统。项目主要是来巩固 java8的编程技术。使用的是前端后 分离开发。
主要实现的功能:
1、用户管理:可以新增、编辑、删除用户信息。
2、图书管理:添加、修改、删除图书,并能够查看图书列表。
3、借阅管理:记录图书借阅、归还情况。
4、数据展示:通过前端页面展示系统中的图书、用户信息,提供了简洁、易用的界面。
使用技术
1、Spring Boot 2.7:后端使用Spring Boot 2.7框架,简化了Java开发中的常见配置,帮助开发者快速构建Web应用。
2、MySQL 8:作为关系型数据库管理系统,MySQL 8用于存储用户和图书信息,并支持CRUD操作。
3、Vue 2:前端使用Vue2框架,配合Element UI组件库,提供响应式页面和现代化用户界面。
4、Element UI:帮助实现简洁且功能丰富的UI设计,极大提高了前端开发效率。
首页:
在这里插入图片描述
图书列表:
在这里插入图片描述
借用归还:
在这里插入图片描述
项目代码截图:
在这里插入图片描述

package com.books.base.controller;import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.books.base.entities.BookCategory;
import com.books.base.out.R;
import com.books.base.service.serviceInterface.BookCategoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;/*** 图书分类控制器* 作者:json*/
@RestController
@RequestMapping("/api/bookCategory")
public class BookCategoryController extends BaseController {@Autowiredprivate BookCategoryService bookCategoryService;/*** 分页查询图书分类* @param current 当前页* @param size 每页大小* @param name 分类名称* @param status 状态* @return 分页结果*/@GetMapping("/page")public R page(@RequestParam(defaultValue = "1") Integer current,@RequestParam(defaultValue = "10") Integer size,@RequestParam(required = false) String name,@RequestParam(required = false) Integer status) {IPage<BookCategory> page = new Page<>(current, size);IPage<BookCategory> pageResult = bookCategoryService.pageList(page, name, status);return R.data(pageResult);}/*** 获取图书分类详情* @param id 图书分类ID* @return 图书分类详情*/@GetMapping("/{id}")public R getById(@PathVariable Integer id) {BookCategory bookCategory = bookCategoryService.getById(id);return R.data(bookCategory);}/*** 新增图书分类* @param bookCategory 图书分类信息* @return 操作结果*/@PostMappingpublic R save(@RequestBody BookCategory bookCategory) {boolean result = bookCategoryService.save(bookCategory);return result ? R.success("新增成功") : R.fail("新增失败");}/*** 修改图书分类* @param bookCategory 图书分类信息* @return 操作结果*/@PutMappingpublic R update(@RequestBody BookCategory bookCategory) {boolean result = bookCategoryService.updateById(bookCategory);return result ? R.success("修改成功") : R.fail("修改失败");}/*** 删除图书分类* @param id 图书分类ID* @return 操作结果*/@DeleteMapping("/{id}")public R remove(@PathVariable Integer id) {boolean result = bookCategoryService.removeById(id);return result ? R.success("删除成功") : R.fail("删除失败");}
}

项目虽然功能不是很复杂,但是对于刚开始学习编程的小伙伴,有可能也是有难度的,不过如果自己能尝试着 敲一些项目,会对自己的学习到的编程知识有一个更深的体会。对此项目有兴趣的小伙伴可以去看看学习一下。【非开源项目】

https://wwwoop.com/home/Index/projectInfo?goodsId=110&typeParam=1&subKey=-1

http://www.xdnf.cn/news/1379395.html

相关文章:

  • Python Imaging Library (PIL) 全面指南:PIL基础入门-图像滤波与处理技术
  • week5-[一维数组]去重
  • 机器学习基本概述
  • STM32F407与LAN8720A以太网通信实现指南
  • GraphRAG技术深度解析:重新定义智能问答的未来
  • 【赵渝强老师】MySQL数据库的多实例环境
  • Redis 连接数爆炸:连接池配置错误踩坑记录
  • Electron 简介:Node.js 桌面开发的起点
  • 华为云OBS+HMS+EMRonEC2+HiveSparkFlink+GaussDB
  • QT 概述(背景介绍、搭建开发环境、Qt Creator、程序、项目文件解析、编程注意事项)
  • 隐语Kuscia正式发布 1.0.0 版本,实现支持 Hive 数据源,支持 envoy 日志进行异常分析等功能
  • 银河麒麟桌面操作系统:为什么不让root直接登录图形界面?以及如何安全地解决这个问题
  • vue的动态组件keep-alive实现组件缓存和状态保留
  • Go语言数组完全指南
  • 部署 Go 项目的 N 种方法
  • MyBatis题
  • 前端开发中的CSS变量管理:实现缓存与响应式更新
  • PostgreSQL15——常用函数
  • 农行广西区分行携手广西专精特新商会共探金融赋能专精特新企业新路径
  • Milvus 向量数据库开发实战指南
  • 基于Vue2+elementUi实现树形 横向 合并 table不规则表格
  • 现代前端状态管理:从原理到实战(Vue/React全栈方案)
  • 笔记本电脑蓝牙搜索不到设备-已解决
  • 算法之排序
  • 媒体查询案例之修改背景颜色
  • 从枯燥C++到趣味音乐:我的Windows系统底层探索之旅
  • TypeScript:never类型
  • C++ RAII 浅谈
  • 从Cgroups精准调控到LXC容器全流程操作​:用pidstat/stress测试Cgroups限流,手把手玩转Ubuntu LXC容器全流程​
  • 冒泡排序算法详解(python code)