jsp项目开发总结(2)

发布于 2018-07-06  156 次阅读


servlet登录系统

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
${param.info}
<form action="loginServlet" method="post">

用户名:<input type="text" name="username" required="required"></br></br>
密   码:<input type="password" name="password" required="required"></br></br>
<input type="submit" value="登录">

</form>
</body>
</html>

图片校验码:

<!doctype html>
<html>
    <head>
        <title>纯字验证码</title>
        <meta http-equiv='content-type' content='text/回头ml;charset=utf-8'/>
        <script type='text/javascript' src='jquery-1.7.2.js'></script>
        <script type='text/javascript'>
        var code ; //在全局定义验证码  

        function createCode(){
             code = "";   
             var codeLength = 4;//验证码的长度  
             var checkCode = document.getElementById("code");   
             var random = new Array(0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R',  
             'S','T','U','V','W','X','Y','Z');//随机数  
             for(var i = 0; i < codeLength; i++) {//循环操作  
                var index = Math.floor(Math.random()*36);//取得随机数的索引(0~35)  
                code += random[index];//根据索引取得随机数加到code上  
            }  
            checkCode.value = code;//把code值赋给验证码  
        }
        //校验验证码  
        function validate(){  
            var inputCode = document.getElementById("input").value.toUpperCase(); //取得输入的验证码并转化为大写        
            if(inputCode.length <= 0) { //若输入的验证码长度为0  
                alert("请输入验证码!"); //则弹出请输入验证码  
            }else if(inputCode != code ) { //若输入的验证码与产生的验证码不一致时  
                alert("验证码输入错误!@_@"); //则弹出验证码输入错误  
                createCode();//刷新验证码  
                document.getElementById("input").value = "";//清空文本框  
            }else { //输入正确时  
                alert("合格!^-^");
            }
        }
        </script>
        <style type='text/css'>
        #code{
            font-family:Arial,宋体;
            font-style:italic;
            color:green;
            border:0;
            padding:2px 3px;
            letter-spacing:3px;
            font-weight:bolder;
        }
        </style>
    </head>
    <body onload='createCode()'> 

       <div>用户名:<input type="text" value="" name="username" id="username"><br></div>
       <div>密&nbsp;&nbsp;&nbsp;&nbsp;码:<input type="password" value="" name="password" id="password"><br></div>

        <div>验证码:
            <input type = "text" id = "input"/>  
            <input type="button" id="code" onclick="createCode()" style="width:60px" title='点击更换验证码' />
            <input type = "button" value = "验证" onclick = "validate()"/>
        </div>  
    </body>
</回头ml>

处理登录请求的servlet:

package ojbk;

import java.io.IOException;
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 javax.servlet.http.HttpSession;

import sun.awt.RepaintArea;

@WebServlet(name="loginServlet", urlPatterns={"/loginServlet"})
public class loginServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //转调doPost()

        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        System.out.print("loginServlet.doPost()");
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        if(username.equals("admin") && password.equals("123")){
            HttpSession session = request.getSession();
            session.setAttribute("username", username);
            response.sendRedirect("main.jsp");//重定向到main.jsp
        }else{
     request.getRequestDispatcher("login.jsp?info= 用户名或密码有错!")
      .forward(request, response);//转发到login.jsp,并传错误提示信息
        }
}


}

数据库的表的输出:

<%@ page import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<!DOCTYPE>
<html>
  <head>
   <title>显示商品信息</title>
  </head>
  <body>
    <%
    //1. 加载数据库驱动
    Class.forName("com.mysql.jdbc.Driver");
    //2. 创建连接
    Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/eshop", "root", "");
    //3. 获取statement对象
    Statement st = conn.createStatement();
    //4. 查询则返回结果集
    ResultSet rs = st.executeQuery("select * from shop");
    %>
     <table border="1">
        <tr>
           <th>商品ID</th><th>商品名称</th><th>商品数量</th><th>商品单价</th><th>商品描述</th>
        </tr>
     <%
    //5. 显示商品
      while(rs.next()){
       %>
       <tr>
        <td><%=rs.getInt(1)%></td><td><%=rs.getString(2)%></td>
        <td><%=rs.getInt(3)%></td><td><%=rs.getDouble(4)%></td>
        <td><%=rs.getString(5)%></td>
       </tr>
      <%
       }
     //6. 关闭连接
       if(rs!=null) rs.close();
       if(st!=null) st.close();
       if(conn!=null) conn.close();
      %>
    </table>
  </body>
</html>

Comments


愿我如星君如月,夜夜流光相皎洁。