java图书推荐推荐管理系统

发布于:2023-01-04 ⋅ 阅读:(188) ⋅ 点赞:(0)

【运行环境】  Eclipse, IDEA    JDK1.8(JDK1.7)   Tomcat8(Tomcat7)

【技术栈】  JAVA, JSP, SSM, JQUERY,   MYSQL, HTML, CSS, JAVASCRIPT

协同过滤-图书馆图书推荐系统(JAVA,JSP,SSM,MYSQL)(毕业论文12544字,共34页,程序代码,MySQL数据库)

链接:https://pan.baidu.com/s/11WntRWQpaUXwViX1ASNseQ   提取码:8888 

【项目功能介绍】

本系统提供了用户登录,注册,修改密码,修改用户信息,首页展示,轮播图展示,网站新闻管理、全部图书展示,图书详情,订阅图书,取消订阅,续借图书,评价图书,用户留言等前台功能、管理员管理,用户管理,网站新闻管理,图书类型管理,图书管理,图书借阅管理,评价管理,留言管理等后台功能。

后台部分代码:

AdminAction.java

package com.action;

import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Admin;
import com.service.AdminService;
import com.util.PageHelper;
import com.util.VeDate;

//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/admin", produces = "text/plain;charset=utf-8")
public class AdminAction extends BaseAction {
	// 注入Service 由于标签的存在 所以不需要getter setter
	@Autowired
	@Resource
	private AdminService adminService;

	// 管理员登录 1 验证用户名是否存在 2 验证密码是否正确
	@RequestMapping("login.action")
	public String login() {
		String username = this.getRequest().getParameter("username");
		String password = this.getRequest().getParameter("password");
		Admin adminEntity = new Admin();
		adminEntity.setUsername(username);
		List<Admin> adminlist = this.adminService.getAdminByCond(adminEntity);
		if (adminlist.size() == 0) {
			this.getRequest().setAttribute("message", "用户名不存在");
			return "admin/index";
		} else {
			Admin admin = adminlist.get(0);
			if (password.equals(admin.getPassword())) {
				this.getSession().setAttribute("adminid", admin.getAdminid());
				this.getSession().setAttribute("adminname", admin.getUsername());
				this.getSession().setAttribute("realname", admin.getRealname());
			} else {
				this.getRequest().setAttribute("message", "密码错误");
				return "admin/index";
			}
		}
		return "admin/main";
	}

	// 修改密码
	@RequestMapping("editpwd.action")
	public String editpwd() {
		String adminid = (String) this.getSession().getAttribute("adminid");
		String password = this.getRequest().getParameter("password");
		String repassword = this.getRequest().getParameter("repassword");
		Admin admin = this.adminService.getAdminById(adminid);
		if (password.equals(admin.getPassword())) {
			admin.setPassword(repassword);
			this.adminService.updateAdmin(admin);
		} else {
			this.getRequest().setAttribute("message", "旧密码错误");
		}
		return "admin/editpwd";
	}

	// 管理员退出登录
	@RequestMapping("exit.action")
	public String exit() {
		this.getSession().removeAttribute("adminid");
		this.getSession().removeAttribute("adminname");
		this.getSession().removeAttribute("realname");
		return "admin/index";
	}

	// 准备添加数据
	@RequestMapping("createAdmin.action")
	public String createAdmin() {
		return "admin/addadmin";
	}

	// 添加数据
	@RequestMapping("addAdmin.action")
	public String addAdmin(Admin admin) {
		admin.setAddtime(VeDate.getStringDateShort());
		this.adminService.insertAdmin(admin);
		return "redirect:/admin/createAdmin.action";
	}

	// 通过主键删除数据
	@RequestMapping("deleteAdmin.action")
	public String deleteAdmin(String id) {
		this.adminService.deleteAdmin(id);
		return "redirect:/admin/getAllAdmin.action";
	}

	// 批量删除数据
	@RequestMapping("deleteAdminByIds.action")
	public String deleteAdminByIds() {
		String[] ids = this.getRequest().getParameterValues("adminid");
		for (String adminid : ids) {
			this.adminService.deleteAdmin(adminid);
		}
		return "redirect:/admin/getAllAdmin.action";
	}

	// 更新数据
	@RequestMapping("updateAdmin.action")
	public String updateAdmin(Admin admin) {
		this.adminService.updateAdmin(admin);
		return "redirect:/admin/getAllAdmin.action";
	}

	// 显示全部数据
	@RequestMapping("getAllAdmin.action")
	public String getAllAdmin(String number) {
		List<Admin> adminList = this.adminService.getAllAdmin();
		PageHelper.getPage(adminList, "admin", null, null, 10, number, this.getRequest(), null);
		return "admin/listadmin";
	}

	// 按条件查询数据 (模糊查询)
	@RequestMapping("queryAdminByCond.action")
	public String queryAdminByCond(String cond, String name, String number) {
		Admin admin = new Admin();
		if (cond != null) {
			if ("username".equals(cond)) {
				admin.setUsername(name);
			}
			if ("password".equals(cond)) {
				admin.setPassword(name);
			}
			if ("realname".equals(cond)) {
				admin.setRealname(name);
			}
			if ("contact".equals(cond)) {
				admin.setContact(name);
			}
			if ("addtime".equals(cond)) {
				admin.setAddtime(name);
			}
		}

		List<String> nameList = new ArrayList<String>();
		List<String> valueList = new ArrayList<String>();
		nameList.add(cond);
		valueList.add(name);
		PageHelper.getPage(this.adminService.getAdminByLike(admin), "admin", nameList, valueList, 10, number, this.getRequest(), "query");
		name = null;
		cond = null;
		return "admin/queryadmin";
	}

	// 按主键查询数据
	@RequestMapping("getAdminById.action")
	public String getAdminById(String id) {
		Admin admin = this.adminService.getAdminById(id);
		this.getRequest().setAttribute("admin", admin);
		return "admin/editadmin";
	}

	public AdminService getAdminService() {
		return adminService;
	}

	public void setAdminService(AdminService adminService) {
		this.adminService = adminService;
	}

}
// 程序开发 QQ 549710689 可以付费修改

BooksAction.java

package com.action;

import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Books;
import com.service.BooksService;
import com.entity.Cate;
import com.service.CateService;
import com.util.PageHelper;
import com.util.VeDate;

//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/books", produces = "text/plain;charset=utf-8")
public class BooksAction extends BaseAction {
	// 注入Service 由于标签的存在 所以不需要getter setter
	@Autowired
	@Resource
	private BooksService booksService;
	@Autowired
	@Resource
	private CateService cateService;

	// 准备添加数据
	@RequestMapping("createBooks.action")
	public String createBooks() {
		List<Cate> cateList = this.cateService.getAllCate();
		this.getRequest().setAttribute("cateList", cateList);
		return "admin/addbooks";
	}

	// 添加数据
	@RequestMapping("addBooks.action")
	public String addBooks(Books books) {
		books.setAddtime(VeDate.getStringDateShort());
		books.setLendnum("" + (Integer.parseInt(books.getStorage()) - 1));
		this.booksService.insertBooks(books);
		return "redirect:/books/createBooks.action";
	}

	// 通过主键删除数据
	@RequestMapping("deleteBooks.action")
	public String deleteBooks(String id) {
		this.booksService.deleteBooks(id);
		return "redirect:/books/getAllBooks.action";
	}

	// 批量删除数据
	@RequestMapping("deleteBooksByIds.action")
	public String deleteBooksByIds() {
		String[] ids = this.getRequest().getParameterValues("booksid");
		for (String booksid : ids) {
			this.booksService.deleteBooks(booksid);
		}
		return "redirect:/books/getAllBooks.action";
	}

	// 更新数据
	@RequestMapping("updateBooks.action")
	public String updateBooks(Books books) {
		this.booksService.updateBooks(books);
		return "redirect:/books/getAllBooks.action";
	}

	// 显示全部数据
	@RequestMapping("getAllBooks.action")
	public String getAllBooks(String number) {
		List<Books> booksList = this.booksService.getAllBooks();
		PageHelper.getPage(booksList, "books", null, null, 10, number, this.getRequest(), null);
		return "admin/listbooks";
	}

	// 按条件查询数据 (模糊查询)
	@RequestMapping("queryBooksByCond.action")
	public String queryBooksByCond(String cond, String name, String number) {
		Books books = new Books();
		if (cond != null) {
			if ("booksname".equals(cond)) {
				books.setBooksname(name);
			}
			if ("image".equals(cond)) {
				books.setImage(name);
			}
			if ("cateid".equals(cond)) {
				books.setCateid(name);
			}
			if ("publisher".equals(cond)) {
				books.setPublisher(name);
			}
			if ("author".equals(cond)) {
				books.setAuthor(name);
			}
			if ("addtime".equals(cond)) {
				books.setAddtime(name);
			}
			if ("storage".equals(cond)) {
				books.setStorage(name);
			}
			if ("lendnum".equals(cond)) {
				books.setLendnum(name);
			}
			if ("weizhi".equals(cond)) {
				books.setWeizhi(name);
			}
			if ("contents".equals(cond)) {
				books.setContents(name);
			}
		}

		List<String> nameList = new ArrayList<String>();
		List<String> valueList = new ArrayList<String>();
		nameList.add(cond);
		valueList.add(name);
		PageHelper.getPage(this.booksService.getBooksByLike(books), "books", nameList, valueList, 10, number, this.getRequest(), "query");
		name = null;
		cond = null;
		return "admin/querybooks";
	}

	// 按主键查询数据
	@RequestMapping("getBooksById.action")
	public String getBooksById(String id) {
		Books books = this.booksService.getBooksById(id);
		this.getRequest().setAttribute("books", books);
		List<Cate> cateList = this.cateService.getAllCate();
		this.getRequest().setAttribute("cateList", cateList);
		return "admin/editbooks";
	}

	public BooksService getBooksService() {
		return booksService;
	}

	public void setBooksService(BooksService booksService) {
		this.booksService = booksService;
	}

}
// 程序开发 QQ 549710689 可以付费修改

前台页面部分代码

 index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<base href="<%=basePath%>" />
<title>图书馆管理系统</title>
<STYLE type=text/css>
body {
	FONt-SIZE: 12px;
	BACKGROUND: #E8F2FB;
	COLOR: #333;
	MARGIN: 80px;
}

.bt {
	font-size: 24px;
	color: #FFFFFF;
	text-align: center;
	font-weight: bold
}

.btn {
	BORDER-RIGHT: #0033cc 1px solid;
	BORDER-TOP: #00ccff 1px solid;
	FONT-SIZE: 12px;
	BORDER-LEFT: #00ccff 1px solid;
	CURSOR: hand;
	COLOR: #ffffff;
	BORDER-BOTTOM: #0033cc 1px solid;
	FONT-FAMILY: "宋体";
	BACKGROUND-COLOR: #0099ff
}
</STYLE>
<script type="text/javascript">
	function checkLogin() {
		var username = document.myform.username.value;
		var password = document.myform.password.value;
		if (username == '') {
			alert('请输入用户名');
			document.myform.username.focus();
			return false;
		}
		if (password == '') {
			alert('请输入密码');
			document.myform.password.focus();
			return false;
		}
	}
</script>
</head>
<body>
	<form action="<%=basePath%>admin/login.action" name="myform" method="post" onSubmit="return checkLogin()">
		<table cellSpacing=1 cellPadding=5 width=460 align=center bgColor=#b9b0a9 border=0>
			<tbody>
				<tr>
					<td vAlign=top bgColor=#ffffff>
						<table cellSpacing=0 cellPadding=0 width="100%" border=0>
							<tbody>
								<tr>
									<td width=460 background=images/login_top.jpg height=54 class="bt">欢迎使用图书馆管理系统</td>
								</tr>
								<tr>
									<td bgColor=#FFFFFF height=150>
										<table height="100%" cellSpacing=0 cellPadding=0 width="100%" border=0>
											<tbody>
												<tr>
													<td align=middle width="40%"><IMG height=90 src="images/login.gif" width=91></td>
													<td>
														<table cellSpacing=1 cellPadding=2 width="100%" align=center border=0>
															<tbody>
																<tr>
																	<td align=right width=60 height=30>用户名:</td>
																	<td height=30><input id="username" name="username"></td>
																</tr>
																<tr>
																	<td align=right height=30>密&nbsp;&nbsp;码:</td>
																	<td height=30><input id="password" type="password" name="password"></td>
																</tr>
																<tr align="center">
																	<td colSpan=2 height=40><input class="btn" type=submit value="提 交" name="Submit"> <input
																		class="btn" type="reset" value="取 消" name="reset"></td>
																</tr>
															</tbody>
														</table>
													</td>
												</tr>
											</tbody>
										</table>
									</td>
								</tr>
								<tr>
									<td align=middle bgColor=#9CBFE5 height=25>2023 &copy; 图书馆管理系统 All Rights Reserved</td>
								</tr>
							</tbody>
						</table>
					</td>
				</tr>
			</tbody>
		</table>
	</form>
</body>
</html>

【项目运行截图】                                                                                                                             

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到