登录界面

基于jsp+servlet的登录界面

登录界面

jsp代码:

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>登录界面</title>
<style type="text/css">
body {
    font-family: 楷体;
    font-size: 20px;
    background-image: url("../images/1.png");
    background-size: cover;
}

h1 {
    float: left;
    padding-left: 10%;
    color: #fff;
    font-size: 50px;
    font-family:"STXingkai";
    background-color: "Light purple";
}

table {
    position: absolute;
    left: 55%;
    padding: 4% 4% 6% 3%;
    margin-right: 10%;
    margin-top: 0%;
    color: #fff;
    border-collapse: separate;
    border-spacing: 10px 20px;
}

.text {
    position: relative;
}

.form-control {
    width: 200px;
    padding: 7px 0px;
    color: #fff;
    border: none;
    border-bottom: 1px solid #fff;
    outline: none;
    background: transparent;
}

.form-control:focus {
    border-color: rgba(59, 137, 245, 0.5);
    outline: 0;
}

.box {
    background: rgba(0, 0, 1, .7);
    box-shadow: 0 15px 25px rgba(0, 0, 0, .5);
    border-radius: 10px;
}

.submit {
    width: 80%;
    height: 50px;
    background-color: #3B89F5;
    border: none;
    font-size: 18px;
    color: #fff;
    border-radius: 8px;
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
}

.submit:HOVER {
    background-color: #0C6CED;
    color: #fff;
    cursor: pointer;
}

.Hyperlink {
    text-decoration: none;
}
.a::HOVER {
    position: absolute;
    left: 15px;
    top: 20px;
    padding: 50px;
    background-color: #0095ff;
    border-radius: 5px;
    color: #fff;
    content: attr(title);
    z-index: 2;
    width: 120px;
}

.b::HOVER {
    position: absolute;
    left: 15px;
    top: 5px;
    padding: 5px;
    background-color: #0095ff;
    border-radius: 5px;
    color: #fff;
    content: attr(title);
    z-index: 2;
    width: 120px;
}
</style>
<script type="text/javascript">
    function changeImageCode() {
        var codeImg = document.getElementById("imagecode");
        codeImg.src = "../Auth?d=" + Math.random();
    }
</script>
<script type="text/javascript">
    function mp3() {
        var myAuto = document.getElementById('myaudio');
        myAuto.play();
    }
</script>
</head>
<body>
    <h1>和园一号新闻发布系统</h1>
    <form action="../User_LoginServlet" method="post">
        <table align="right" class="box">

            <tr>
                <td style="font-size: 30px;">登录界面</td>
                <td style="font-size: 13px;" align="right">没有账号?
                    <h2>
                        <a title="快速注册" href="resgistered.jsp" class="Hyperlink">注册</a>
                    </h2>
                </td>
            </tr>

            <tr>
                <td class="text" align="center"><p>用户:</p></td>
                <td><input class="form-control form-input a" type="text"
                    title="请输入用户名" name="uname" value=""></td>
            </tr>

            <tr>
                <td class="text" align="center" valign="bottom"><p>密码:</p></td>
                <td><input class="form-control form-input b" type="password"
                    title="请输入密码" name="pass" value=""></td>
            </tr>
            <td class="text" align="center">验证码:</td>
            <td><input type="text" name="CheckCode"
                class="form-control form-input b"></td>
            <td><img alt="验证码" id="imagecode" src="../Auth" /></td>
            <td><a href="javascript:changeImageCode();">看不清楚,换一张 </a></td>
            </tr>

            <tr>
                <td colspan="2" align="center"><p></p> <input class="submit" type="submit" value="登录">
                    <p></p></td>
            </tr>

        </table>
    </form>
</body>

</html>

servle代码:

package user;

import java.io.DataOutput;
import java.io.IOException;

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

/**
 * Servlet implementation class User_LoginServlet
 */
@WebServlet("/User_LoginServlet")
public class User_LoginServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public User_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.getWriter().append("Served at: ").append(request.getContextPath());
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html; charset=UTF-8");
        request.setCharacterEncoding("utf-8");
        HttpSession session = request.getSession();
        //1-接收视图上的数据
        String uname = request.getParameter("uname");
        String pass = request.getParameter("pass");
         String PicCode = (String)session.getAttribute("PicCode");
         String checkcode = request.getParameter("CheckCode");
        // System.out.println(checkcode);
         
        //2-把数据传到JavaBean去执行
        UserDao dao  = new UserDao();
        String ps = dao.string2MD5(pass);
        boolean result = dao.isLogin(uname, ps);
        //3-处理结果,根据结果选择视图
        if(result&&PicCode.equals(checkcode)) {
            //登录成功
            //(1)把完整用户信息查询处理,存到Session里面
            User user = dao.getUserByUname(uname);
            session.setAttribute("user", user);
            //(2)跟新在线人数
            //在线人数的增加
            ServletContext application = request.getServletContext();
            String cournter=(String)application.getAttribute("cournter");
            int count;
            if(cournter == null){
                count = 0;
            }else{
                count = Integer.parseInt(cournter);
            }
            //自增
            count ++;
            application.setAttribute("cournter", String.valueOf(count));
            //response.sendRedirect("./content/main.jsp");
            response.getWriter().print("<script type=\"text/javascript\">alert(\"登录成功!\");window.location=\"./content/main.jsp\";</script>");
        }else {
            //response.sendRedirect("./user/login_failure.jsp");//登录失败
            response.getWriter().print("<script type=\"text/javascript\">alert(\"登录失败!\");window.location=\"/Lesson_310/user/login.jsp\";</script>");
        }
        
    }

    /**
     * @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);
    }

}