《JSP程序设计》手机销售网后台设计

《JSP程序设计》手机销售网后台设计

信管1172-201711671223-王健

本次实验设计以《JSP程序设计》课本第十章的例子项目为基础进行设计添加后台功能,后台页面分成左右两个框,左边显示一个树形菜单,右边根据菜单选择显示相应的交互界面。以实现对用户,产品分类,产品,订单等的后台管理。

 

一、前期工作

安装myeclipse10,将课本第十章的例子项目导入软件并调试好相关环境,保证项目的正常运行使用。所有的页面包括一个导航条,导航条由注册、登录、浏览手机、查看订单功能。

《JSP程序设计》手机销售网后台设计_第1张图片

检测各功能的正常使用

《JSP程序设计》手机销售网后台设计_第2张图片 《JSP程序设计》手机销售网后台设计_第3张图片

 

二、后台设计与实验

首先在导航栏添加后台链接选项

在dtree官网下载dtree菜单源码,对源码更改实现具体功能,后台页面实现功能如下:

设计登录验证,只有管理员登录后才能进去后台管理界面,管理员数据库表如图,

登录验证代码如下:

rootlogin.jsp

<%@ page contentType="text/html;charset=GB2312" %>











管理员登录

返回主页   管理界面

     
登录
登录名称:
输入密码:


登录反馈信息: 

登录名称:  

rootlogin.jsp使用的Java Servlet代码如下:

rootLogin.java

package myservlet.control;

import mybean.data.*;

import java.sql.*;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

import java.util.*;

public class rootLogin extends HttpServlet{

   public void init(ServletConfig config) throws ServletException{

      super.init(config);

      try{

           Class.forName("com.mysql.jdbc.Driver");

      }

      catch(Exception e){}

   }

   public String handleString(String s){

      try{  byte bb[]=s.getBytes("iso-8859-1");

            s=new String(bb);

      }

      catch(Exception ee){}

      return s; 

   }

   public void doPost(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException{

      Connection con;

      Statement sql;

      String logname=request.getParameter("logname").trim(),

      password=request.getParameter("password").trim();

      logname=handleString(logname);

      password=handleString(password);

      String uri="jdbc:mysql://127.0.0.1/mobileshop?"+

                             "user=root&password=123&characterEncoding=gb2312";

      boolean boo=(logname.length()>0)&&(password.length()>0); 

      try{

           con=DriverManager.getConnection(uri);

           String condition="select * from rootuser where logname = '"+logname+

            "' and password ='"+password+"'";

           sql=con.createStatement(); 

           if(boo){

              ResultSet rs=sql.executeQuery(condition);

              boolean m=rs.next();

              if(m==true){

                  //调用登录成功的方法:

                  success(request,response,logname,password);

                  RequestDispatcher dispatcher=

                  request.getRequestDispatcher("rootlogin.jsp");//转发

                  dispatcher.forward(request,response);

                  

              }

              else{

                  String backNews="您输入的用户名不存在,或密码不般配";

                  //调用登录失败的方法:

                  fail(request,response,logname,backNews);

              }

           }

           else{

                  String backNews="请输入用户名和密码";

                  fail(request,response,logname,backNews);

           }

           con.close();

      }

      catch(SQLException exp){

          String backNews=""+exp;

          fail(request,response,logname,backNews);

      }

   }

   public  void  doGet(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException{

      doPost(request,response);

   }

   public void success(HttpServletRequest request,HttpServletResponse response

                      ,String logname,String password) {

      rootlogin login=null;

      HttpSession session=request.getSession(true);

      try{  login=(rootlogin)session.getAttribute("login");

            if(login==null){

               login=new rootlogin();  //创建新的数据模型

               session.setAttribute("login",login);

               login=(rootlogin)session.getAttribute("login");

            }

            String name =login.getLogname();

            if(name.equals(logname)) {

               login.setBackNews(logname+" 管理员已经登录了");

               login.setLogname(logname);

            }

            else {  //数据模型存储新的登录用户

                login.setBackNews(logname+" 管理员登录成功");

                login.setLogname(logname);

            }

      }

      catch(Exception ee){

            login=new rootlogin(); 

            session.setAttribute("login",login);

            login.setBackNews(logname+"登录成功");

            login.setLogname(logname);

      }

   }

    public void fail(HttpServletRequest request,HttpServletResponse response

                      ,String logname,String backNews) {

        response.setContentType("text/html;charset=GB2312");

        try {

         PrintWriter out=response.getWriter();

         out.println("");

         out.println("

"+logname+"登录反馈结果
"+backNews+"

");          out.println("
返回登录界面");          out.println("
返回主页");          out.println("");         }         catch(IOException exp){}     } }

《JSP程序设计》手机销售网后台设计_第4张图片

在管理员登录后可点击验证界面的两个选项中的后台管理进去后台管理,或者回到主页进行浏览。

 

后台界面采用dtree菜单形式,左边是树形菜单,右边是点击菜单的操作界面

houtai.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>







    

    

    

“智多星”智能手机销售网后台管理









手机销售网后台管理

           
                       

菜单

                                    

展开菜单 | 收起菜单

                          
                           

在树形菜单使用的还有dtree官网下载的dtree.js及dtree.css文件。

 

后台左侧的菜单除了一些树形菜单功能外,还设置了三个功能键,返回主页键用以返回主页、“菜单”清空右侧页面并刷新以及退出管理员的登录管理并返回主页。

《JSP程序设计》手机销售网后台设计_第5张图片

接下来是对各个子功能的实现。

(1)用户管理

浏览用户

管理员可对整个网站的用户进行浏览。

《JSP程序设计》手机销售网后台设计_第6张图片

scanUser.jsp

<%@ page contentType="text/html;charset=GB2312" %>

<%@ page import="mybean.data.QueryBean" %>


















当前网站的所有用户如下:

辅助scanUser.jsp页面进行浏览的Java Bean

QueryBean.java

package mybean.data;

import java.sql.*;

public class QueryBean{

   String databaseName="";        //数据库名

   String tableName="";           //表名

   String user=""       ;         //用户

   String password="" ;            //密码

   StringBuffer queryResult;     //查询结果

   public QueryBean(){

      queryResult=new StringBuffer();

      try{  Class.forName("com.mysql.jdbc.Driver");

      }

      catch(Exception e) {}

   }

   public void setDatabaseName(String s){

      databaseName=s.trim();

      queryResult=new StringBuffer(); 

   }

   public String getDatabaseName(){

      return databaseName;

   }

   public void setTableName(String s){

      tableName=s.trim();

      queryResult=new StringBuffer();

   }

   public String getTableName(){

      return tableName;

   }

   public void setPassword(String s){

      password=s.trim();

      queryResult=new StringBuffer();

   }

   public String getPassword(){

      return password;

   }

   public void setUser(String s){

      user=s.trim();

      queryResult=new StringBuffer();

   }

   public String getUser(){

      return user;

   }

   public StringBuffer getQueryResult(){

      Connection con;

      Statement sql;

      ResultSet rs;

      try{  queryResult.append("");

            String uri="jdbc:mysql://127.0.0.1/"+databaseName;

            con=DriverManager.getConnection(uri,user,password);

            DatabaseMetaData metadata=con.getMetaData();

            ResultSet rs1=metadata.getColumns(null,null,tableName,null);

            int 字段个数=0;

            queryResult.append("");

            while(rs1.next()){

               字段个数++;

               String clumnName=rs1.getString(4);

               queryResult.append("");

            }

            queryResult.append("");

            sql=con.createStatement();

            rs=sql.executeQuery("SELECT * FROM "+tableName);

            while(rs.next()){

               queryResult.append("");

               for(int k=1;k<=字段个数;k++)

                   queryResult.append("");

               queryResult.append("");

            }

            queryResult.append("
"+clumnName+"
"+rs.getString(k)+"
");             con.close();       }       catch(SQLException e){             queryResult.append("请输入正确的用户名和密码");       }       return queryResult;    }    }

查询用户功能

在此功能,管理员可选择根据用户真实名字或网站会员名进行查找,考虑到网站会员名是唯一,但真实名字可不唯一,所以在查询的结果上实现了分页显示。

 《JSP程序设计》手机销售网后台设计_第7张图片

 

findUser.jsp

<%@ page contentType="text/html;charset=GB2312" %>



查找用户



  
输入查询信息:
   用户名字    真实名字   

辅助findUser.jsp进行查询的Java Servlet

FindUser.java

package myservlet.control;

import mybean.data.DataByPage;

import com.sun.rowset.*;

import java.sql.*;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class FindUser extends HttpServlet{

   CachedRowSetImpl rowSet=null;

   public void init(ServletConfig config) throws ServletException{

      super.init(config);

      try {  Class.forName("com.mysql.jdbc.Driver");

      }

      catch(Exception e){}

   }

   public void doPost(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException{

      request.setCharacterEncoding("gb2312");

      String searchMess= request.getParameter("searchMess");

      String radioMess= request.getParameter("radio");

      if(searchMess==null||searchMess.length()==0) {

         fail(request,response,"没有查询信息,无法查询");

         return;

      }

      String condition="";

      if(radioMess.equals("logname")) {

          condition =

         "SELECT * FROM user where logname LIKE '%"+searchMess+"%'";

      }

      if(radioMess.equals("realname")) {

          condition =

         "SELECT * FROM user where realname LIKE '%"+searchMess+"%'";

      }

      HttpSession session=request.getSession(true);

      Connection con=null;

      DataByPage dataBean=null;

      try{

           dataBean=(DataByPage)session.getAttribute("dataBean");

           if(dataBean==null){

              dataBean=new DataByPage();  //创建Javabean对象

              session.setAttribute("dataBean",dataBean);

           }

      }

      catch(Exception exp){

           dataBean=new DataByPage(); 

           session.setAttribute("dataBean",dataBean);

      }

      String uri = "jdbc:mysql://127.0.0.1/mobileshop?"+

                   "user=root&password=123&characterEncoding=gb2312";

      try{

           con=DriverManager.getConnection(uri);

           Statement sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,

                                                ResultSet.CONCUR_READ_ONLY);

           ResultSet rs=sql.executeQuery(condition);

           rowSet=new CachedRowSetImpl();   //创建行集对象

           rowSet.populate(rs);

           dataBean.setRowSet(rowSet);      //行集数据存储在dataBean中 

           con.close();                     //关闭连接

      }

      catch(SQLException exp){}

      response.sendRedirect("userPageShow.jsp");//重定向到byPageShow.jsp

   }

   public void doGet(HttpServletRequest request,

              HttpServletResponse response)

                        throws ServletException,IOException{

       doPost(request,response);

   }

   public void fail(HttpServletRequest request,HttpServletResponse response,

                      String backNews) {

        response.setContentType("text/html;charset=GB2312");

        try {

         PrintWriter out=response.getWriter();

         out.println("");

         out.println("

"+backNews+"

") ;          out.println("返回继续查找用户");          out.println("");         }         catch(IOException exp){}     } }

增加用户功能

考虑到若是网站用户因某些特殊原因无法注册时,可寻求管理员代为注册,所以选择了增加此功能。此功能与网站前段的注册页面类似。

《JSP程序设计》手机销售网后台设计_第8张图片 

addUser.jsp

<%@ page contentType="text/html;charset=GB2312" %>



添加用户









  
用户名由字母、数字、下划线构成,*注释项为必填项。
                 
用户名称*:
用户密码*:
联系电话:
邮寄地址:
真实姓名:

添加结果:

                                                    
会员名称 登录密码 真实姓名 联系地址 联系电话

增加用户addUser.jsp使用的Java Bean

UserAdd.java

package mybean.data;

public class UserAdd {

    String  logname="" , phone="", password="",

            address="",realname="",backNews="请输入信息";



    public String getLogname() {

        return logname;

    }


    public void setPassword(String password) {

        this.password = password;

    }

    public String getPassword() {

        return password;

    }



    public void setLogname(String logname) {

        this.logname = logname;

    }

    public String getPhone() {

        return phone;

    }



    public void setPhone(String phone) {

        this.phone = phone;

    }



    public String getAddress() {

        return address;

    }



    public void setAddress(String address) {

        this.address = address;

    }



    public String getRealname() {

        return realname;

    }



    public void setRealname(String realname) {

        this.realname = realname;

    }



    public String getBackNews() {

        return backNews;

    }



    public void setBackNews(String backNews) {

        this.backNews = backNews;

    }


}

增加用户addUser.jsp使用的Java Servlet

AddUser.java

package myservlet.control;



import mybean.data.*;

import java.sql.*;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class AddUser extends HttpServlet {

   public void init(ServletConfig config) throws ServletException {

      super.init(config);

      try {  Class.forName("com.mysql.jdbc.Driver");

      }

      catch(Exception e){}

   }

   public String handleString(String s)

   {   try{ byte bb[]=s.getBytes("iso-8859-1");

            s=new String(bb);

       }

       catch(Exception ee){}

       return s; 

   }

   public  void  doPost(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException {

      String uri="jdbc:mysql://127.0.0.1/mobileshop?"+

                             "user=root&password=123&characterEncoding=gb2312";

      Connection con;

      PreparedStatement sql;

      UserAdd user=new UserAdd();  //创建的Javabean模型

      request.setAttribute("user",user);

      String logname=request.getParameter("logname").trim();

      String password=request.getParameter("password").trim();

     

      String phone=request.getParameter("phone").trim();

      String address=request.getParameter("address").trim();

      String realname=request.getParameter("realname").trim();

      if(logname==null)

           logname="";

      if(password==null)

           password="";

     

      boolean isLD=true;

      for(int i=0;i='a')||(c<='Z'&&c>='A')||(c<='9'&&c>='0')))

             isLD=false;

      }

      boolean boo=logname.length()>0&&password.length()>0&&isLD;

      String backNews="";

      try{   con=DriverManager.getConnection(uri);

             String insertCondition="INSERT INTO user VALUES (?,?,?,?,?)";

             sql=con.prepareStatement(insertCondition);

             if(boo)

             { sql.setString(1,handleString(logname));

               sql.setString(2,handleString(password));

               sql.setString(3,handleString(phone));

               sql.setString(4,handleString(address));

               sql.setString(5,handleString(realname));

               int m=sql.executeUpdate();

               if(m!=0){

                  backNews="添加成功";

                  user.setBackNews(backNews);

                  user.setLogname(logname);

                  user.setPassword(handleString(password));

                  user.setPhone(handleString(phone));

                  user.setAddress(handleString(address));

                  user.setRealname(handleString(realname));

               }

             }

             else {

                 backNews="信息填写不完整或名字中有非法字符";

                 user.setBackNews(backNews); 

             }

             con.close();

      }

      catch(SQLException exp){

             backNews="该会员名已存在,请更换名字"+exp;

             user.setBackNews(backNews);

      }

      RequestDispatcher dispatcher=

      request.getRequestDispatcher("addUser.jsp");

      dispatcher.forward(request, response);//转发

   }

   public  void  doGet(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException {

      doPost(request,response);

   }

}

修改用户

当因为某些需求时,管理员实现对用户的信息修改,本界面可实时观看用户数据修改的变化,输入信息再提交前可看到修改前的用户数据列表,提交修改后数据表实时动态更新。

《JSP程序设计》手机销售网后台设计_第9张图片 《JSP程序设计》手机销售网后台设计_第10张图片

changeUser.jsp

<%@ page contentType="text/html;charset=GB2312" %>

<%@ page import="mybean.data.*" %>



















<%@ page contentType="text/html;charset=GB2312" %>



修改用户

输入要更新信息的用户名:
输入新的用户名称:
输入新的用户密码:
输入新的联系电话:
输入新的邮寄地址:
输入新的真实姓名:


用户表更新数据记录:

修改用户信息页面使用的 Java Servlet

changeUser.java

package myservlet.control;

import mybean.data.*;

import java.sql.*;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class changeUser extends HttpServlet {

   public void init(ServletConfig config) throws ServletException {

      super.init(config);

      try {  Class.forName("com.mysql.jdbc.Driver");

      }

      catch(Exception e){}

   }

   public String handleString(String s)

   {   try{ byte bb[]=s.getBytes("iso-8859-1");

            s=new String(bb);

       }

       catch(Exception ee){}

       return s; 

   }

   public  void  doPost(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException {

      String uri="jdbc:mysql://127.0.0.1/mobileshop?"+

                             "user=root&password=123&characterEncoding=gb2312";

      Connection con;

      Statement sql;

      ResultSet rs;

      changeuser userBean=new changeuser();  //创建的Javabean模型

      request.setAttribute("userBean",userBean);

      String logname=request.getParameter("logname").trim();

      String newlogname=request.getParameter("newlogname").trim();

      String newpassword=request.getParameter("newpassword").trim();

      String newphone=request.getParameter("newphone").trim();

      String newaddress=request.getParameter("newaddress").trim();

      String newrealname=request.getParameter("newrealname").trim();

      byte a[]=logname.getBytes("ISO-8859-1");

      logname=new String(a);

      byte b[]=newlogname.getBytes("ISO-8859-1");

      newlogname=new String(b);

      byte c[]=newpassword.getBytes("ISO-8859-1");

      newpassword=new String(c);

      byte d[]=newphone.getBytes("ISO-8859-1");

      newphone=new String(d);

      byte e[]=newaddress.getBytes("ISO-8859-1");

      newaddress=new String(e);

      byte f[]=newrealname.getBytes("ISO-8859-1");

      newrealname=new String(f);

      if(logname==null)

           logname="";

      if(newlogname==null)

      newlogname="";

     

      String backNews="";

      try{   con=DriverManager.getConnection(uri);

             String Condition1="update user set logname='"+newlogname+"'where logname="+"'"+logname+"'",

                Condition2="update user set password='"+newpassword+"'where logname="+"'"+logname+"'",

                Condition3="update user set phone='"+newphone+"'where logname="+"'"+logname+"'",

                Condition4="update user set address='"+newaddress+"'where logname="+"'"+logname+"'",

                Condition5="update user set realname='"+newrealname+"'where logname="+"'"+logname+"'";

                                 

             sql=con.createStatement();

             sql.executeUpdate(Condition1);

             sql.executeUpdate(Condition2);

             sql.executeUpdate(Condition3);

             sql.executeUpdate(Condition4);

             sql.executeUpdate(Condition5);

             int m1=sql.executeUpdate(Condition1);

             if(m1!=0){

                  backNews="修改成功";

                  userBean.setBackNews(backNews);

                  userBean.setLogname(logname);

                  userBean.setNewlogname(newlogname);

                  userBean.setNewphone(handleString(newphone));

                  userBean.setNewaddress(handleString(newaddress));

                  userBean.setNewrealname(handleString(newrealname));

               }

             else {

                 backNews="信息填写不完整或名字中有非法字符";

                 userBean.setBackNews(backNews); 

             }

             con.close();

      }

      catch(SQLException exp){

             backNews="该会员名已存在,请更换名字"+exp;

             userBean.setBackNews(backNews);

      }

      RequestDispatcher dispatcher=

      request.getRequestDispatcher("changeUser.jsp");

      dispatcher.forward(request, response);//转发

   }

   public  void  doGet(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException {

      doPost(request,response);

   }

}

修改用户页面使用的Java Bean

changeuser.java

package mybean.data;



public class changeuser {

    String  logname="" , newlogname="",newphone="", newpassword="",

            newaddress="",newrealname="",backNews="请输入信息";



    public String getLogname() {

        return logname;

    }



    public void setLogname(String logname) {

        this.logname = logname;

    }



    public String getNewlogname() {

        return newlogname;

    }



    public void setNewlogname(String newlogname) {

        this.newlogname = newlogname;

    }



    public String getNewphone() {

        return newphone;

    }



    public void setNewphone(String newphone) {

        this.newphone = newphone;

    }



    public String getNewpassword() {

        return newpassword;

    }



    public void setNewpassword(String newpassword) {

        this.newpassword = newpassword;

    }



    public String getNewaddress() {

        return newaddress;

    }



    public void setNewaddress(String newaddress) {

        this.newaddress = newaddress;

    }



    public String getNewrealname() {

        return newrealname;

    }



    public void setNewrealname(String newrealname) {

        this.newrealname = newrealname;

    }



    public String getBackNews() {

        return backNews;

    }



    public void setBackNews(String backNews) {

        this.backNews = backNews;

    }

}

删除用户

对本网站的用户进行删除,以用户名称为关键字进行删除,信息的变动可实时显示。

《JSP程序设计》手机销售网后台设计_第11张图片 《JSP程序设计》手机销售网后台设计_第12张图片

deleteUser.jsp

<%@ page contentType="text/html;charset=GB2312" %>

<%@ page import="mybean.data.*" %>



















<%@ page contentType="text/html;charset=GB2312" %>



删除用户

输入要删除的用户名:


用户表数据变动显示:

删除界面使用的Java Bean

deleteuser.java

package mybean.data;



public class deleteuser {

    String logname;

    public String getLogname() {

        return logname;

    }

    public void setLogname(String logname) {

        this.logname = logname;

    }

    public String getBackNews() {

        return backNews;

    }

    public void setBackNews(String backNews) {

        this.backNews = backNews;

    }

    String backNews="请输入信息";

}

删除页面使用的Java Servlet

DeleteUser.java

package myservlet.control;

import mybean.data.*;

import java.sql.*;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class DeleteUser extends HttpServlet {

   public void init(ServletConfig config) throws ServletException {

      super.init(config);

      try {  Class.forName("com.mysql.jdbc.Driver");

      }

      catch(Exception e){}

   }

   public String handleString(String s)

   {   try{ byte bb[]=s.getBytes("iso-8859-1");

            s=new String(bb);

       }

       catch(Exception ee){}

       return s; 

   }

   public  void  doPost(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException {

      String uri="jdbc:mysql://127.0.0.1/mobileshop?"+

                             "user=root&password=123&characterEncoding=gb2312";

      Connection con;

      Statement sql;

      ResultSet rs;

      changeuser userBean=new changeuser();  //创建的Javabean模型

      request.setAttribute("userBean",userBean);

      String logname=request.getParameter("logname").trim();

      byte a[]=logname.getBytes("ISO-8859-1");

      logname=new String(a);

      if(logname==null)

           logname="";

      String backNews="";

      try{   con=DriverManager.getConnection(uri);

             String Condition1="delete from user where logname="+"'"+logname+"'";

                                 

             sql=con.createStatement();

             sql.executeUpdate(Condition1);



             int m1=sql.executeUpdate(Condition1);

             if(m1!=0){

                  backNews="删除成功";

                  userBean.setBackNews(backNews);

                  userBean.setLogname(logname);

               }

             else {

                 backNews="用户名不存在";

                 userBean.setBackNews(backNews); 

             }

             con.close();

      }

      catch(SQLException exp){

             backNews="该会员名不存在"+exp;

             userBean.setBackNews(backNews);

      }

      RequestDispatcher dispatcher=

      request.getRequestDispatcher("deleteUser.jsp");

      dispatcher.forward(request, response);//转发

   }

   public  void  doGet(HttpServletRequest request,HttpServletResponse response)

                        throws ServletException,IOException {

      doPost(request,response);

   }

}

(2)订单管理

浏览订单

实现对当前网站的所有订单浏览,实现原理同浏览用户。

查询订单

用户可选择根据订单序号或者订单的用户名进行查询,实现原理同浏览用户。

《JSP程序设计》手机销售网后台设计_第13张图片 

删除订单

在删除文本框输入订单序号进行删除,实现原理与前面的删除用户相同。

《JSP程序设计》手机销售网后台设计_第14张图片 《JSP程序设计》手机销售网后台设计_第15张图片

(3)手机管理

增加手机分类

实现原理如前面增加用户。

《JSP程序设计》手机销售网后台设计_第16张图片

修改手机分类

实现原理同修改用户

《JSP程序设计》手机销售网后台设计_第17张图片 《JSP程序设计》手机销售网后台设计_第18张图片

删除手机分类以及删除手机原理也同前面一样,不再展示。

 

未完成功能:

订单的增加以及修改

手机产品的增加及修改

实验总结

在实现后台管理界面的要求上未能达到要求,基本完成了一个功能模块,其他模块的相同功能的代码都基本一致。整个实验代码有待完善,实验中的一些未完成的功能仍需后续完成,以及可能存在的一些bug未全部排查完毕,代码技术含量较低。

你可能感兴趣的:(《JSP程序设计》手机销售网后台设计)