1 概述
本应用是石材展展商后台管理系统的设计与实现,主办方可便捷管理不同的石材展展商的基本信息及产品信息等。对于展商可以更方便快捷的在网上更新展会相关信息。对于主办方可以通过本应用管理参展展商的基本信息和产品信息,管理参展人员维护、发票信息、电子邀请邮件发送、个性化banner、联系人、重要通知及修改密码等,减少管理展商过程中不必要的麻烦。
根据前几个阶段的分析和设计,本系统在设计方面采用B/S模式,同时使用JSP技术进行基本页面的设计与功能实现,后台数据库选用MYSQL数据库。本系统的设计实施为石材展展商后台管理系统的运行做基础,为石材展展商后台管理系统提供良好的条件。
2 数据库表
E-R图实体描述如下:
管理员:说明、ID、用户名、密码;
参展人:说明、ID、公司ID、名称、地址、电话、邮箱、职务、是否删除;
公司信息:说明、ID、名称、英文名称、电话、传真、邮件、网址、地址、邮编、主要产品、产品类型、是否删除、用户名、密码;
发票信息:说明、ID、公司ID、抬头、展位号、地税号、是否删除;
公告信息:说明、ID、标题、内容、时间;
产品信息:说明、ID、公司ID、名称、产地、单位、规格、备注、是否删除、图片;
联系人信息:说明、ID、公司ID、姓名、性别、年龄、电话、地址、职位、是否删除。
3 关键代码
package com.action;import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.dao.DB;
import com.orm.lianxr;
import com.service.liuService;public class lianxr_servlet extends HttpServlet
{ public void service(HttpServletRequest req,HttpServletResponse res)throws ServletException, IOException {String type=req.getParameter("type");if(type.endsWith("lianxrAdd")){lianxrAdd(req, res);}if(type.endsWith("edit")){edit(req, res);}if(type.endsWith("lianxrEditSave")){lianxrEditSave(req, res);}if(type.endsWith("lianxrMana")){lianxrMana(req, res);}if(type.endsWith("lianxrDel")){lianxrDel(req, res);}if(type.endsWith("lianxrAddMy")){lianxrAddMy(req, res);}if(type.endsWith("editMy")){editMy(req, res);}if(type.endsWith("lianxrEditSaveMy")){lianxrEditSaveMy(req, res);}if(type.endsWith("lianxrManaMy")){lianxrManaMy(req, res);}if(type.endsWith("lianxrDelMy")){lianxrDelMy(req, res);}}public void lianxrAdd(HttpServletRequest req,HttpServletResponse res){int company_id=Integer.parseInt(req.getParameter("company_id"));String name=req.getParameter("name");String sex=req.getParameter("sex");String age=req.getParameter("age");String tel=req.getParameter("tel");String address=req.getParameter("address");String zhiwei=req.getParameter("zhiwei");String sql="insert into t_lianxr (`company_id`,`name`, `sex`, `age`, `tel`, `address`, `zhiwei`, `del`) values(?,?,?,?,?,?,?,?)";Object[] params={company_id,name,sex,age,tel,address,zhiwei,"no"};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "lianxr?type=lianxrMana");String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}//编辑public void edit(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException{//System.out.println(req.getParameter("userId")+"**");List lianxrList=new ArrayList();String sql="select * from t_lianxr where id="+Integer.parseInt(req.getParameter("id"));Object[] params={};DB mydb=new DB();try{mydb.doPstm(sql, params);ResultSet rs=mydb.getRs();while(rs.next()){lianxr lianxr=new lianxr();lianxr.setId(rs.getInt("id"));lianxr.setName(rs.getString("name"));lianxr.setSex(rs.getString("sex"));lianxr.setAge(rs.getString("age"));lianxr.setTel(rs.getString("tel"));lianxr.setAddress(rs.getString("address"));lianxr.setZhiwei(rs.getString("zhiwei"));lianxr.setCompany_id(rs.getInt("company_id"));lianxr.setCompany_name(liuService.getCompanyName(rs.getInt("company_id")));lianxrList.add(lianxr);}rs.close();}catch(Exception e){e.printStackTrace();}mydb.closed();req.setAttribute("lianxrList", lianxrList);req.getRequestDispatcher("admin/lianxr/lianxrEditPre.jsp").forward(req, res);}public void lianxrEditSave(HttpServletRequest req,HttpServletResponse res){String name=req.getParameter("name");String sex=req.getParameter("sex");String age=req.getParameter("age");String tel=req.getParameter("tel");String address=req.getParameter("address");String zhiwei=req.getParameter("zhiwei");int company_id=Integer.parseInt(req.getParameter("company_id"));String sql="update t_lianxr set company_id="+company_id+", name='"+name+"',sex='"+sex+"',age='"+age+"',tel='"+tel+"',address='"+address+"',zhiwei='"+zhiwei+"' where id="+Integer.parseInt(req.getParameter("id"));Object[] params={};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "lianxr?type=lianxrMana");String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}public void lianxrDel(HttpServletRequest req,HttpServletResponse res){int id=Integer.parseInt(req.getParameter("id"));String sql="update t_lianxr set del=? where id=?";Object[] params={"yes",id};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "lianxr?type=lianxrMana");String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}public void lianxrMana(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException{String page1=req.getParameter("page");if(page1==null){page1="1";}//分页设置int EVERYPAGENUM=10;//每页条数int page=Integer.parseInt(page1); //传递过来的当前页int cou = 1;//得到信息总数 int pagecount=1; //总页数String sql1="select count(*) as cou from t_lianxr where del='no'";Object[] params1={};DB mydb1=new DB();try{mydb1.doPstm(sql1, params1);ResultSet rs=mydb1.getRs();while(rs.next()){cou= rs.getInt("cou");}rs.close();}catch(Exception e){e.printStackTrace();}mydb1.closed();if (cou % EVERYPAGENUM == 0) {pagecount= cou / EVERYPAGENUM;} else {pagecount=cou / EVERYPAGENUM + 1;} req.setAttribute("EVERYPAGENUM", EVERYPAGENUM); req.setAttribute("page", page);req.setAttribute("cou", cou);req.setAttribute("pagecount", pagecount);List lianxrList=new ArrayList();String sql="select * from t_lianxr where del='no'";Object[] params={};DB mydb=new DB();try{mydb.doPstm(sql, params);ResultSet rs=mydb.getRs();for (int i = 0; i < (page - 1) * EVERYPAGENUM; i++) {rs.next();}for (int t = 0; t < EVERYPAGENUM; t++) {if (rs.next()) {lianxr lianxr=new lianxr();lianxr.setId(rs.getInt("id"));lianxr.setName(rs.getString("name"));lianxr.setSex(rs.getString("sex"));lianxr.setAge(rs.getString("age"));lianxr.setTel(rs.getString("tel"));lianxr.setAddress(rs.getString("address"));lianxr.setZhiwei(rs.getString("zhiwei"));lianxr.setCompany_id(rs.getInt("company_id"));lianxr.setCompany_name(liuService.getCompanyName(rs.getInt("company_id")));lianxrList.add(lianxr);} else {break; //减少空循环的时间}}rs.close();}catch(Exception e){e.printStackTrace();}mydb.closed();req.setAttribute("lianxrList", lianxrList);req.getRequestDispatcher("admin/lianxr/lianxrMana.jsp").forward(req, res);}//以下是展商功能 public void lianxrAddMy(HttpServletRequest req,HttpServletResponse res){int company_id=Integer.parseInt(req.getParameter("company_id"));String name=req.getParameter("name");String sex=req.getParameter("sex");String age=req.getParameter("age");String tel=req.getParameter("tel");String address=req.getParameter("address");String zhiwei=req.getParameter("zhiwei");String sql="insert into t_lianxr (`company_id`,`name`, `sex`, `age`, `tel`, `address`, `zhiwei`, `del`) values(?,?,?,?,?,?,?,?)";Object[] params={company_id,name,sex,age,tel,address,zhiwei,"no"};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "lianxr?type=lianxrManaMy&company_id="+company_id);String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}//编辑public void editMy(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException{//System.out.println(req.getParameter("userId")+"**");List lianxrList=new ArrayList();String sql="select * from t_lianxr where id="+Integer.parseInt(req.getParameter("id"));Object[] params={};DB mydb=new DB();try{mydb.doPstm(sql, params);ResultSet rs=mydb.getRs();while(rs.next()){lianxr lianxr=new lianxr();lianxr.setId(rs.getInt("id"));lianxr.setName(rs.getString("name"));lianxr.setSex(rs.getString("sex"));lianxr.setAge(rs.getString("age"));lianxr.setTel(rs.getString("tel"));lianxr.setAddress(rs.getString("address"));lianxr.setZhiwei(rs.getString("zhiwei"));lianxr.setCompany_id(rs.getInt("company_id"));lianxr.setCompany_name(liuService.getCompanyName(rs.getInt("company_id")));lianxrList.add(lianxr);}rs.close();}catch(Exception e){e.printStackTrace();}mydb.closed();req.setAttribute("lianxrList", lianxrList);req.getRequestDispatcher("admin/lianxr/lianxrEditPreMy.jsp").forward(req, res);}public void lianxrEditSaveMy(HttpServletRequest req,HttpServletResponse res){String name=req.getParameter("name");String sex=req.getParameter("sex");String age=req.getParameter("age");String tel=req.getParameter("tel");String address=req.getParameter("address");String zhiwei=req.getParameter("zhiwei");int company_id=Integer.parseInt(req.getParameter("company_id"));String sql="update t_lianxr set company_id="+company_id+", name='"+name+"',sex='"+sex+"',age='"+age+"',tel='"+tel+"',address='"+address+"',zhiwei='"+zhiwei+"' where id="+Integer.parseInt(req.getParameter("id"));Object[] params={};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "lianxr?type=lianxrManaMy&company_id="+company_id);String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}public void lianxrDelMy(HttpServletRequest req,HttpServletResponse res){int id=Integer.parseInt(req.getParameter("id"));int company_id=Integer.parseInt(req.getParameter("company_id"));String sql="update t_lianxr set del=? where id=?";Object[] params={"yes",id};DB mydb=new DB();mydb.doPstm(sql, params);mydb.closed();req.setAttribute("message", "操作成功");req.setAttribute("path", "lianxr?type=lianxrManaMy&company_id="+company_id);String targetURL = "/common/success.jsp";dispatch(targetURL, req, res);}public void lianxrManaMy(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException{String page1=req.getParameter("page");String company_id=req.getParameter("company_id");if(page1==null){page1="1";}//分页设置int EVERYPAGENUM=10;//每页条数int page=Integer.parseInt(page1); //传递过来的当前页int cou = 1;//得到信息总数 int pagecount=1; //总页数String sql1="select count(*) as cou from t_lianxr where del='no' and company_id='"+company_id+"' ";Object[] params1={};DB mydb1=new DB();try{mydb1.doPstm(sql1, params1);ResultSet rs=mydb1.getRs();while(rs.next()){cou= rs.getInt("cou");}rs.close();}catch(Exception e){e.printStackTrace();}mydb1.closed();if (cou % EVERYPAGENUM == 0) {pagecount= cou / EVERYPAGENUM;} else {pagecount=cou / EVERYPAGENUM + 1;} req.setAttribute("EVERYPAGENUM", EVERYPAGENUM); req.setAttribute("page", page);req.setAttribute("cou", cou);req.setAttribute("pagecount", pagecount);List lianxrList=new ArrayList();String sql="select * from t_lianxr where del='no' and company_id='"+company_id+"' ";Object[] params={};DB mydb=new DB();try{mydb.doPstm(sql, params);ResultSet rs=mydb.getRs();for (int i = 0; i < (page - 1) * EVERYPAGENUM; i++) {rs.next();}for (int t = 0; t < EVERYPAGENUM; t++) {if (rs.next()) {lianxr lianxr=new lianxr();lianxr.setId(rs.getInt("id"));lianxr.setName(rs.getString("name"));lianxr.setSex(rs.getString("sex"));lianxr.setAge(rs.getString("age"));lianxr.setTel(rs.getString("tel"));lianxr.setAddress(rs.getString("address"));lianxr.setZhiwei(rs.getString("zhiwei"));lianxr.setCompany_id(rs.getInt("company_id"));lianxr.setCompany_name(liuService.getCompanyName(rs.getInt("company_id")));lianxrList.add(lianxr);} else {break; //减少空循环的时间}}rs.close();}catch(Exception e){e.printStackTrace();}mydb.closed();req.setAttribute("lianxrList", lianxrList);req.getRequestDispatcher("admin/lianxr/lianxrManaMy.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() {}
}
4 效果演示
idea或eclipse开发,mysql数据库