项目介绍
这个项目是一个基于 Servlet + JSP 的电影院售票系统,分为管理员和会员两种角色。
管理员权限包括:
修改登录密码
电影类别管理
电影信息管理
会员信息管理
订单信息管理
留言信息管理
会员权限包括:
会员注册
会员登录
浏览电影
我的购物车
我的订单
留言板
环境需要
1.运行环境:最好是java jdk 1.8,我们是在这个平台上运行的。其他版本理论上也可以。
2.IDE环境: IDEA , Eclipse , MyEclipse 都可以。推荐IDEA;
3. tomcat 环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS ;
5.数据库: mysql 5.7版本;
6.是否 maven 项目: 否;查看源码目录中是否包含 pom .xml;若包含,则为maven项目,否则为非maven项目
技术栈
Servlet、JSP、 JDBC 、My sql 5.7、Tomcat8
使用说明
1. 使用 Navicat 或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,然后运行;
3. 将项目中src/com/dao/DB.java配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入localhost:8080/goupiao
管理员账号/密码:admin/admin
会员账号/密码:zhangsan/123456
用户管理控制层:
public class user_servlet extends HttpServlet
{
public void service(HttpServlet request req,HttpServletResponse res)throws Servlet Exception , IOException
{
String type=req.getParameter("type");
if(type.endsWith("userReg"))
{
userReg(req, res);
}
if(type.endsWith("userLogout"))
{
userLogout(req, res);
}
if(type.endsWith("userEditMe"))
{
userEditMe(req, res);
}
if(type.endsWith("userMana"))
{
userMana(req, res);
}
if(type.endsWith("userDel"))
{
userDel(req, res);
}
}
public void userReg(HttpServletRequest req,HttpServletResponse res)
{
String id=String.valueOf(new Date().getTime());
String loginname=req.getParameter("loginname");
String loginpw=req.getParameter("loginpw");
String name=req.getParameter("name");
String del="no";
String s=liuService.panduan_zhanghao(loginname);
if(s.equals("yizhan"))
{
req.setAttribute("message", "账号已被占用,请输入其他账号");
req.setAttribute("path", "site/userreg/userreg.jsp");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
else
{
String sql="insert into t_user values(?,?,?,?,?)";
Object[] params ={id,loginname,loginpw,name,del};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "注册成功,请登录");
req.setAttribute("path", "site/default.jsp");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
}
public void userLogout(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
HttpSession session=req.getSession();
session.setAttribute("userType", null);
session.setAttribute("user", null);
req.setAttribute("message", "成功退出系统");
req.setAttribute("path", "site/default.jsp");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
public void userEditMe(HttpServletRequest req,HttpServletResponse res)
{
String id=req.getParameter("id");
String loginname=req.getParameter("loginname");
String loginpw=req.getParameter("loginpw");
String name=req.getParameter("name");
String sql="update t_user set loginname=?,loginpw=?,name=? where id=?";
Object[] params={loginname,loginpw,name,id};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("message", "修改成功,重新等后生效");
req.setAttribute("path", "site/default.jsp");
String targetURL = "/common/success.jsp";
dispatch(targetURL, req, res);
}
public void userMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
List userList=new ArrayList();
String sql="select * from t_user where del='no'";
Object[] params={};
DB mydb=new DB();
try
{
mydb.doPstm(sql, params);
ResultSet rs=mydb.getRs();
while(rs.next())
{
Tuser user=new Tuser();
user.setId(rs.getString("id"));
user.setLoginname(rs.getString("loginname"));
user.setLoginpw(rs.getString("loginpw"));
user.setLoginpw(rs.getString("loginpw"));
user.setName(rs.getString("name"));
userList.add(user);
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb.closed();
req.setAttribute("userList", userList);
req.getRequestDispatcher("admin/user/userMana.jsp").forward(req, res);
}
public void userDel(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String id=req.getParameter("id");
String sql="update t_user set del='yes' where id=?";
Object[] params={id};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("msg", "用户信息删除完毕");
String targetURL = "/common/msg.jsp";
dispatch(targetURL, req, res);
}
public void dispatch(String targetURI,HttpServletRequest request,HttpServletResponse response)
{
RequestDispatcher dispatch = getServletContext().getRequestDispatcher(targetURI);
try
{
dispatch.forward(request, response);
return;
}
catch (ServletException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
public void destroy()
{
}
}
订单管理控制层:
public class order_servlet extends HttpServlet
{
public void service(HttpServletRequest req,HttpServletResponse res)throws ServletException, IOException
{
String type=req.getParameter("type");
if(type.endsWith("orderMana"))
{
orderMana(req, res);
}
if(type.endsWith("orderDel"))
{
orderDel(req, res);
}
if(type.endsWith("orderShouli"))
{
orderShouli(req, res);
}
}
public void orderMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
List orderList=new ArrayList();
String sql="select * from t_order order by zhuangtai desc";
Object[] params={};
DB mydb=new DB();
try
{
mydb.doPstm(sql, params);
ResultSet rs=mydb.getRs();
while(rs.next())
{
Torder order=new Torder();
order.setId(rs.getString("id"));
order.setBianhao(rs.getString("bianhao"));
order.setShijian(rs.getString("shijian"));
order.setZhuangtai(rs.getString("zhuangtai"));
order.setSonghuodizhi(rs.getString("songhuodizhi"));
order.setFukuanfangshi(rs.getString("fukuanfangshi"));
order.setJine(rs.getInt("jine"));
order.setUser_id(rs.getString("user_id"));
orderList.add(order);
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb.closed();
req.setAttribute("orderList", orderList);
req.getRequestDispatcher("admin/order/orderMana.jsp").forward(req, res);
}
public void orderDel(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String id=req.getParameter("id");
String sql="delete from t_order where id=?";
Object[] params={id};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("msg", "信息删除完毕");
String targetURL = "/common/msg.jsp";
dispatch(targetURL, req, res);
}
public void orderShouli(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String id=req.getParameter("id");
String sql="update t_order set zhuangtai='yes' where id=?";
Object[] params={id};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("msg", "订单受理完毕");
String targetURL = "/common/msg.jsp";
dispatch(targetURL, req, res);
}
public void dispatch(String targetURI,HttpServletRequest request,HttpServletResponse response)
{
RequestDispatcher dispatch = getServletContext().getRequestDispatcher(targetURI);
try
{
dispatch.forward(request, response);
return;
}
catch (ServletException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
public void destroy()
{
}
}
商品管理控制层:
public class goods_servlet extends HttpServlet
{
public void service(HttpServletRequest req,HttpServletResponse res)throws ServletException, IOException
{
String type=req.getParameter("type");
if(type.endsWith("goodsAdd"))
{
goodsAdd(req, res);
}
if(type.endsWith("goodsMana"))
{
goodsMana(req, res);
}
if(type.endsWith("goodsDel"))
{
goodsDel(req, res);
}
if(type.endsWith("goodsDetailHou"))
{
goodsDetailHou(req, res);
}
if(type.endsWith("goodsAll"))
{
goodsAll(req, res);
}
if(type.endsWith("goodsByCatelog"))
{
goodsByCatelog(req, res);
}
if(type.endsWith("goodsDetailQian"))
{
goodsDetailQian(req, res);
}
}
public void goodsAdd(HttpServletRequest req,HttpServletResponse res)
{
String id=String.valueOf(new Date().getTime());
String fangyingshi=req.getParameter("fangyingshi");
String catelog_id=req.getParameter("catelog_id");
String mingcheng=req.getParameter("mingcheng");
String jieshao=req.getParameter("jieshao");
String fujian=req.getParameter("fujian");
int shichangjia=Integer.parseInt(req.getParameter("shichangjia"));
int tejia=Integer.parseInt(req.getParameter("shichangjia"));
String del="no";
String sql="insert into t_goods(id,fangyingshi,catelog_id,mingcheng,jieshao,fujian,shichangjia,tejia,del) " +
"values(?,?,?,?,?,?,?,?,?)";
Object[] params={id,fangyingshi,catelog_id,mingcheng,jieshao,fujian,shichangjia,tejia,del};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("msg", "操作成功");
String targetURL = "/common/msg.jsp";
dispatch(targetURL, req, res);
}
public void goodsMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
List goodsList=new ArrayList();
String sql="select * from t_goods where del='no' order by fangyingshi desc";
Object[] params={};
DB mydb=new DB();
try
{
mydb.doPstm(sql, params);
ResultSet rs=mydb.getRs();
while(rs.next())
{
Tgoods goods=new Tgoods();
goods.setId(rs.getString("id"));
goods.setFangyingshi(rs.getString("fangyingshi"));
goods.setCatelog_id(rs.getString("catelog_id"));
goods.setMingcheng(rs.getString("mingcheng"));
goods.setJieshao(rs.getString("jieshao"));
goods.setFujian(rs.getString("fujian"));
goods.setShichangjia(rs.getInt("shichangjia"));
goods.setTejia(rs.getInt("tejia"));
goods.setDel(rs.getString("del"));
goodsList.add(goods);
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb.closed();
req.setAttribute("goodsList", goodsList);
req.getRequestDispatcher("admin/goods/goodsMana.jsp").forward(req, res);
}
public void goodsDel(HttpServletRequest req,HttpServletResponse res)
{
String id=req.getParameter("id");
String sql="update t_goods set del='yes' where id="+id;
Object[] params={};
DB mydb=new DB();
mydb.doPstm(sql, params);
mydb.closed();
req.setAttribute("msg", "操作成功");
String targetURL = "/common/msg.jsp";
dispatch(targetURL, req, res);
}
public void goodsDetailHou(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String id=req.getParameter("id");
req.setAttribute("goods", liuService.getGoods(id));
req.getRequestDispatcher("admin/goods/goodsDetailHou.jsp").forward(req, res);
}
public void goodsAll(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
List goodsList=new ArrayList();
//String sql="select * from t_goods where del='no' and fangyingshi >? order by fangyingshi desc";
String sql="select * from t_goods where del='no' order by fangyingshi desc";
Object[] params={new SimpleDateFormat("yyyy-MM-dd").format(new Date())};
DB mydb=new DB();
try
{
mydb.doPstm(sql, null);
ResultSet rs=mydb.getRs();
while(rs.next())
{
Tgoods goods=new Tgoods();
goods.setId(rs.getString("id"));
goods.setFangyingshi(rs.getString("fangyingshi"));
goods.setCatelog_id(rs.getString("catelog_id"));
goods.setMingcheng(rs.getString("mingcheng"));
goods.setJieshao(rs.getString("jieshao"));
goods.setFujian(rs.getString("fujian"));
goods.setShichangjia(rs.getInt("shichangjia"));
goods.setTejia(rs.getInt("tejia"));
goods.setDel(rs.getString("del"));
goodsList.add(goods);
}
rs.close();
}
catch(Exception e)
{
e.printStackTrace();
}
mydb.closed();
if(goodsList.size()>)
{
goodsList=goodsList.subList(, 8);
}
req.setAttribute("goodsList", goodsList);
req.getRequestDispatcher("site/goods/goodsAll.jsp").forward(req, res);
}
public void goodsByCatelog(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String catelog_id=req.getParameter("catelog_id");
req.setAttribute("goodsList", liuService.goodsByCatelog(catelog_id));
req.getRequestDispatcher("site/goods/goodsByCatelog.jsp").forward(req, res);
}
public void goodsDetailQian(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
String id=req.getParameter("id");
req.setAttribute("goods", liuService.getGoods(id));
req.getRequestDispatcher("site/goods/goodsDetailQian.jsp").forward(req, res);
}
public void dispatch(String targetURI,HttpServletRequest request,HttpServletResponse response)
{
RequestDispatcher dispatch = getServletContext().getRequestDispatcher(targetURI);
try
{
dispatch.forward(request, response);
return;
}
catch (ServletException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
public void destroy()
{
}
}