基于FullCalendar插件的简单个人日程安排系统(3)

本文介绍了如何利用FullCalendar插件结合Java后端创建一个简单的个人日程安排系统。涉及的Java类包括LoginServlet、SignUpServlet等,数据库使用MySQL,包含user和schedule_item两个表。详细代码已在java doc中说明,如有疑问欢迎讨论。
摘要由CSDN通过智能技术生成

(这里的代码有点多不过都不是特别复杂,慢慢看,O(∩_∩)O哈哈~)

LoginServlet.java

package cn.javaee.controller;

import java.io.IOException;
import java.net.URLEncoder;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import cn.javaee.model.Customer;
import cn.javaee.model.CustomerList;





/**
 * 
 * @see    验证用户登录
 * @author wangbin
 * @time 2017年11月18日 下午3:02:31
 */
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
   
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public LoginServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub

        response.setCharacterEncoding("GBK");
        //获取表单提交的三个属性
        //分别是 ”用户名“,”密码“,”记住账号"
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        String rememberusername =request.getParameter("rememberusername");
        //将获取的用户名和密码通过 new Customer(String username,String password)构造方法转换为一个Customer类
        Customer customer = new Customer(username,password);
        if(username!= null && password!=null){
            CustomerList customerList = new CustomerList();
            //验证用户提交的用户是否存在
            //通过判断是否能通过用户提交的用户名从用户列表中获取一个非空的Customer来判断该用户是否存在
            Customer curCustomer = customerList.getCustomerByName(username);
            //若不存在,则返回“incorrect"
            if(curCustomer == null){
                response.getWriter().print("incorrect");
            }else{
                //若存在该用户,则验证密码是否正确
                if(curCustomer.equals(customer)){
                    //若密码正确,则成功登录
                    //添加一个cookie用于存放用户的用户名
                    Cookie nameCookie = new Cookie("username",URLEncoder.encode(customer.getUserName(),"UTF-8"));
                    nameCookie.setMaxAge(60*60*24);
                    response.addCookie(nameCookie);
                    //若用户选择“记住账号",则添加一个cookie用于保留用户的选择
                    if(rememberusername.equals("true")){
                        Cookie myCookie=new Cookie("rememberName",URLEncoder.encode(customer.getUserName(),"UTF-8"));
                        myCookie.setMaxAge(60*60*24);
                        response.addCookie(myCookie);
                    }else{
                        //若用户没有选择“记住账号",则删除用于保留用户选择的cookie
                        Cookie[] cookies = request.getCookies();
                        if(cookies != null && cookies.length>0){
                            Cookie cookie = null;
                            for(int i=0;i<cookies.length;i++){
                                cookie = cookies[i];
                                if(cookie.getName().equals("rememberName")){
                                    cookie.setMaxAge(0);
                                    response.addCookie(cookie);
                                    break;
                                }
                            }
                        }

                    }

                    if(curCustomer.getStatus() == 0){
                        //若该账号是普通用户,则跳转到普通用户页面
                        response.getWriter().print("customer_index.jsp");
                    }else{
                        //若该账号是管理员,则跳转到管理员页面
                        response.getWriter().print("admin_index.jsp");
                    }

                }else{
                    response.getWriter().print("incorrect");
                }
            }


        }
    }


    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }

}

SignUpServlet.java

package cn.javaee.controller;

import java.io.IOException;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import cn.javaee.model.Customer;
import cn.javaee.model.CustomerList;

/**
 * 
 * @see   用户注册
 * @author wangbin
 * @time 2017年11月18日 下午3:10:54
 */
@WebServlet("/SignUpServlet")
public class SignUpServlet extends HttpServlet {
   
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public SignUpServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        //获取用户想要注册的用户名和密码
        String userNameSignUp = request.getParameter("userNameSignUp");
        String passwordSignUp = request.getParameter("passwordSignUp");
        if ((userNameSignUp != null) && (passwordSignUp != null)) {
            //判断该用户名是否已经被注册
            CustomerList customerList = new CustomerList();
            Customer customer = customerList.getCustomerByName(userNameSignUp);
            if(customer == null){
                //若该用户名尚未被注册,则添加该用户
                customer =new Customer(userNameSignUp,passwordSignUp);
                customer.setStatus(0);
                customer.setUserId(String.valueOf(System.currentTimeMillis()));
                customer.setSchedule(null);
                //将用户输入的信息转为相应的Customer类
                try {
                    customerList.addCustomer(customer);
                } catch (ClassNotFoundException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                response.getWriter().print("success");
            }else{
                //若已经被注册,则返回一个错误提示
                response.getWriter().print("error");
            }
        } else {
            response.getWriter().print("there is an error!");
        }
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }

}

Customer.java

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值