新学期使用ssm开发一个教材管理系统

文章主要描述了一个Java后台管理系统,涉及教材管理功能,包括教材领取、数据导入、查询、删除等操作,以及用户管理模块如登录、用户信息管理等,使用了Spring框架和EasyPoi库进行Excel处理。
摘要由CSDN通过智能技术生成

(1)、领取教材

只能在对应的教师那里领取教材

(2)、已领教材付款

(3)、查询自己已经领取的教材

部分功能介绍

管理员账户信息

管理员用户密码修改

管理员用户信息搜索

管理员教材录入

管理员供货商

管理员教材入库

老师端领取教材

老师端查询教材

篇幅所限,就不在一一叙说具体单个功能模块了

核心代码实现:

package com.dev.books.controller;

import cn.afterturn.easypoi.entity.vo.NormalExcelConstants;

import com.alibaba.fastjson.JSON;

import com.dev.books.pojo.Book;

import com.dev.books.pojo.Supplier;

import com.dev.books.service.BookService;

import com.dev.books.service.SupplierService;

import com.dev.books.util.Layui;

import com.dev.books.util.POIUtil;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestBody;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import org.springframework.web.bind.annotation.ResponseBody;

import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

@Controller

public class BookController {

@Autowired

BookService bookService;

/*

将表格中的数据插入到

*/

@ResponseBody

@RequestMapping(“/book/insertData”)

public Object supplierImportExcel(@RequestParam(“file”) MultipartFile file){

int n= 0;

//long s = file.getSize();

Map<String,Object> map = new HashMap<>();

Map<String, Object> result = new HashMap<String, Object>();

List book = POIUtil.importExcel(file,Book.class);

System.out.println(book);

//List supplier2 = supplierService.findAllSupplier();

//supplier1.addAll(supplier2);

for(int i=0;i<book.size();i++){

map.put(“id”,book.get(i).getId());

map.put(“book_name”,book.get(i).getBook_name());

map.put(“book_kind”,book.get(i).getBook_kind());

map.put(“book_price”,book.get(i).getBook_price());

map.put(“qs_name”,book.get(i).getQs_name());

n = bookService.addBook(map);

}

System.out.println(“map:”+map);

if(n>0){

result.put(“code”, 0);

result.put(“message”, “success”);

result.put(“data”, file.getOriginalFilename());

}else{

result.put(“code”, -1);

result.put(“message”, “failure”);

result.put(“data”, file.getOriginalFilename());

}

return result;

}

@ResponseBody

@RequestMapping(value = “/book/getAllBookByPage”,produces=“application/json;charset=UTF-8”)

public String getAllBookByPage(@RequestParam(“limit”) String limit, @RequestParam(“page”) String page){

int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);

int pageSize = Integer.parseInt(limit);

List books = bookService.findAllBookByPages(start,pageSize);

List allData = bookService.findAllBook();

Layui l = Layui.data(allData.size(), books);

return JSON.toJSONString(l);

}

@ResponseBody

@RequestMapping(value = “/book/getAllBook”,produces=“application/json;charset=UTF-8”)

public String getAllBook(){

List allData = bookService.findAllBook();

Layui l = Layui.data(allData.size(), allData);

return JSON.toJSONString(l);

}

@ResponseBody

@RequestMapping(value = “/book/findAllBookKind”,produces=“application/json;charset=UTF-8”)

public String findAllBookKind(){

List allKinds = bookService.findAllBookKind();

return JSON.toJSONString(allKinds);

}

@RequestMapping(“/book/exportData”)

public String exportData(HttpServletResponse response){

List books = bookService.findAllBook();

POIUtil.exportExcel(books,Book.class,“书籍基本信息”,“”,response);

return NormalExcelConstants.EASYPOI_EXCEL_VIEW;//需要配置新的视图解析器并设置优先级和扫描

}

@ResponseBody

@RequestMapping(value = “/updateBookById”)

public String updateBookById(@RequestBody Map map){

int n = bookService.updateBookById(map);

if(n>0){

return “success”;

}

return “failure”;

}

@ResponseBody

@RequestMapping(value = “/deleteBookById”)

public String deleteBookById(@RequestParam(“book_id”)String book_id){

int n = bookService.deleteBookById(book_id);

if(n>0){

return “success”;

}

return “failure”;

}

@ResponseBody

@RequestMapping(value = “/findAllBookByBookName”,produces=“application/json;charset=UTF-8”)

public String findAllBookByBookName(@RequestParam(“key[book_name]”)String book_name){

List books = bookService.findAllBookByBookName(book_name);

Layui l = Layui.data(books.size(), books);

return JSON.toJSONString(l);

}

@ResponseBody

@RequestMapping(value = “/findBookNameByQsName”,produces=“application/json;charset=UTF-8”)

public String findBookNameByQsName(@RequestParam(“qs_name”)String qs_name){

List book_names = bookService.findBookNameByQsName(qs_name);

return JSON.toJSONString(book_names);

}

}

package com.dev.books.controller;

import com.alibaba.fastjson.JSON;

import com.dev.books.pojo.Profession;

import com.dev.books.pojo.User;

import com.dev.books.service.UserService;

import com.dev.books.util.Layui;

import com.dev.books.util.RandNum;

import com.wordnik.swagger.annotations.ApiOperation;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.stereotype.Service;

import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpSession;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

@Controller

public class UserController {

@Autowired

UserService userService;

private final Logger log = LoggerFactory.getLogger(UserController.class);

@ResponseBody

@RequestMapping(value = “/userLogin”)

@ApiOperation(value = “根据用户名获取用户对象”, httpMethod = “GET”, response = User.class, notes = “根据用户名获取用户对象”)

public String userLogin(String account, String password, HttpServletRequest request ){

HttpSession session = request.getSession(true);//新建session对象

User user = userService.findOneUser(account,password);

session.setAttribute(“user”,user);

if(user!=null){

return “success”;

}

return “fail”;

}

@ResponseBody

@RequestMapping(value = “/getAllUser”,produces=“application/json;charset=UTF-8”)

public String getAllUser(@RequestParam(“limit”) String limit, @RequestParam(“page”) String page

){

//System.out.println(“bjshbd”);

//int error = 1/0;

int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);

int pageSize = Integer.parseInt(limit);

Listlist = userService.findAllUsersByPage(start,pageSize);

ListallData = userService.findAllUsers();

System.out.println(list);

Layui l = Layui.data(allData.size(), list);

String result = JSON.toJSONString(l);

System.out.println(result);

return result;

}

@ResponseBody

@RequestMapping(value = “/getUserInfo”,produces=“application/json;charset=UTF-8”,method =RequestMethod.POST )

public String getUserInfo(@RequestParam(“limit”) String limit, @RequestParam(“page”) String page,

@RequestParam(“key[college_data]”) String college_data,

@RequestParam(“key[profession_data]”) String profession_data,

@RequestParam(“key[grade_data]”) String grade_data,

@RequestParam(“key[cclass_data]”) String cclass_data

){

System.out.println(“profession_data:”+profession_data);

Listlist = userService.findUserByCondictions(college_data,profession_data,grade_data,cclass_data);

Layui l = Layui.data(list.size(), list);

return JSON.toJSONString(l);

}

@ResponseBody

@RequestMapping(value = “/updateUserInfo” )

public String updateUserInfo(@RequestBody Map map,HttpServletRequest request){

HttpSession session = request.getSession(true);//新建session对象

User user = (User) session.getAttribute(“user”); //将对应数据存入session中

String id = user.getId();

map.put(“id”,id);

int n = userService.updateUserInfo(map);

if(n>0){

return “success”;

}

return “failure”;

}

@ResponseBody

@RequestMapping(value = “/updateUserPwd” )

public String updateUserPwd(@RequestBody Map map,HttpServletRequest request){

HttpSession session = request.getSession(true);//新建session对象

User user = (User) session.getAttribute(“user”); //将对应数据存入session中

String id = user.getId();

System.out.println(map);

String password = map.get(“password”).toString();

System.out.println(“password:”+password);

int n = userService.updateUserPwd(password,id);

if(n>0){

return “success”;

}

return “failure”;

}

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

复习的面试资料

这些面试全部出自大厂面试真题和面试合集当中,小编已经为大家整理完毕(PDF版)

  • 第一部分:Java基础-中级-高级

image

  • 第二部分:开源框架(SSM:Spring+SpringMVC+MyBatis)

image

  • 第三部分:性能调优(JVM+MySQL+Tomcat)

image

  • 第四部分:分布式(限流:ZK+Nginx;缓存:Redis+MongoDB+Memcached;通讯:MQ+kafka)

image

  • 第五部分:微服务(SpringBoot+SpringCloud+Dubbo)

image

  • 第六部分:其他:并发编程+设计模式+数据结构与算法+网络

image

进阶学习笔记pdf

  • Java架构进阶之架构筑基篇(Java基础+并发编程+JVM+MySQL+Tomcat+网络+数据结构与算法

image

  • Java架构进阶之开源框架篇(设计模式+Spring+SpringMVC+MyBatis

image

image

image

  • Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka)

image

image

image

  • Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)

image

image

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
ring+SpringMVC+MyBatis**)**

[外链图片转存中…(img-D0mqON1e-1713726946813)]

[外链图片转存中…(img-Hsb0EEnm-1713726946813)]

[外链图片转存中…(img-xQGxpuXD-1713726946813)]

  • Java架构进阶之分布式架构篇 (限流(ZK/Nginx)+缓存(Redis/MongoDB/Memcached)+通讯(MQ/kafka)

[外链图片转存中…(img-j9malj5w-1713726946814)]

[外链图片转存中…(img-bhnfVmOz-1713726946814)]

[外链图片转存中…(img-TxHosK2T-1713726946814)]

  • Java架构进阶之微服务架构篇(RPC+SpringBoot+SpringCloud+Dubbo+K8s)

[外链图片转存中…(img-8LcsRoCr-1713726946814)]

[外链图片转存中…(img-r7nFoJrU-1713726946814)]

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值