基于javaweb+mysql的ssm电子产品商城购物商城(java+ssm+jsp+mysql)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SSM电子产品商城购物商城(java+ssm+jsp+mysql)
管理员:
admin 123456
用户:
xm 123456
calvin 123456
mv 123456
mm 123456
kiki 123456
kkkk 123456
yoyo 123456
zzh 123456
ordermsg.setMember(member);
if(ordermsg.getFkstatus().equals("已取消")){
Address address = addressDAO.findById(Integer.parseInt(ordermsg.getAddr()));
ordermsg.setAddress(address);
}
//查看物流信息
saveobject.getWlrecord(ordermsg.getDdno(), request);
List<Wlrecord> wllist = (List<Wlrecord>)request.getAttribute("wllist");
ordermsg.setWllist(wllist);
}
PageInfo<Ordermsg> pageInfo = new PageInfo<Ordermsg>(list);
request.setAttribute("key",key);
request.setAttribute("pageInfo",pageInfo);
if(suc.equals("suc")){
request.setAttribute("suc","操作成功");
}else if(suc.equals("error")){
request.setAttribute("suc","库存不足");
}
return "admin/orderlist";
}
@RequestMapping("/admin/fubiorderList")
public String fubiorderList(@RequestParam(defaultValue = "1",value = "pageNum") Integer pageNum,HttpServletRequest request) {
User admin = (User)request.getSession().getAttribute("admin");
String key = request.getParameter("key");
String suc = request.getParameter("suc")==null?"":request.getParameter("suc");
HashMap map = new HashMap();
map.put("ddno", key);
map.put("delstatus", "0");
map.put("saver", admin.getId());
map.put("fkstatus", "待付款");
map.put("goodstype", "积分商品");
List<Ordermsg> list = ordermsgDAO.selectAll(map);
for(Ordermsg ordermsg:list){
Member member = memberDAO.findById(Integer.parseInt(ordermsg.getMemberid()));
Product product = productDAO.findById(Integer.parseInt(ordermsg.getProductid()));
ordermsg.setMember(member);
break;
}
}
return i;
}
//销量
public List<HashMap> saleNum(String sql) {
CommDAO dao = new CommDAO();
List<HashMap> list = dao.select(sql);
return list;
}
//库存
public static int getInventory(int id) {
int num=0;
int intotal = 0;
int outtotal = 0;
CommDAO dao = new CommDAO();
List<HashMap> inlist = dao.select("select * from inventory where type='in' and productid='"+id+"'");
List<HashMap> outlist = dao.select("select * from inventory where type='out' and productid='"+id+"'");
for(HashMap inmap:inlist){
intotal+=Integer.parseInt(inmap.get("num").toString());
}
for(HashMap outmap:outlist){
outtotal+=Integer.parseInt(outmap.get("num").toString());
}
if(intotal>=outtotal){
num = intotal-outtotal;
}
return num;
}
/**
* 比较时间大小
*
*/
public static String compare_datezq(String DATE1, String DATE2) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
try {
Date dt1 = df.parse(DATE1);
Date dt2 = df.parse(DATE2);
if (dt1.getTime() > dt2.getTime()) {
return "big";
} else if (dt1.getTime() < dt2.getTime()) {
return "small";
} else {
return "den";
}
} catch (Exception exception) {
str += "parent.location=parent.location;\n";
}
str += "</script>";
PrintWriter wrt = null;
try {
wrt = response.getWriter();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
wrt.write(str);
}
return "";
}
public void delete(HttpServletRequest request, String tablename) {
int i = 0;
try {
String did = request.getParameter("did");
if (did == null) did = request.getParameter("scid");
if (did != null) {
if (did.length() > 0) {
Statement st = conn.createStatement();
st.execute("delete from " + tablename + " where id=" + did);
st.close();
}
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public String getCols(String table) {
String str = "";
Connection conn = this.getConn();
try {
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select * from " + table);
ResultSetMetaData rsmd = rs.getMetaData();
int i = rsmd.getColumnCount();
for (int j = 2; j <= i; j++) {
str += rsmd.getColumnName(j) + ",";
}
ordermsgdetails.setMemberid(String.valueOf(member.getId()));
ordermsgdetails.setProductid(String.valueOf(cart.getProductid()));
ordermsgdetails.setStatus(fkstatus);
ordermsgdetailsDAO.add(ordermsgdetails);
cartDAO.delCart(cart.getId());
}
ordermsg.setTotal(ddfee);
ordermsgDAO.add(ordermsg);
}
return "redirect:orderLb.do";
}
}
//前台订单列表
@RequestMapping("orderLb")
public String orderLb(@RequestParam(defaultValue = "1",value = "pageNum") Integer pageNum,HttpServletRequest request) {
PageHelper.startPage(pageNum, 5);
Member member = (Member) request.getSession().getAttribute(
"sessionmember");
String msg = request.getParameter("msg")==null?"":request.getParameter("msg");
HashMap map = new HashMap();
map.put("memberid", member.getId());
map.put("delstatus", "0");
map.put("goodstype", "购买商品");
List<Ordermsg> list = ordermsgDAO.selectAll(map);
for(Ordermsg ordermsg:list){
Member mem = memberDAO.findById(Integer.parseInt(ordermsg.getMemberid()));
ordermsg.setMember(mem);
HashMap map1 = new HashMap();
map1.put("ddno", ordermsg.getDdno());
List<Ordermsgdetails> dddetailist = ordermsgdetailsDAO.selectAll(map1);
for(Ordermsgdetails orderdetail:dddetailist){
orderdetail.setProduct(productDAO.findById(Integer.valueOf(orderdetail.getProductid())));
}
ordermsg.setDddetailist(dddetailist);
if(ordermsg.getAddr()!=null&&!ordermsg.getAddr().equals("")){
Address address = addressDAO.findById(Integer.parseInt(ordermsg.getAddr()));
ordermsg.setAddress(address);
}
// }
//商品集合
HashMap map = new HashMap();
List<Product> productlist = productDAO.selectAllfortj(null);
String[] dyarray=new String[productlist.size()];
for(int i=0;i<productlist.size();i++){
dyarray[i]=String.valueOf(productlist.get(i).getId());
}
//
// for(int m=0;m<dyarray.length;m++){
// System.out.println(dyarray[m]+" ");
// }
//购买记录
Integer [][] arr2 = new Integer[ulist.size()][];
int count = 0;
//System.out.println("arr2.length=="+arr2.length);
for(int i=0;i<arr2.length;i++){
Member mb = ulist.get(i);
//System.out.println("userobj"+i+" ");
//创建一维数组
Integer[] tmpArr = new Integer[productlist.size()]; //4
//System.out.println("tmpArr=="+tmpArr.length);
//创建二维数组
for(int j=0;j < tmpArr.length;j++){
Product product = productlist.get(j);
//查询这个商品这个会员的购买记录
map.put("productid", product.getId());
map.put("memberid", mb.getId());
map.put("status", "已付款");
List<Ordermsgdetails> detaillist = ordermsgdetailsDAO.selectAll(map);
if(detaillist.size()>0){
tmpArr[j] = 1;
}else{
tmpArr[j] = 0;
}
}
arr2[i] = tmpArr;
}
//
for(int m=0;m<arr2.length;m++){
for(int n=0;n<arr2[m].length;n++){
public String updateMessage(Message message,HttpServletRequest request) {
messageDAO.update(message);
return "redirect:messageList.do";
}
//删除留言
@RequestMapping("/admin/messageDelAll")
public String updateMessage(HttpServletRequest request) {
String vals = request.getParameter("vals");
String[] val = vals.split(",");
for(int i=0;i<val.length;i++){
messageDAO.delete(Integer.parseInt(val[i]));
}
return "redirect:messageList.do";
}
//删除留言
@RequestMapping("/admin/messageDel")
public String messageDel(int id,HttpServletRequest request) {
messageDAO.delete(id);
return "redirect:messageList.do";
}
}
String suc = request.getParameter("suc");
if(suc!=null){
request.setAttribute("suc", "编辑成功");
}
return "admin/grinfo";
}
@RequestMapping("/admin/updateGrinfo")
public String update(User u, HttpServletRequest request){
userDAO.update(u);
User admin = (User)userDAO.findById(u.getId());
request.getSession().setAttribute("admin", admin);
return "redirect:grInfo.do?suc=suc";
}
@RequestMapping("/admin/updatepwd")
public String updatepwd(int id,String userpassword, HttpServletRequest request) {
String oldpassword = request.getParameter("oldpassword");
User user = userDAO.findById(id);
if(oldpassword.equals(user.getUserpassword())){
user.setUserpassword(userpassword);
userDAO.update(user);
request.setAttribute("suc", "操作成功");
}else{
request.setAttribute("error", "原密码错误");
}
return "admin/updatepwd";
}
@RequestMapping("/admin/userList")
public String selectAll(@RequestParam(defaultValue = "1",value = "pageNum") Integer pageNum,HttpServletRequest request){
String key = request.getParameter("key");
HashMap map = new HashMap();
map.put("key", key);
map.put("usertype", "商家");
map.put("shstatus", "通过审核");
PageHelper.startPage(pageNum, 10);
List<User> list = userDAO.selectAll(map);
PageInfo<User> pageInfo = new PageInfo<User>(list);
request.setAttribute("key",key);
request.setAttribute("pageInfo",pageInfo);
return "admin/userlist";
}
@RequestMapping("admin/userAdd")
public String userAdd(User user, HttpServletRequest request){
}
if(innum>outnum){
kc=innum-outnum;
}
return kc;
}
public int getfdInvertory(int productid,String saver,HttpServletRequest request){
int kc = 0;
HashMap map = new HashMap();
map.put("goodsid", productid);
map.put("saver",saver);
map.put("type", "in");
int innum = 0;
int outnum = 0;
List<Inventory> inlist = inventoryDAO.selectAll(map);
for(Inventory inventory:inlist){
innum+=inventory.getNum();
}
map.put("type", "out");
List<Inventory> outlist = inventoryDAO.selectAll(map);
for(Inventory inv:outlist){
outnum+=inv.getNum();
}
if(innum>outnum){
kc=innum-outnum;
}
return kc;
}
/**热销商品
* @param fid
* @param request
* @return
*/
public ArrayList<Product> hotSales(String fid, HttpServletRequest request){
HashMap map = new HashMap();
map.put("leibie", "购买商品");
if(!fid.equals("")){
map.put("fid", fid);
}
List<Product> startlist = productDAO.selectProductAll(map);
ArrayList<Product> zphlist = new ArrayList<Product>();
memberDAO.updateYue(mmm);
return "redirect:skipChongzhi.do?suc=suc";
}
//修改密码页面
@RequestMapping("upassShow")
public String upassShow(Member member,HttpServletRequest request){
Member mmm = (Member)request.getSession().getAttribute("sessionmember");
saveobject.getCart(request);
saveobject.getCategoryObject(request);
request.setAttribute("member", mmm);
return "upassedit";
}
//检查用户名的唯一性
@RequestMapping("forget")
public String forget(String uname,String email, HttpServletRequest request, HttpServletResponse response){
HashMap map = new HashMap();
map.put("uname", uname);
List<Member> list = memberDAO.selectAll(map);
if(list.size()>0){
Member mb = list.get(0);
if(!mb.getEmail().equals(email)){
request.setAttribute("suc", "用户名与邮箱不匹配!");
}else{
//MailTest.sendmial("朋友你好,你的密码是:"+list.get(0).getUpass(),email);
request.setAttribute("suc", "你的密码是:"+list.get(0).getUpass());
}
}else{
request.setAttribute("suc", "用户名不存在!");
}
return "forget";
}
}
}else{
return "redirect:orderList.do?suc=error";
}
}
//发货
@RequestMapping("/admin/fubiorderFh")
public String fubiorderFh(int id,HttpServletRequest request) {
Ordermsg ordermsg = ordermsgDAO.findById(id);
if(ordermsg.getShfs().equals("到店自取")){
ordermsg.setIsdd("抵达目的地");
}
ordermsg.setFkstatus("已发货");
ordermsgDAO.update(ordermsg);
return "redirect:fubiorderList.do?suc=suc";
}
//收货
@RequestMapping("qianShou")
public String qianShou(int id,HttpServletRequest request){
Ordermsg ordermsg = ordermsgDAO.findById(id);
ordermsg.setFkstatus("交易完成");
ordermsgDAO.update(ordermsg);
return "redirect:orderLb.do";
}
@RequestMapping("fubiqianshou")
public String qs(int id,HttpServletRequest request){
Ordermsg ordermsg = ordermsgDAO.findById(id);
ordermsg.setFkstatus("交易完成");
ordermsgDAO.update(ordermsg);
return "redirect:fubiOrder.do";
}
@RequestMapping("fubiorderSc")
public String fubiorderSc(int id,HttpServletRequest request){
Ordermsg ordermsg = ordermsgDAO.findById(id);
ordermsg.setDelstatus("1");
ordermsgDAO.update(ordermsg);
ordermsg.setNum(Integer.parseInt(num));
ordermsg.setTotal(intotal);
ordermsg.setFkstatus("已付款");
ordermsg.setSavetime(Info.getDateStr());
ordermsg.setDelstatus("0");
ordermsg.setShfs("到店自取");
ordermsg.setSaver(product.getSaver());
ordermsg.setGoodstype("积分商品");
ordermsgDAO.add(ordermsg);
mmm.setJf(yjf);
memberDAO.updateJf(mmm);
out.print("1");
}else{
out.print("2");//积分不足
}
} else {
out.println("0");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
* 计算两个时期之间的天数
*
*/
public static int dayToday(String DATE1, String DATE2) {
int i = 0;
if(DATE1.indexOf(" ")>-1)
DATE1 = DATE1.substring(0,DATE1.indexOf(" "));
if(DATE2.indexOf(" ")>-1)
DATE2 = DATE2.substring(0,DATE2.indexOf(" "));
String[] d1 = DATE1.split("-");
if(d1[1].length()==1)
{
DATE1 = d1[0]+"-0"+d1[1];
}else{
DATE1 = d1[0]+"-"+d1[1];
}
if(d1[2].length()==1)
{
DATE1 = DATE1+"-0"+d1[2];
}else{
DATE1 = DATE1+"-"+d1[2];
}
String[] d2 = DATE2.split("-");
if(d2[1].length()==1)
{
DATE2 = d2[0]+"-0"+d2[1];
}else{
DATE2 = d2[0]+"-"+d2[1];
}
if(d2[2].length()==1)
{
DATE2 = DATE2+"-0"+d2[2];
}else{
DATE2 = DATE2+"-"+d2[2];
}
innum+=inventory.getNum();
}
map.put("type", "out");
List<Inventory> outlist = inventoryDAO.selectAll(map);
for(Inventory inv:outlist){
outnum+=inv.getNum();
}
if(innum>outnum){
kc=innum-outnum;
}
return kc;
}
/**热销商品
* @param fid
* @param request
* @return
*/
public ArrayList<Product> hotSales(String fid, HttpServletRequest request){
HashMap map = new HashMap();
map.put("leibie", "购买商品");
if(!fid.equals("")){
map.put("fid", fid);
}
List<Product> startlist = productDAO.selectProductAll(map);
ArrayList<Product> zphlist = new ArrayList<Product>();
if(startlist.size()>0){
ArrayList<Product> newslist = new ArrayList<Product>();
for(Product product:startlist){
int salenum = 0;
HashMap map1 = new HashMap();
map1.put("productid", product.getId());
map1.put("status", "已付款");
List<Ordermsgdetails> ordermsgdetailslist = ordermsgdetailsDAO.selectAll(map1);
for(Ordermsgdetails ordermsgdetails:ordermsgdetailslist){
salenum += ordermsgdetails.getNum();
}
product.setSalenum(salenum);
newslist.add(product);
}
jscode+="}\n";
jscode+="if(document.getElementById(\"txt3\"))\n";
jscode+="{\n";
jscode+="document.getElementById(\"txt3\").src=\"/vehiclemanagementsys/upfile/"+map.get("filename3")+"\";\n";
jscode+="}\n";
jscode+="if(document.getElementById(\"txt4\"))\n";
jscode+="{\n";
jscode+="document.getElementById(\"txt4\").src=\"/vehiclemanagementsys/upfile/"+map.get("filename4")+"\";\n";
jscode+="}\n";
jscode+="if(document.getElementById(\"txt5\"))\n";
jscode+="{\n";
jscode+="document.getElementById(\"txt5\").src=\"/vehiclemanagementsys/upfile/"+map.get("filename5")+"\";\n";
jscode+="}\n";
}
}
jscode+="}\n";
jscode+=" getPvalue();\n";
jscode+="</script>\n";
}catch (Exception e) {
e.printStackTrace();
}
return jscode;
}
public static String generalFileName(String srcFileName) {
try{
int index=srcFileName.lastIndexOf(".");
return StrUtil.generalSrid()+srcFileName.substring(index).toLowerCase();
}catch(Exception e){
return StrUtil.generalSrid();
}
}
public synchronized static String getID() {
Product product = productDAO.findById(Integer.parseInt(id));
request.setAttribute("product", product);
return "admin/tjprice";
}
//更新特价
@RequestMapping("admin/tjpriceUpdate")
public String tjpriceUpdate(Product product,HttpServletRequest request){
productDAO.updateTprice(product);
return "redirect:productList.do";
}
//
@RequestMapping("shopGoods")
public String shopGoods(@RequestParam(defaultValue = "1",value = "pageNum") Integer pageNum,HttpServletRequest request){
String fid = request.getParameter("fid");
String sid = request.getParameter("sid");
String shopid = request.getParameter("shopid");
String ph = request.getParameter("ph");
User shop = userDAO.findById(Integer.parseInt(shopid));
//显示商品列表
HashMap map = new HashMap();
map.put("fid", fid);
map.put("sid", sid);
map.put("issj", "yes");
map.put("ph", ph);
map.put("saver", shopid);
map.put("leibie", "购买商品");
List<Product> nlist = productDAO.selectAll(map);
PageHelper.startPage(pageNum,8);
List<Product> list = productDAO.selectAll(map);
PageInfo<Product> pageInfo = new PageInfo<Product>(list);
request.setAttribute("pageInfo", pageInfo);
request.setAttribute("nlist", nlist);
request.setAttribute("sid", sid);
request.setAttribute("fid", fid);
request.setAttribute("shopid", shopid);
request.setAttribute("shop", shop);
String categroystr = "";
if(sid!=null && !sid.equals("")){
Category scategory = categoryDAO.findById(Integer.parseInt(product.getSid()));
product.setFcategory(fcategory);
product.setScategory(scategory);
HashMap map = new HashMap();
List<Category> fcategorylist = categoryDAO.selectFcategory(map);
List<Category> scategorylist = categoryDAO.selectScategory(Integer.parseInt(product.getFid()));
request.setAttribute("fcategorylist", fcategorylist);
request.setAttribute("scategorylist", scategorylist);
request.setAttribute("product", product);
return "admin/productedit";
}
//前台商品查询
@RequestMapping("productDetails")
public String productDetails(int id,HttpServletRequest request){
String plsuc = request.getParameter("plsuc");
String plerr = request.getParameter("plerr");
String msg = request.getParameter("msg");
String suc = request.getParameter("suc")==null?"":request.getParameter("suc");
Product product = productDAO.findById(id);
Category fcategory = categoryDAO.findById(Integer.parseInt(product.getFid()));
Category scategory = categoryDAO.findById(Integer.parseInt(product.getSid()));
User shop = userDAO.findById(Integer.parseInt(product.getSaver()));
product.setFcategory(fcategory);
product.setShop(shop);
product.setScategory(scategory);
if(msg!=null){
msg = "请先登录";
request.setAttribute("msg", msg);
}
if(suc.equals("suc")){
request.setAttribute("suc", "评论成功");
}else if(suc.equals("error")){
request.setAttribute("suc", "请先登录");
}else if(suc.equals("err")){
request.setAttribute("suc", "没有购买记录,评论失败");
}
return "zycar";
}else{
return "redirect:productDetails.do?id="+id+"&msg=msg";
}
}
//商品编辑
@RequestMapping("/admin/productEdit")
public String productEdit(Product product,HttpServletRequest request){
productDAO.update(product);
request.setAttribute("product", product);
return "redirect:productMsg.do";
}
@RequestMapping("/admin/fubiEdit")
public String fubiEdit(Product product,HttpServletRequest request){
productDAO.update(product);
request.setAttribute("product", product);
return "redirect:fubiList.do";
}
//商品删除
@RequestMapping("admin/fdproductAll")
public String fdproductAll(int id,HttpServletRequest request){
productDAO.delete(id);
return "redirect:productMsg.do";
}
//商品删除
@RequestMapping("admin/productDelAll")
public String productDelAll(int id,HttpServletRequest request,HttpServletResponse response){
productDAO.delete(id);
return "redirect:productList.do";
}
@RequestMapping("admin/fubiDel")
public String fubiDel(int id,HttpServletRequest request,HttpServletResponse response){
productDAO.delete(id);
return "redirect:fubiList.do";
}
//显示商品列表页
@RequestMapping("productLb")
public String productLb(@RequestParam(defaultValue = "1",value = "pageNum") Integer pageNum,HttpServletRequest request){
String fid = request.getParameter("fid");
String sid = request.getParameter("sid");
select+="<option value=\"\">不限</option>";
for(HashMap permap:new CommDAO().select("select * from "+tablename+" where "+where+" order by id desc")){
String optionstr = "";
if(zdname.split(";").length==1){
optionstr=permap.get(zdname.split("~")[0]).toString();
}else{
for(String str:zdname.split(";"))
{
String zdstr = str.split("~")[0];
String zdnamestr = str.split("~")[1].equals("无名")?"":(str.split("~")[1]+":");
optionstr+=zdnamestr+permap.get(zdstr)+" - ";
}
}
if(optionstr.indexOf(" - ")>-1)optionstr=optionstr.substring(0,optionstr.length()-3);
select+="<option value=\""+optionstr+"\">"+optionstr+"</option>";
}
select+="</select>";
return select;
}
public static String getradio(String name,String tablename,String zdname,String where)
{
String radio="";
int dxii = 0;
for(HashMap permap:new CommDAO().select("select * from "+tablename+" where "+where+" order by id desc")){
String check="";
if(dxii==0)check="checked=checked";
String optionstr = "";
for(String str:zdname.split(";"))
{
String zdstr = str.split("~")[0];
String zdnamestr = str.split("~")[1].equals("无名")?"":(str.split("~")[1]+":");