package com.book.web;
import com.book.domain.ReaderCard;
import com.book.domain.ReaderInfo;
import com.book.service.LoginService;
import com.book.service.ReaderCardService;
import com.book.service.ReaderInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
@Controller
public class ReaderController {
private ReaderInfoService readerInfoService;
@Autowired
public void setReaderInfoService(ReaderInfoService readerInfoService) {
this.readerInfoService = readerInfoService;
} private LoginService loginService;
@Autowired
public void setLoginService(LoginService loginService) {
this.loginService = loginService;
}
private ReaderCardService readerCardService;
@Autowired
public void setReaderCardService(ReaderCardService readerCardService) {
this.readerCardService = readerCardService;
}
@RequestMapping("allreaders.html")
public ModelAndView allBooks(){
ArrayList<ReaderInfo> readers=readerInfoService.readerInfos();
ModelAndView modelAndView=new ModelAndView("admin_readers");
modelAndView.addObject("readers",readers);
return modelAndView;
}
@RequestMapping("reader_delete.html")
public String readerDelete(HttpServletRequest request,RedirectAttributes redirectAttributes){
int readerId= Integer.parseInt(request.getParameter("readerId"));
boolean success=readerInfoService.deleteReaderInfo(readerId);
if(success){
redirectAttributes.addFlashAttribute("succ", "删除成功!");
return "redirect:/allreaders.html";
}else {
redirectAttributes.addFlashAttribute("error", "删除失败!");
return "redirect:/allreaders.html";
}
}
@RequestMapping("/reader_info.html")
public ModelAndView toReaderInfo(HttpServletRequest request) {
ReaderCard readerCard=(ReaderCard) request.getSession().getAttribute("readercard");
ReaderInfo readerInfo=readerInfoService.getReaderInfo(readerCard.getReaderId());
ModelAndView modelAndView=new ModelAndView("reader_info");
modelAndView.addObject("readerinfo",readerInfo);
return modelAndView;
}
@RequestMapping("reader_edit.html")
public ModelAndView readerInfoEdit(HttpServletRequest request){
int readerId= Integer.parseInt(request.getParameter("readerId"));
ReaderInfo readerInfo=readerInfoService.getReaderInfo(readerId);
ModelAndView modelAndView=new ModelAndView("admin_reader_edit");
modelAndView.addObject("readerInfo",readerInfo);
return modelAndView;
}
@RequestMapping("reader_edit_do.html")
public String readerInfoEditDo(HttpServletRequest request,String name,String sex,String birth,String address,String telcode,RedirectAttributes redirectAttributes){
int readerId= Integer.parseInt(request.getParameter("id"));
ReaderCard readerCard = loginService.findReaderCardByUserId(readerId);
String oldName=readerCard.getName();
if(!oldName.equals(name)){
boolean succo=readerCardService.updateName(readerId,name);
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date nbirth=new Date();
try{
java.util.Date date=sdf.parse(birth);
nbirth=date;
}catch (ParseException e){
e.printStackTrace();
}
ReaderInfo readerInfo=new ReaderInfo();
readerInfo.setAddress(address);
readerInfo.setBirth(nbirth);
readerInfo.setName(name);
readerInfo.setReaderId(readerId);
readerInfo.setTelcode(telcode);
readerInfo.setSex(sex);
boolean succ=readerInfoService.editReaderInfo(readerInfo);
if(succo&&succ){
redirectAttributes.addFlashAttribute("succ", "读者信息修改成功!");
return "redirect:/allreaders.html";
}else {
redirectAttributes.addFlashAttribute("error", "读者信息修改失败!");
return "redirect:/allreaders.html";
}
}
else {
System.out.println("部分修改");
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date nbirth=new Date();
try{
java.util.Date date=sdf.parse(birth);
nbirth=date;
}catch (ParseException e){
e.printStackTrace();
}
ReaderInfo readerInfo=new ReaderInfo();
readerInfo.setAddress(address);
readerInfo.setBirth(nbirth);
readerInfo.setName(name);
readerInfo.setReaderId(readerId);
readerInfo.setTelcode(telcode);
readerInfo.setSex(sex);
boolean succ=readerInfoService.editReaderInfo(readerInfo);
if(succ){
redirectAttributes.addFlashAttribute("succ", "读者信息修改成功!");
return "redirect:/allreaders.html";
}else {
redirectAttributes.addFlashAttribute("error", "读者信息修改失败!");
return "redirect:/allreaders.html";
}
}
}
@RequestMapping("reader_add.html")
public ModelAndView readerInfoAdd(){
ModelAndView modelAndView=new ModelAndView("admin_reader_add");
return modelAndView;
}
//用户功能--进入修改密码页面
@RequestMapping("reader_repasswd.html")
public ModelAndView readerRePasswd(){
ModelAndView modelAndView=new ModelAndView("reader_repasswd");
return modelAndView;
}
//用户功能--修改密码执行
@RequestMapping("reader_repasswd_do.html")
public String readerRePasswdDo(HttpServletRequest request,String oldPasswd,String newPasswd,String reNewPasswd,RedirectAttributes redirectAttributes){
ReaderCard readerCard=(ReaderCard) request.getSession().getAttribute("readercard");
int readerId=readerCard.getReaderId();
String passwd=readerCard.getPasswd();
if (newPasswd.equals(reNewPasswd)){
if(passwd.equals(oldPasswd)){
boolean succ=readerCardService.updatePasswd(readerId,newPasswd);
if (succ){
ReaderCard readerCardNew = loginService.findReaderCardByUserId(readerId);
request.getSession().setAttribute("readercard", readerCardNew);
redirectAttributes.addFlashAttribute("succ", "密码修改成功!");
return "redirect:/reader_repasswd.html";
}else {
redirectAttributes.addFlashAttribute("succ", "密码修改失败!");
return "redirect:/reader_repasswd.html";
}
}else {
redirectAttributes.addFlashAttribute("error", "修改失败,原密码错误");
return "redirect:/reader_repasswd.html";
}
}else {
redirectAttributes.addFlashAttribute("error", "修改失败,两次输入的新密码不相同");
return "redirect:/reader_repasswd.html";
}
}
//管理员功能--读者信息添加
@RequestMapping("reader_add_do.html")
public String readerInfoAddDo(String name,String sex,String birth,String address,String telcode,int readerId,RedirectAttributes redirectAttributes){
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
没有合适的资源?快使用搜索试试~ 我知道了~
基于Java web SSM框架的图书馆借阅管理系统(源码+数据库脚本).zip
共137个文件
xml:43个
class:29个
jsp:21个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 179 浏览量
2023-08-28
23:10:28
上传
评论
收藏 1.13MB ZIP 举报
温馨提示
书馆借阅管理系统,可以借书,也可以还书。管理员可以管理书籍 本图书管理系统基于spring,spring mvc,数据库为mysql。前端使用了Bootstrap。 系统功能: 该系统实现读者和管理员登陆,图书的增删改查,读者的增删改查,借还图书,密码修改,卡号挂失,超期提醒等功能。 系统使用idea开发
资源推荐
资源详情
资源评论
收起资源包目录
基于Java web SSM框架的图书馆借阅管理系统(源码+数据库脚本).zip (137个子文件)
ReaderController.class 10KB
BookController.class 7KB
LendController.class 6KB
BookDao.class 5KB
LoginController.class 5KB
LendDao.class 5KB
Book.class 3KB
ReaderInfoDao.class 3KB
BookAddCommand.class 3KB
ReaderCardDao.class 3KB
BookService.class 2KB
WebConfig.class 2KB
Lend.class 2KB
BookDao$1.class 2KB
BookDao$2.class 2KB
LoginService.class 2KB
BookDao$3.class 2KB
LendService.class 2KB
ReaderInfo.class 2KB
ReaderInfoDao$1.class 2KB
AdminDao.class 2KB
LendDao$2.class 2KB
LendDao$1.class 2KB
ReaderInfoService.class 2KB
ReaderInfoDao$2.class 2KB
ReaderCard.class 1KB
ReaderCardDao$1.class 1KB
ReaderCardService.class 1KB
Admin.class 742B
.classpath 1KB
org.eclipse.wst.common.component 656B
org.eclipse.wst.jsdt.ui.superType.container 49B
bootstrap.min.css 118KB
book.iml 4KB
main.iml 1KB
ReaderController.java 12KB
BookDao.java 7KB
BookController.java 7KB
LendController.java 6KB
LendDao.java 6KB
LoginController.java 4KB
ReaderInfoDao.java 4KB
Book.java 3KB
ReaderCardDao.java 3KB
BookAddCommand.java 2KB
Lend.java 2KB
WebConfig.java 2KB
LoginService.java 2KB
BookService.java 1KB
LendService.java 1KB
AdminDao.java 1KB
ReaderInfo.java 1KB
ReaderInfoService.java 1KB
ReaderCard.java 954B
ReaderCardService.java 851B
Admin.java 401B
105905-106.jpg 404KB
82839-106.jpg 374KB
281289-106.jpg 104KB
jquery-3.2.1.js 262KB
bootstrap.min.js 36KB
js.cookie.js 4KB
.jsdtscope 626B
index.jsp 13KB
admin_book_edit.jsp 7KB
admin_book_add.jsp 7KB
admin_books.jsp 6KB
admin_lend_list.jsp 6KB
admin_reader_edit.jsp 6KB
admin_repasswd.jsp 6KB
admin_reader_add.jsp 5KB
admin_readers.jsp 5KB
reader_book_query.jsp 5KB
reader_info.jsp 5KB
admin_book_detail.jsp 5KB
reader_repasswd.jsp 5KB
reader_info_edit.jsp 4KB
admin_book_lend.jsp 4KB
admin_book_return.jsp 4KB
admin_main.jsp 4KB
404.jsp 4KB
reader_lend_list.jsp 4KB
reader_book_detail.jsp 4KB
reader_main.jsp 2KB
LICENSE 11KB
org.eclipse.wst.jsdt.ui.superType.name 6B
.name 4B
org.eclipse.jdt.core.prefs 469B
org.eclipse.core.resources.prefs 120B
org.eclipse.m2e.core.prefs 86B
org.eclipse.wst.validation.prefs 48B
.project 1KB
library.sql 15KB
workspace.xml 19KB
pom.xml 5KB
book_war_exploded.xml 3KB
web.xml 2KB
book-context.xml 1KB
book-context.xml 1KB
book-servlet.xml 1KB
共 137 条
- 1
- 2
资源评论
等天晴i
- 粉丝: 4904
- 资源: 10万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功