基于SSM的JSP+MYSQL进口零食销售系统

基于JSP的JSP+MYSQL进口零食销售系统mysql数据源

可以在此基础上进行扩展完善。

代码已经上传github,地址https://github.com/21503882/food
开发环境:
Eclipse ,MySQL 5.1,JDK1.7,Tomcat 7
涉及技术点:
MVC模式、JavaWeb、JDBC、HTML、CSS、JQUERY、分页、等。

基于SSM的JSP+MYSQL进口零食销售系统

基于SSM的JSP+MYSQL进口零食销售系统

基于SSM的JSP+MYSQL进口零食销售系统

基于SSM的JSP+MYSQL进口零食销售系统

基于SSM的JSP+MYSQL进口零食销售系统

基于SSM的JSP+MYSQL进口零食销售系统

使用工具:后台界面 -> beyond
提示框 -> x0popup
编辑器 -> WangEditor
下拉菜单 -> Select2
头像上传 -> ajaxfileupload
URL重写 -> urlrewrite
上传 -> Smartupload
项目功能:
登录,注册,评论,新闻管理,评论管理,分类管理,用户管理,用户组管理(权限),基本设置,站点设置

 

package com.caiyu.user;
 
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
import org.json.JSONException;
import org.json.JSONObject;
 
import com.caiyu.constants.DB;
import com.caiyu.constants.Param;
 
public class LoginServlet extends HttpServlet {
 
    @Override
    public void doGet(HttpServletRequest req,HttpServletResponse res) {
        res.setContentType("application/json;charset=utf-8");
        res.setCharacterEncoding("UTF-8");
        try {
            JSONObject jsonObject = new JSONObject();
            String userName = req.getParameter(Param.REQ_USER_NAME);
            String psw = req.getParameter(Param.REQ_PSW);
            if (userName == null || psw == null) {
                jsonObject.put(Param.RES_LOGIN_RESULT, "参数个数错误");
            }
            else {
                Class.forName(DB.DRIVER);
                Connection conn = DriverManager.getConnection(DB.URL, DB.USER, DB.PSW);
                Statement stmt = conn.createStatement();
                String querySQL = "select id, user_name from user where (user_name='%1$s'" +
                                " or study_no='%1$s')" +
                                " and password='%2$s';";
                ResultSet rs = stmt.executeQuery(String.format(querySQL, userName, psw));
                if (rs.first()) {
                    jsonObject.put(Param.RES_LOGIN_RESULT, "success");
                    jsonObject.put(Param.RES_USER_ID, rs.getInt(1));
                    jsonObject.put(Param.RES_USER_NAME, rs.getString(2));
                }
                else {
                    jsonObject.put(Param.RES_LOGIN_RESULT, "用户名或密码错误");
                }
                if (rs!=null) rs.close();
                if (stmt!=null) stmt.close();
                if (conn!=null) conn.close();
            }
            res.getWriter().write(jsonObject.toString());    
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (JSONException e) {
            e.printStackTrace();
        }
 
    }
    
    @Override
    public void doPost(HttpServletRequest req,HttpServletResponse res) {
        this.doGet(req, res);
    }
}
 
package com.caiyu.user;
 
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
import com.caiyu.constants.DB;
import com.caiyu.constants.Param;
 
public class RegisterServlet extends HttpServlet {
    
    @Override
    public void doGet(HttpServletRequest req,HttpServletResponse res) {
        res.setContentType("application/json;charset=utf-8");
        res.setCharacterEncoding("UTF-8");
        
        String userName = req.getParameter(Param.REQ_USER_NAME);
        String studyNo = req.getParameter(Param.REQ_STUDY_NO);
        String psw = req.getParameter(Param.REQ_PSW);
        
        String outputStr = "";
        try {
            Class.forName(DB.DRIVER);
            Connection conn = DriverManager.getConnection(DB.URL, DB.USER, DB.PSW);
            Statement stmt = conn.createStatement();
            
            //检查用户名是否存在
            String queryUserNameSQL = "select * from user where user_name='%1$s';";
            ResultSet rs = stmt.executeQuery(String.format(queryUserNameSQL, userName));
            if (rs.first()) {
                res.getWriter().write("该用户名已被注册");
            }
            else {
                //检查学号是否存在
                String queryStudyNoSQL = "select * from user where study_no='%1$s';";
                rs = stmt.executeQuery(String.format(queryStudyNoSQL, studyNo));
                if (rs.first()) {
                    outputStr = "该学号已被注册";
                }
                else {
                    //检查专业号是否正确
                    String professionNo = studyNo.substring(0, 6);    //专业代号取学号的前6位
                    String queryProNoSQL = "select * from user where profession_no='%1$s';";
                    rs = stmt.executeQuery(String.format(queryProNoSQL, professionNo));
                    if (!rs.first()) {
                        outputStr = "找不到学号对应的专业";
                    }
                    else {
                        String classNo = studyNo.substring(0, 8);
                        int grade = Integer.parseInt(studyNo.substring(4, 6));
                        int number = Integer.parseInt(studyNo.substring(8, 10));
                        String insertSql = "insert into user values " +
                                "(null,'%1$s','%2$s', '', '', '%3$s', '%4$s', '%5$s', '%6$d', '%7$d');";
                        stmt.execute(String.format(insertSql, userName, psw, 
                                        studyNo, professionNo, classNo, grade, number));
                        outputStr = Param.SUCCESS;
                    }
                }
            }
            if (rs!=null) rs.close();
            if (stmt!=null) stmt.close();
            if (conn!=null) conn.close();
            res.getWriter().write(outputStr);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }        
    }
    
    @Override
    public void doPost(HttpServletRequest req,HttpServletResponse res) {
        this.doGet(req, res);
    }
}
代码已经上传github,下载地址https://github.com/21503882/food