IT学习联盟

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
IT学习联盟 门户 文章 java 查看内容

修改login方法,通过数据库进行验证

2012-10-16 12:47| 发布者: admin| 查看: 2654| 评论: 0

 1)使用JDBC连接数据库的基本过程

   加载驱动程序;

   建立与数据库之间的连接;

   创建一个执行SQL语句的语句对象;

   编写要执行的SQL语句;

   使用语句对象执行SQL语句;

   如果有结果,需要对结果进行处理;

   关闭相关对象;

   注意:异常处理。

   2)修改login方法

   public boolean login() throws Exception{

      // return username.equals(userpass);

      // 第一步:加载驱动程序,如果使用其它的驱动程序,写出相应的名字即可

      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

      // 第二步:建立连接,第一个参数是url(定位数据库),第二个参数是用户名,第三个参数是口令

      Connection con = DriverManager.getConnection("jdbc dbc:bookstore","","");  // bookstore是所创建的ODBC数据源的名字

      // 第三步:创建SQL语句

      String sql = "select * from usertable where username=? and userpass=?";

      // 第四步:创建语句对象,用于执行SQL语句的

      PreparedStatement stmt = con.prepareStatement(sql);

      // 对变量赋值,第一个参数表示变量的序号(第几个问号),第二个参数表示所赋的值

      stmt.setString(1,username);

      stmt.setString(2,userpass);

      // 第五步:执行SQL语句,因为有查询结果,所以使用executeQuery方法,结果保存在rs

      ResultSet rs = stmt.executeQuery();

      //  rs相当于一个表格,有若干行、若干列组成,指针指向第一条记录的前面

      // 第六步:对结果进行处理,使用next方法进行遍历,使用get方法得到当前行的列

      boolean b = rs.next();

      // 第七步:关闭相关对象

      rs.close();

      stmt.close();

      con.close();

      return b;     

   }

   3)修改LoginProcessServlet.java

修改后的代码为:

package servlet;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

import bean.*;

public class LoginProcessServlet extends HttpServlet

{

  public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException

  {

        // 获取用户输入的信息

        String username = request.getParameter("username");

        String userpass = request.getParameter("userpass");

        // 调用JavaBean,创建对象、初始化、然后调用方法

        UserBean user = new UserBean();

        user.setUsername(username);

        user.setUserpass(userpass);

        boolean b = false;

        try{

            b = user.login();

        }catch(Exception e){

            // 当产生异常的时候,把异常信息输出在界面上

                // 设置编码方式

                response.setContentType("text/html;charset=gb2312");

                // 得到输出流对象

                PrintWriter out = response.getWriter();

                out.println(e.toString());

                return;

        }

        // 转向响应界面

        if(b){

           RequestDispatcher rd = request.getRequestDispatcher("success.jsp");  // 跳转到成功的页面

           rd.forward(request,response); // 完成跳转

        }else{

           RequestDispatcher rd = request.getRequestDispatcher("index1.jsp");  // 跳转到登录页面

           rd.forward(request,response); // 完成跳转

        }

 

  }

  public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException

  {

     doGet(request,response);

  }

}

 

找到:

        boolean b = user.login();

修改为:     

        boolean b = false;

        try{

            b = user.login();

        }catch(Exception e){

            // 当产生异常的时候,把异常信息输出在界面上

                // 设置编码方式

                response.setContentType("text/html;charset=gb2312");

                // 得到输出流对象

                PrintWriter out = response.getWriter();

                out.println(e.toString());

                return;

        }

版权声明:本站所收集的下载资源均来自网络,如果有侵犯你的版权,请来信通知,我们马上删除。

Archiver|IT学习联盟| 网站地图

Powered by Discuz! X2.5© 2001-2010 世界学习室 大伟制作

GMT+8, 2018-2-25 05:36 , Processed in 0.104642 second(s), 12 queries .