Servlet登陆注册管理系统2.0
2013-08-18 16:31
106 查看
增加了分页功能
Login.java
LoginCheck.java
Welcome.java
Login.java
package com.tsinghua; import javax.servlet.http.*; import java.io.*; public class Login extends HttpServlet{ //处理get请求 //req : 用于获得客户端(浏览器)的信息 //res : 用于向客户端(浏览器)返回信息 public void doGet(HttpServletRequest req,HttpServletResponse res){ try{ res.setContentType("text/html;charset=gbk"); PrintWriter pw = res.getWriter(); String error = (String)req.getParameter("info"); pw.println("<html>"); pw.println("<body>"); pw.println("<head>登陆界面</head>"); if(error!=null){ pw.println("<h1>您输入的用户名或密码错误</h1>"); } pw.println("<form action=loginCheck method =post>"); pw.println("用户:<input type=text name =username><br>"); pw.println("密码:<input type=password name =password><br>"); pw.println("<input type=submit value=login>"); pw.println("</form>"); pw.println("</body>"); pw.println("</html>"); }catch(Exception e){ e.printStackTrace(); } } }
LoginCheck.java
package com.tsinghua; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; import java.sql.ResultSet; public class LoginCheck extends HttpServlet{ public void doGet(HttpServletRequest req,HttpServletResponse res){ Connection ct = null; Statement sm = null; ResultSet rs = null; try{ String u = req.getParameter("username"); String p = req.getParameter("password"); //连接数据库 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //得到链接 Connection对象 ct = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=spdb1","sa","admin"); // 创建statement sm = ct.createStatement(); //得到结果集 //rs = sm.executeQuery("select top 1 from users where username='"+u+ "' and passwd='" +p+"'"); /*//if(u.equals("sp")&&p.equals("123")){ //if(p.equals("123")){ if(rs.next()){ // 将验证成功的信息写入session //1:得到session HttpSession hs = req.getSession(true); //修改session的存在时间 hs.setMaxInactiveInterval(20); hs.setAttribute("pass","OK"); res.sendRedirect("welcome?uname="+u+"&upass="+p); }*/ rs = sm.executeQuery("select top 1 passwd from users where username = '"+u+"'"); if(rs.next()){ //说明用户是存在的 String dbPasswd = rs.getString(1); if(dbPasswd.equals(p)){ // 将验证成功的信息写入session //1:得到session HttpSession hs = req.getSession(true); //修改session的存在时间 hs.setMaxInactiveInterval(20); hs.setAttribute("pass","+p+"); hs.setAttribute("name","+u="); //res.sendRedirect("welcome?uname="+u+"&upass="+p); res.sendRedirect("welcome"); // 真的合法 } else{ res.sendRedirect("login");// 里面的内容是写你要跳转servlet的url } } else{ res.sendRedirect("login");// 里面的内容是写你要跳转servlet的url } }catch(Exception e){ e.printStackTrace(); }finally{ try{ if(rs!=null){ rs.close(); } if(sm!=null){ sm.close(); } if(ct!=null){ ct.close(); } }catch(Exception e){ e.printStackTrace(); } } } public void doPost(HttpServletRequest req,HttpServletResponse res){ this.doGet(req,res); } }
Welcome.java
//用户欢迎servlet package com.tsinghua; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; public class Welcome extends HttpServlet{ Connection ct = null; PreparedStatement ps = null; ResultSet rs = null; public void doGet(HttpServletRequest req,HttpServletResponse res){ res.setContentType("text/html;charset=gbk"); try{ HttpSession hs = req.getSession(true); String p = (String)hs.getAttribute("pass"); if(p == null){ res.sendRedirect("login?info=error"); } //u=new String(u.getBytes("iso-8859-1"),"gb2312"); String u = (String)hs.getAttribute("name"); PrintWriter pw = res.getWriter(); pw.println("<img src=imgs/1.GIF><br>"); //连接数据库 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //得到链接 Connection对象 ct = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;databaseName=spdb1","sa","admin"); // 创建statement ps = ct.prepareStatement("select count(*)from users"); rs = ps.executeQuery(); int pageSize = 3; //一页显示几条数据 int pageNow = 1; //希望显示第几页 int rowCount; // 一共有多少行(查询出来) int pageCount; //共有几页(计算出来) //动态的界首pageNow String sPageNow = (String)req.getParameter("pageNow"); if(sPageNow!=null){ pageNow = Integer.parseInt(sPageNow); } if(rs.next()){ //首先得到rowCount rowCount = rs.getInt(1); if(rowCount/pageSize==0) { pageCount = rowCount/pageSize; } else { pageCount = rowCount/pageSize+1; }//计算pageCount ps = ct.prepareStatement("select top "+pageSize+" * from users where userId not in (select top "+pageSize*(pageNow-1)+" userId from users)"); }else{ pageCount = 0; } rs = ps.executeQuery(); pw.println("<table border = 1>"); pw.println("<tr><th>id</th><th>name</th><th>password</th><th>email</th><th>grade</th></tr>"); while(rs.next()){ pw.println("<tr>"); pw.println("<td>"+rs.getInt(1)+"</td>"); pw.println("<td>"+rs.getString(2)+"</td>"); pw.println("<td>"+rs.getString(3)+"</td>"); pw.println("<td>"+rs.getString(4)+"</td>"); pw.println("<td>"+rs.getInt(5)+"</td>"); pw.println("</tr>"); } pw.println("</table>"); //显示超链接 for(int i=1;i<=pageCount;i++){ pw.println("<a href=welcome?pageNow="+i+">"+i+"</a>"); } // pw.println("<br>Welcome!"+u+"! pass="+p); pw.println("<br>Welcome!"+u+"!"); pw.println("<br><a href =login>返回重新登陆>"); }catch(Exception e){ e.printStackTrace(); } } public void doPost(HttpServletRequest req,HttpServletResponse res){ this.doGet(req,res); } }
相关文章推荐
- Servlet登陆注册管理系统1.0
- Servlet登陆注册管理系统0.0
- 学生信息管理系统——登陆与注册界面解析
- 【Servlet】根据MVC思想设计用户登陆、用户注册、修改密码系统
- JAVA_WEB项目(结合Servlet+jsp+ckEditor编辑器+jquery easyui技术)实现新闻发布管理系统第二篇:登陆和注销功能实现
- 会员管理系统(一)--页面登陆与注册
- 职业生涯管理系统 servlet+javabean+mysql(三)登陆的实现
- 用Jsp+Servlet+JavaBean写的注册登陆界面,解决中文乱码
- 自己做的第一个servlet网上管理系统
- 采用Servlet+JDBC+MySQL+Jsp完成一个登陆注册界面
- JSP+Servlet培训班作业管理系统[1]-登录功能的简单实现
- 关系管理系统:Web层controller控制页面Servlet AddCustomerServlet
- 2000的系统,计算机管理中的用户管理显示红×,并提示:无法访问计算机xxx.错误是:库没有注册
- 钟表维修管理系统技术解析(二) 登陆验证
- 分享一个Flex管理系统 Session超时的时候 用户操作时自动提示并跳转到登陆页面的方法
- 系统进程管理及用户登陆监控
- Laxcus大数据管理系统2.0 (1) - 摘要和目录
- Phpcms V9 管理后台登陆及会员注册登录模板的修改方法
- jdbc,数据库案例:客户信息管理系统:业务层接口和实现,数据控制servlet
- 职业生涯管理系统 servlet+javabean+mysql(一)软件的安装与配置