From 8350828aeeb06da7b6b51938bafa99f4b9b8b94b Mon Sep 17 00:00:00 2001 From: unknown <你妈> Date: Mon, 28 Nov 2016 00:01:00 +0800 Subject: [PATCH 1/2] =?UTF-8?q?#3=20#4=20#5=20#6=20#7=E6=8F=90=E4=BA=A4?= =?UTF-8?q?=E5=AE=9E=E9=AA=8C=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../labs/se1414080902235/ErrorFilter.java | 57 +++++++++++ .../labs/se1414080902235/indexcheck.java | 94 +++++++++++++++++++ .../labs/se1414080902235/registerservlet.java | 84 +++++++++++++++++ jweb/web/error.jsp | 35 +++++++ jweb/web/index.jsp | 54 +++++++++++ jweb/web/info.jsp | 29 ++++++ jweb/web/input.jsp | 58 ++++++++++++ jweb/web/main.jsp | 38 ++++++++ jweb/web/register.jsp | 36 +++++++ jweb/web/show.jsp | 44 +++++++++ jweb/web/showall.jsp | 49 ++++++++++ labs/1414080902235/register.jsp | 36 +++++++ 12 files changed, 614 insertions(+) create mode 100644 jweb/src/edu/hzu/javaweb/labs/se1414080902235/ErrorFilter.java create mode 100644 jweb/src/edu/hzu/javaweb/labs/se1414080902235/indexcheck.java create mode 100644 jweb/src/edu/hzu/javaweb/labs/se1414080902235/registerservlet.java create mode 100644 jweb/web/error.jsp create mode 100644 jweb/web/index.jsp create mode 100644 jweb/web/info.jsp create mode 100644 jweb/web/input.jsp create mode 100644 jweb/web/main.jsp create mode 100644 jweb/web/register.jsp create mode 100644 jweb/web/show.jsp create mode 100644 jweb/web/showall.jsp create mode 100644 labs/1414080902235/register.jsp diff --git a/jweb/src/edu/hzu/javaweb/labs/se1414080902235/ErrorFilter.java b/jweb/src/edu/hzu/javaweb/labs/se1414080902235/ErrorFilter.java new file mode 100644 index 00000000..549b07ab --- /dev/null +++ b/jweb/src/edu/hzu/javaweb/labs/se1414080902235/ErrorFilter.java @@ -0,0 +1,57 @@ +package edu.hzu.javaweb.labs.se1414080902235servlet; + +import java.io.IOException; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.FilterConfig; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.annotation.WebFilter; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +/** + * Servlet Filter implementation class LoginFilter + */ +@WebFilter(filterName="ErrorFilter",urlPatterns="/1414080902235") +public class ErrorFilter implements Filter { + + /** + * Default constructor. + */ + public ErrorFilter() { + // TODO Auto-generated constructor stub + } + + /** + * @see Filter#destroy() + */ + public void destroy() { + // TODO Auto-generated method stub + } + + /** + * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain) + */ + public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { + //ȡhttp + HttpServletRequest req = (HttpServletRequest) request; + HttpServletResponse resp = (HttpServletResponse) response; + + HttpSession session = req.getSession(); + if (session.getAttribute("username") == null) { + resp.sendRedirect("login.jsp"); + } else { + chain.doFilter(request, response); + } + } + + /** + * @see Filter#init(FilterConfig) + */ + public void init(FilterConfig fConfig) throws ServletException { + System.out.println("¼..."); + } +} diff --git a/jweb/src/edu/hzu/javaweb/labs/se1414080902235/indexcheck.java b/jweb/src/edu/hzu/javaweb/labs/se1414080902235/indexcheck.java new file mode 100644 index 00000000..4fbc75a0 --- /dev/null +++ b/jweb/src/edu/hzu/javaweb/labs/se1414080902235/indexcheck.java @@ -0,0 +1,94 @@ +package web; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +public class indexcheck extends HttpServlet { + + /** + * Constructor of the object. + */ + public indexcheck() { + super(); + } + + /** + * Destruction of the servlet.
+ */ + public void destroy() { + super.destroy(); // Just puts "destroy" string in log + // Put your code here + } + + /** + * The doGet method of the servlet.
+ * + * This method is called when a form has its tag value method equals to get. + * + * @param request the request send by the client to the server + * @param response the response send by the server to the client + * @throws ServletException if an error occurred + * @throws IOException if an error occurred + */ + public void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + + response.setContentType("text/html"); + PrintWriter out = response.getWriter(); + out.println(""); + out.println(""); + out.println(" A Servlet"); + out.println(" "); + out.print(" This is "); + out.print(this.getClass()); + out.println(", using the GET method"); + out.println(" "); + out.println(""); + out.flush(); + out.close(); + } + + /** + * The doPost method of the servlet.
+ * + * This method is called when a form has its tag value method equals to post. + * + * @param request the request send by the client to the server + * @param response the response send by the server to the client + * @throws ServletException if an error occurred + * @throws IOException if an error occurred + */ + public void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + String userName=request.getParameter("username"); + String userPwd=request.getParameter("userpwd"); + request.setAttribute("username", userName); + request.setAttribute("userpwd", userPwd); + if("1414080902235".equals(userName)&&"1414080902235".equals(userPwd)) + { + + } + else + { + request.getRequestDispatcher("/show.jsp").forward(request, response); + } + + + + } + + /** + * Initialization of the servlet.
+ * + * @throws ServletException if an error occurs + */ + public void init() throws ServletException { + // Put your code here + } + +} diff --git a/jweb/src/edu/hzu/javaweb/labs/se1414080902235/registerservlet.java b/jweb/src/edu/hzu/javaweb/labs/se1414080902235/registerservlet.java new file mode 100644 index 00000000..998a3780 --- /dev/null +++ b/jweb/src/edu/hzu/javaweb/labs/se1414080902235/registerservlet.java @@ -0,0 +1,84 @@ +package web; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +public class registerservlet extends HttpServlet { + + /** + * Constructor of the object. + */ + public registerservlet() { + super(); + } + + /** + * Destruction of the servlet.
+ */ + public void destroy() { + super.destroy(); // Just puts "destroy" string in log + // Put your code here + } + + /** + * The doGet method of the servlet.
+ * + * This method is called when a form has its tag value method equals to get. + * + * @param request the request send by the client to the server + * @param response the response send by the server to the client + * @throws ServletException if an error occurred + * @throws IOException if an error occurred + */ + public void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + } + + /** + * The doPost method of the servlet.
+ * + * This method is called when a form has its tag value method equals to post. + * + * @param request the request send by the client to the server + * @param response the response send by the server to the client + * @throws ServletException if an error occurred + * @throws IOException if an error occurred + */ + public void doPost(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + String userName=request.getParameter("username"); + String userPwd=request.getParameter("userpwd"); + String userPwd1=request.getParameter("userpwd1"); + String userSex=request.getParameter("usersex"); + request.setAttribute("usern",userName); + request.setAttribute("userp",userPwd); + request.setAttribute("users",userSex); + request.setAttribute("power", "0"); + if(userName.length()<=0) + request.getRequestDispatcher("/error.jsp").forward(request, response); + else if(userName.length()<6||userPwd.length()<6) + request.getRequestDispatcher("/error.jsp").forward(request, response); + else if(!(userPwd).equals(userPwd1)) + request.getRequestDispatcher("/error.jsp").forward(request, response); + else + { + request.setAttribute("power", "1"); + request.getRequestDispatcher("/input.jsp").forward(request, response); + } + } + + /** + * Initialization of the servlet.
+ * + * @throws ServletException if an error occurs + */ + public void init() throws ServletException { + // Put your code here + } + +} diff --git a/jweb/web/error.jsp b/jweb/web/error.jsp new file mode 100644 index 00000000..7f0cd6fd --- /dev/null +++ b/jweb/web/error.jsp @@ -0,0 +1,35 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> + + + + + + + My JSP 'error.jsp' starting page + + + + + + + + + + + + <% + String username=(String)request.getAttribute("username"); + String userpwd=(String)request.getAttribute("userpwd"); + out.println(username+userpwd); + %>
+发生错误,请检查用户名与密码是否正确!!!
+ 点击返回注册页面
+ 点击返回登陆页面 + + diff --git a/jweb/web/index.jsp b/jweb/web/index.jsp new file mode 100644 index 00000000..f5bc4f67 --- /dev/null +++ b/jweb/web/index.jsp @@ -0,0 +1,54 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" + pageEncoding="UTF-8"%> +<%@ page import="java.io.*,java.util.*" %> +<%@ page import="javax.servlet.*,java.text.*" %> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> + + + + + + + 登陆页面 + + + + + + + + + +
+ + + + + + + + + + + + +
登陆
用户名:*输入账号!
密码:*输入密码!
+        + +
+
+ 尚未注册?点击前往。 + + <% + Date now=new Date(); + SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd"); + out.print( "现在时间是:"+now + ft.format(now)); + %> + + + diff --git a/jweb/web/info.jsp b/jweb/web/info.jsp new file mode 100644 index 00000000..72c83066 --- /dev/null +++ b/jweb/web/info.jsp @@ -0,0 +1,29 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> + + + + + + + My JSP 'info.jsp' starting page + + + + + + + + + + + + <%=request.getAttribute("user") %>
+ <%=request.getAttribute("info") %> + + diff --git a/jweb/web/input.jsp b/jweb/web/input.jsp new file mode 100644 index 00000000..fcb407ce --- /dev/null +++ b/jweb/web/input.jsp @@ -0,0 +1,58 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> +<%@ page import="java.io.*,java.util.*,java.sql.*"%> +<%request.setCharacterEncoding("UTF-8"); %> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> + + + + + + + My JSP 'input.jsp' starting page + + + + + + + + + + + + <% + String power=(String)request.getAttribute("power"); + if("1".equals(power)){ + String driveName ="com.mysql.jdbc.Driver"; + String dbName="web"; + String url1="jdbc:mysql://localhost:3306/web"; + String url2="?user=root&password="; + String url3="&useUnicode=true&charsetEncoding=UTF-8"; + String url=url1+url2+url3; + Class.forName("com.mysql.jdbc.Driver"); + Connection conn=DriverManager.getConnection(url); + String sql="Insert into user_information(username,userpwd,sex)values(?,?,?)"; + PreparedStatement pstmt=conn.prepareStatement(sql); + request.setCharacterEncoding("UTF-8"); + String sex=(String)request.getAttribute("users"); + String username=(String)request.getAttribute("usern"); + String userpwd=(String)request.getAttribute("userp"); + pstmt.setString(1,username); + pstmt.setString(2,userpwd); + pstmt.setString(3,sex); + int n=pstmt.executeUpdate(); + if(n==1){%>数据插入操作成功!<%} + else{%>数据插入操作失败!<%} + if(pstmt!=null){pstmt.close();} + if(conn!=null){conn.close();} + } + %> +
点击返回注册页面
+ 点击前往登陆 + + diff --git a/jweb/web/main.jsp b/jweb/web/main.jsp new file mode 100644 index 00000000..40684865 --- /dev/null +++ b/jweb/web/main.jsp @@ -0,0 +1,38 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> +<%@ page language="java" import="java.util.*" contentType="text/html;charset=UTF-8"%> + + +主页面 + + <% + String power1=(String)session.getAttribute("power1"); + String username=(String)request.getAttribute("username"); + if(power1=="1") + { + out.println("你好,"+username+"(已登陆。)"); + + Date date=new Date(); + Cookie cookie = null; + Cookie[] cookies = null; + // 获取cookies的数据,是一个数组 + cookies = request.getCookies(); + if( cookies != null ){ + for (int i = 0; i < cookies.length; i++){ + cookie = cookies[i]; + if((cookie.getName()).equals("name")){ + String name = cookie.getValue(); + request.setAttribute("name",name); + break; + } + } + } + + } + else + { + out.println("错误,两秒后返回登陆页面。。。"); + response.setHeader("Refresh","2;url=index.jsp"); + } + %> + + diff --git a/jweb/web/register.jsp b/jweb/web/register.jsp new file mode 100644 index 00000000..ab89590b --- /dev/null +++ b/jweb/web/register.jsp @@ -0,0 +1,36 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> + + + 注册页面 + +
+ + + + + + + + + + + + + + + + + + +
注册页面
用户名:*用户名不小于6位
密码:*设置登录密码,至少6位!
确认密码:*请再次输入密码!
性别:* + 请输入你的性别!(male/female)
+   + +
+
+ <% + Date now=new Date(); + out.print( "现在时间是:"+now ); + %> + + diff --git a/jweb/web/show.jsp b/jweb/web/show.jsp new file mode 100644 index 00000000..3c723819 --- /dev/null +++ b/jweb/web/show.jsp @@ -0,0 +1,44 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> +<%@ page import="java.io.*,java.util.*,java.sql.*"%> +<%request.setCharacterEncoding("UTF-8"); %> + + + + My JSP 'show.jsp' starting page + + + + + <% + String userName=(String)request.getParameter("username"); + String userPwd=(String)request.getParameter("userpwd"); + request.setAttribute("userpwd", userPwd); + request.setAttribute("username",userName); + String dbName="web"; + String url1="jdbc:mysql://localhost:3306/web"; + String url2="?user=root&password="; + String url3="&useUnicode=true&charsetEncoding=UTF-8"; + String url=url1+url2+url3; + Class.forName("com.mysql.jdbc.Driver"); + Connection conn=DriverManager.getConnection(url); + String sql="select * from user_information"; + PreparedStatement pstmt=conn.prepareStatement(sql); + ResultSet rs=pstmt.executeQuery(); + rs.beforeFirst(); + while(rs.next()){ + if(userName==(String)rs.getString(1)&&(String)userPwd==rs.getString(2)) + { + session.setAttribute("power1","1"); + response.setHeader("Refresh","2;url=main.jsp"); + } + + } + if(rs!=null){rs.close();} + if(pstmt!=null){pstmt.close();} + if(conn!=null){conn.close();} + request.getRequestDispatcher("/error.jsp").forward(request, response); + + + %> + + diff --git a/jweb/web/showall.jsp b/jweb/web/showall.jsp new file mode 100644 index 00000000..3f63a8aa --- /dev/null +++ b/jweb/web/showall.jsp @@ -0,0 +1,49 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> +<%@ page import="java.io.*,java.util.*,java.sql.*"%> +<%request.setCharacterEncoding("UTF-8"); %> + + + + + My JSP 'showall.jsp' starting page + + + +
+ <% + String driveName ="com.mysql.jdbc.Driver"; + String url1="jdbc:mysql://localhost:3306/web"; + String url2="?user=root&password="; + String url3="&useUnicode=true&charsetEncoding=UTF-8"; + String url=url1+url2+url3; + Class.forName("com.mysql.jdbc.Driver"); + Connection conn=DriverManager.getConnection(url); + String sql="select * from user_information"; + PreparedStatement pstmt=conn.prepareStatement(sql); + ResultSet rs=pstmt.executeQuery(); + rs.last(); + %>你要查询的学生数据表中共有 + <%=rs.getRow() %>人 + + + + + + <%rs.beforeFirst(); + while(rs.next()){ + %> + + + + + + <%} %> +
记录条数账号密码性别
<%=rs.getRow() %><%=rs.getString("username") %><%=rs.getString("userpwd") %><%=rs.getString("sex") %>
+
+ <% + if(rs!=null){rs.close();} + if(pstmt!=null){pstmt.close();} + if(conn!=null){conn.close();} + %> + + diff --git a/labs/1414080902235/register.jsp b/labs/1414080902235/register.jsp new file mode 100644 index 00000000..ab89590b --- /dev/null +++ b/labs/1414080902235/register.jsp @@ -0,0 +1,36 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> + + + 注册页面 + +
+ + + + + + + + + + + + + + + + + + +
注册页面
用户名:*用户名不小于6位
密码:*设置登录密码,至少6位!
确认密码:*请再次输入密码!
性别:* + 请输入你的性别!(male/female)
+   + +
+
+ <% + Date now=new Date(); + out.print( "现在时间是:"+now ); + %> + + From 127ba5cc660663f449815dba24450727bedbf4cb Mon Sep 17 00:00:00 2001 From: unknown <你妈> Date: Wed, 30 Nov 2016 23:34:15 +0800 Subject: [PATCH 2/2] #3 #4 #5 #6 #7 --- jweb/web/{ => 1414080902235}/error.jsp | 0 jweb/web/{ => 1414080902235}/index.jsp | 0 jweb/web/{ => 1414080902235}/info.jsp | 0 jweb/web/{ => 1414080902235}/input.jsp | 0 jweb/web/{ => 1414080902235}/main.jsp | 0 jweb/web/{ => 1414080902235}/register.jsp | 0 jweb/web/{ => 1414080902235}/show.jsp | 0 jweb/web/{ => 1414080902235}/showall.jsp | 0 8 files changed, 0 insertions(+), 0 deletions(-) rename jweb/web/{ => 1414080902235}/error.jsp (100%) rename jweb/web/{ => 1414080902235}/index.jsp (100%) rename jweb/web/{ => 1414080902235}/info.jsp (100%) rename jweb/web/{ => 1414080902235}/input.jsp (100%) rename jweb/web/{ => 1414080902235}/main.jsp (100%) rename jweb/web/{ => 1414080902235}/register.jsp (100%) rename jweb/web/{ => 1414080902235}/show.jsp (100%) rename jweb/web/{ => 1414080902235}/showall.jsp (100%) diff --git a/jweb/web/error.jsp b/jweb/web/1414080902235/error.jsp similarity index 100% rename from jweb/web/error.jsp rename to jweb/web/1414080902235/error.jsp diff --git a/jweb/web/index.jsp b/jweb/web/1414080902235/index.jsp similarity index 100% rename from jweb/web/index.jsp rename to jweb/web/1414080902235/index.jsp diff --git a/jweb/web/info.jsp b/jweb/web/1414080902235/info.jsp similarity index 100% rename from jweb/web/info.jsp rename to jweb/web/1414080902235/info.jsp diff --git a/jweb/web/input.jsp b/jweb/web/1414080902235/input.jsp similarity index 100% rename from jweb/web/input.jsp rename to jweb/web/1414080902235/input.jsp diff --git a/jweb/web/main.jsp b/jweb/web/1414080902235/main.jsp similarity index 100% rename from jweb/web/main.jsp rename to jweb/web/1414080902235/main.jsp diff --git a/jweb/web/register.jsp b/jweb/web/1414080902235/register.jsp similarity index 100% rename from jweb/web/register.jsp rename to jweb/web/1414080902235/register.jsp diff --git a/jweb/web/show.jsp b/jweb/web/1414080902235/show.jsp similarity index 100% rename from jweb/web/show.jsp rename to jweb/web/1414080902235/show.jsp diff --git a/jweb/web/showall.jsp b/jweb/web/1414080902235/showall.jsp similarity index 100% rename from jweb/web/showall.jsp rename to jweb/web/1414080902235/showall.jsp