基于Javaweb的蛋糕甜品系统-JAVA【毕业设计、快速开发、源码、开题报告】

  

功能介绍

前台功能需求

(1)用户的登录:对已经注册的用户提供登录操作。

(2)用户的注册:针对还未注册的用户完成注册功能的使用,在注册的过程中涉及数据的合法性校验,以及利用ajax完成用户名是否已被注册的异步校验。

(3)商品展示模块:通过分页浏览商品,也可以通过关键词搜索商品。

(4)购物车:用于存放用户的购物内容,用户可根据自己的情况修改自己的购物车。

(5)订单模块:对于已经登录的用户可以对购物车内容进行付款生成订单,可以为自己的订单进行付款。

(6)前台页面的访问权限:对已有账号访问进行权限分类,用户只能进入前台。

系统的前台功能模块图如下:

l 后台功能需求

(1)管理员登录:管理者根据账户和密码进行登录。

(2)商品管理:管理员可以对前台显示的商品进行管理包括分页查看,添加,修改,删除,搜索的功能。

(3)订单管理:管理员可以订单进行查看、删除、发货和搜索。

(4)后台账户管理:管理员可以对后台账户进行增删改查。

(5)用户管理:管理员可以对注册用户进行增删改查。

(6)后台页面的访问权限:对已有账号访问时进行权限分类,管理员只能进入后台。

部分功能模块代码

package servlet.admin;  import java.io.IOException; import java.io.PrintWriter;  import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;  import  bean.Admin; import  bean.PageBean; import  dao.AdminDao; import  dao.impl.AdminDaoImpl; import  util.DateUtil;  import net.sf.json.JSONObject;  /**  * Servlet implementation class UserServlet  */ @WebServlet("/jsp/admin/AdminManageServlet") public class AdminManageServlet extends HttpServlet { 	private static final long serialVersionUID = 1L; 	private static final String ADMINLIST_PATH="adminManage/adminList.jsp";//用户列表页面地址 	private static final String ADMINADD_PATH="adminManage/adminAdd.jsp";//用户增加页面地址 	private static final String ADMINEDIT_PATH="adminManage/adminEdit.jsp";//用户修改页面地址  	/** 	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) 	 */ 	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 		String action=request.getParameter("action"); 		switch(action){ 		case "list": 			adminList(request,response); 			break; 		case "add": 			adminAdd(request,response); 			break; 		case "update": 			adminUpdate(request,response); 			break; 		case "edit": 			adminEdit(request,response); 			break; 		case "del": 			adminDel(request,response); 			break; 		case "batDel": 			adminBatDel(request,response); 			break; 		case "find": 			adminFind(request,response); 			break; 		}  	}  	/** 	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 	 */ 	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 		doGet(request, response); 	} 	 	//查询用户列表 	private void adminList(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { 		AdminDao ad=new AdminDaoImpl(); 		int curPage=1; 		String page=request.getParameter("page"); 		if(page!=null){ 			curPage=Integer.parseInt(page); 		} 		//获取xml中设置的每页显示大小参数 		int maxSize=Integer.parseInt(request.getServletContext().getInitParameter("maxPageSize")); 		 		PageBean pageBean=new PageBean(curPage,maxSize,ad.cakeReadCount()); 		 		request.setAttribute("adminList", ad.userList(pageBean)); 		request.setAttribute("pageBean", pageBean); 		 		request.getRequestDispatcher(AdminManageServlet.ADMINLIST_PATH).forward(request, response); 		 	} 	 	//增加用户 	private void adminAdd(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { 		AdminDao ad=new AdminDaoImpl(); 		Admin admin=new Admin(request.getParameter("userName"),request.getParameter("passWord"), 				request.getParameter("name")); 		//添加之前判断用户名是否在库中存在 		if(new AdminDaoImpl().findUser(admin.getUserName())){ 			request.setAttribute("adminMessage", "用户添加失败!用户名已存在"); 			request.getRequestDispatcher(AdminManageServlet.ADMINADD_PATH).forward(request, response); 		}else{ 			//执行dao层添加操作 			if(ad.userAdd(admin)){ 				request.setAttribute("adminMessage", "用户添加成功!"); 				adminList(request, response);//通过servlet中listUser跳到用户列表 			}else{ 				request.setAttribute("adminMessage", "用户添加失败!"); 				request.getRequestDispatcher(AdminManageServlet.ADMINADD_PATH).forward(request, response); 			} 		} 		 	} 	//更新用户信息 	private void adminUpdate(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 		Admin admin=new Admin(Integer.parseInt(request.getParameter("id")), 				request.getParameter("passWord"), 				request.getParameter("name") 				); 		AdminDao ad=new AdminDaoImpl(); 		if(ad.userUpdate(admin)) { 			request.setAttribute("adminMessage", "用户更新成功"); 			adminList(request, response);//通过servlet中listUser跳到用户列表 		}else { 			//更新失败跳转到修改页面 			request.setAttribute("adminMessage", "用户更新失败"); 			request.setAttribute("adminInfo", ad.findUser(Integer.valueOf(admin.getId())));//这里回去是Admin对象 			request.getRequestDispatcher(AdminManageServlet.ADMINEDIT_PATH).forward(request, response); 		} 		 	}  	//修改用户 	private void adminEdit(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 		String id=request.getParameter("id"); 		AdminDao ad=new AdminDaoImpl(); 		request.setAttribute("adminInfo",ad.findUser(Integer.valueOf(id)));//这里回去是Admin对象 		request.getRequestDispatcher(AdminManageServlet.ADMINEDIT_PATH).forward(request, response); 	} 	 	//删除用户 	private void adminDel(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { 		int id=Integer.parseInt(request.getParameter("id")); 		AdminDao ad=new AdminDaoImpl(); 		if(ad.delUser(id)) { 			request.setAttribute("adminMessage", "用户已删除"); 		}else { 			request.setAttribute("adminMessage", "用户删除失败"); 		} 		//用户删除成功失败都跳转到用户列表页面 		adminList(request, response);//通过servlet中listUser跳到用户列表 	} 	 	//批量删除 	private void adminBatDel(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { 		String ids=request.getParameter("ids"); 		AdminDao ad=new AdminDaoImpl(); 		 		if(ad.batDelUser(ids)) { 			request.setAttribute("adminMessage", "用户已批量删除"); 		}else { 			request.setAttribute("adminMessage", "用户批量删除失败"); 		} 		//用户删除成功失败都跳转到用户列表页面 		adminList(request, response);//通过servlet中listUser跳到用户列表 		 	} 	 	//ajax判断用户名(param为接收的用户名) 	private void adminFind(HttpServletRequest request, HttpServletResponse response) throws IOException { 		String userName=request.getParameter("param"); 		 		AdminDao ad=new AdminDaoImpl(); 		//这里实例化json对象需要导入6个jar包( 		//commons-lang-2.4.jar ,commons-collections-3.2.1.jar,commons-beanutils-1.8.3.jar  		//json-lib-2.4-jdk15.jar ,ezmorph-1.0.6.jar ,commons-logging-1.1.3.jar) 		JSONObject json=new JSONObject(); 		if(ad.findUser(userName)){ 			json.put("info", "用户名已存在"); 			json.put("status", "n"); 		}else{ 			json.put("info", "用户名可以使用"); 			json.put("status", "y"); 		} 		response.getWriter().write(json.toString()); 	} 	 } package dao.impl;  import java.util.ArrayList; import java.util.List; import java.util.Map;  import bean.Admin; import bean.PageBean; import dao.AdminDao; import util.DateUtil; import util.DbUtil;  public class AdminDaoImpl implements AdminDao { 	/** 	 * @param user 传递要登录的用户信息 	 * @return 返回一个boolean值,true登录成功,false失败 	 */ 	@Override 	public boolean userLogin(Admin admin) { 		boolean flag=false; 		String sql="select * from s_admin where userName=? and passWord=?"; 		String sql2="update s_admin set lastLoginTime=? where id=?"; 		List<Map<String,Object>> list=DbUtil.executeQuery(sql, admin.getUserName(),admin.getPassWord()); 		if(list.size()>0){ 			flag=true; 			//这里需要name值传入对象中 			admin.setName((String)list.get(0).get("name")); 			//通过登录成功用户的id更新最后登录时间 			DbUtil.excuteUpdate(sql2, DateUtil.getTimestamp(),list.get(0).get("id")); 		} 		return flag; 	} 	/** 	 * @param pageBean 传递分页对象 	 * @return 返回一个list集合,这里是通过limit分页查询的结果 	 */ 	@Override 	public List<Admin> userList(PageBean pageBean) { 		List<Admin> lu=new ArrayList<>(); 		List<Map<String, Object>> list=new ArrayList<Map<String,Object>>(); 		 		String sql="select * from s_admin limit ?,?"; 		 		list=DbUtil.executeQuery(sql,(pageBean.getCurPage()-1)*pageBean.getMaxSize(),pageBean.getMaxSize()); 		 		if(list.size()>0) { 			for(Map<String,Object> map:list) { 				Admin u=new Admin(map); 				lu.add(u); 			} 		} 		 		return lu; 	} 	/** 	 * @param user 要增加的用户对象 	 * @return 返回一个boolean true用户增加成功 false用户增加失败 	 */ 	@Override 	public boolean userAdd(Admin user) { 		String sql="insert into s_admin(userName,password,name) values(?,?,?)"; 		 		int i= DbUtil.excuteUpdate(sql, user.getUserName(),user.getPassWord(),user.getName()); 		 		return i>0?true:false;	 		 	} 	/** 	 * @param id 根据id查找一个用户信息 	 * @return 返回一个list用户信息集合 	 */ 	//查找指定id用户信息 	@Override 	public Admin findUser(Integer id) { 		String sql="select * from s_admin where id=?"; 		Admin admin=null; 		List<Map<String,Object>> list=DbUtil.executeQuery(sql, id); 		if(list.size()>0) { 			admin=new Admin(list.get(0)); 			 		} 		return admin; 	} 	//查找用户名是否存在true存在 	@Override 	public boolean findUser(String userName) { 		String sql="select * from s_admin where userName=?"; 		List<Map<String,Object>> list=DbUtil.executeQuery(sql, userName); 		return list.size()>0?true:false; 	} 	/** 	 *  	 * @param admin 更新用户,根据传过来的id 	 * @return boolean 	 */ 	@Override 	public boolean userUpdate(Admin admin) { 		String sql="update s_admin set password=? , name=? where id =?"; 		int i=DbUtil.excuteUpdate(sql, admin.getPassWord(),admin.getName(),admin.getId()); 		 		return i>0?true:false; 	} 	/** 	 * @param id 要删除的用户id 	 * @return 返回boolean true删除用户成功,false删除用户失败 	 */ 	@Override 	public boolean delUser(int id) { 		String sql="delete from s_admin where id=?"; 		int i=DbUtil.excuteUpdate(sql, id); 		return i>0?true:false; 	} 	/** 	 * @param ids 要批量删除id组的字符串 	 */ 	@Override 	public boolean batDelUser(String ids) { 		String sql="delete from s_admin where id in ("+ids+")"; 		int i=DbUtil.excuteUpdate(sql); 		return i>0?true:false; 	} 	 	@Override 	public long cakeReadCount() { 		long count=0; 		String sql="select count(*) as count from s_admin"; 		List<Map<String, Object>> lm=DbUtil.executeQuery(sql); 		if(lm.size()>0){ 			count=(long) lm.get(0).get("count"); 		} 		return count; 	}  } 

论文目录

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值