`
chaoyi
  • 浏览: 287411 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JSP+Bean+Servlet模式实现最简单登陆界面

 
阅读更多

 

Userlogin代码 /*   
    Document   : UserLogin   
    Created on : 2010-10-9, 21:03:15  
    Author     : chaoyi 
    Faction    :一个具体实现注册方法的Bean   */   
package Servlet1;   
import java.sql.*;   
public class UserLogin {   
     public boolean login(User user){   
  
        Connection conn=null;   
        PreparedStatement ps=null;   
           
        try{   
            Class.forName("com.mysql.jdbc.Driver");   
            conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/cars","root","1232323");   
            String sql=   
                    "insert into user(uname,upass)values(?,?)";   
            ps=conn.prepareStatement(sql);   
            ps.setString(1,user.getUname());   
            ps.setString(2,user.getUpass());   
            int mun=ps.executeUpdate();   
        }catch(Exception e){   
        e.printStackTrace();   
        }finally{   
            try{   
                   
                ps.close();   
                conn.close();   
            }catch(SQLException e){   
                e.printStackTrace();   
            }   
        }   
  
     return true;   
}   
}  


Userservlet代码 
/*   
    Document   : UserServlet   
    Created on : 2010-10-9, 21:03:15  
    Author     : chaoyi 
    Faction    :用于实现后台调用分配的Servlet   
*/   
package Servlet1;   
import java.io.IOException;   
import javax.servlet.ServletException;   
import javax.servlet.http.HttpServlet;   
import javax.servlet.http.HttpServletRequest;   
import javax.servlet.http.HttpServletResponse;   
import javax.servlet.http.HttpSession;   
public class UserServlet extends HttpServlet {   
    private UserLand Land=new UserLand();   
    private UserLogin login=new UserLogin();   
    public void doGet(HttpServletRequest request,HttpServletResponse response)   
                    throws ServletException,IOException{   
    }   
    public void doPost(HttpServletRequest request,HttpServletResponse response)   
            throws ServletException,IOException{   
            request.setCharacterEncoding("gb2312");   
            String submit=request.getParameter("submit");   
  
            if(submit!=null&&submit.equals("登陆")){   
            String uname=request.getParameter("uname");   
            String upass=request.getParameter("upass");   
            User user=new User();   
            user.setUname(uname);   
            user.setUpass(upass);   
            if(Land.login(user)){   
                HttpSession session=request.getSession(true);   
                session.setAttribute("user",user);   
                request.getRequestDispatcher("index.jsp").forward(request,response);   
            }else{   
                HttpSession session=request.getSession(true);   
                session.setAttribute("user",user);   
                request.getRequestDispatcher("index3.jsp").forward(request,response);   
            }   
    }   
           if(submit!=null&&submit.equals("注册")){   
            String uname=request.getParameter("uname");   
            String upass=request.getParameter("upass");   
            User user=new User();   
            user.setUname(uname);   
            user.setUpass(upass);   
            if(Land.login(user)){   
                HttpSession session=request.getSession(true);   
                session.setAttribute("user",user);   
                request.getRequestDispatcher("index1.jsp").forward(request,response);   
            }else if(login.login(user)){   
               HttpSession session=request.getSession(true);   
                session.setAttribute("user",user);   
                request.getRequestDispatcher("index2.jsp").forward(request,response);   
            }   
            }   
    }   
       
}  
Login代码: 
<%--
    Document   : Login
    Created on : 2010-10-9, 21:03:15
    Author     : chaoyi
    Faction    :前台登陆的页面的实现
--%>
<%@page language="java"contentType="text/html;charset=gb2312"%>
<html>
    <head>
        <title>Login.jsp</title>
    </head>
    <body style="text-align: center">
        <form action="UserServlet"method="post">
            <table>
                <tr>
                    <h5>提示:</h5>
                </tr>
                <tr>
                    <h5>如果有已注册请直接登录</h5>
                </tr>
                <tr>
                    <h5>如果没有注册请直接注册</h5>
                </tr>
                <tr>
                    <td>用户名</td>
                        <td><input type="text"name="uname"/></td>

                </tr>
                <tr>
                    <td>密&nbsp;&nbsp;码:</td>
                    <td><input type="text"name="upass"></td>
                </tr>
                <tr>
                    <td>&nbsp;</td>
                    <td>
                        <input type="submit"name="submit"value="登陆"/>&nbsp;
                        <input type="submit"name="submit"value="注册"/>
                    </td>
                </tr>
            </table>

        </form>
        
    </body>
</html>
 
index代码 
<%--
    Document   : index
    Created on : 2010-10-8, 21:03:15
    Author     : chaoyi
    Faction    :用于实现登陆成功的显示信息的JSP页面
--%>
<%@page language="java"import="Servlet1.*"contentType="text/html;charset=gb2312"%>


<html>
    <head>
       <title>index.jsp</title>
    </head>
    <body style="text-align: center">
        ${sessionScope.user.uname},欢迎您
    </body>
</html> 

User代码 
/*   
    Document   : User   
    Created on : 2010-10-9, 21:03:15  
    Author     : chaoyi
    Fuction    : save imfomation of user
*/   
package Servlet1;   
  
public class User {   
    //private Integer uid;   
    private String uname;   
    private String upass;   
  
    public String getUname(){   
        return uname;   
    }   
    public void setUname(String uname){   
        this.uname=uname;   
    }   
    public String getUpass(){   
        return upass;   
    }   
    public void setUpass(String upass){   
        this.upass=upass;   
    }   
  
}  

Userland代码 
/*   
    Document   : UserLand   
    Created on : 2010-10-9, 21:03:15  
    Author     : chaoyi 
    Faction    :一个实现登陆具体步骤的bean页面   
*/   
package Servlet1;   
import java.sql.*;   
  
public class UserLand {   
    public boolean login(User user){   
        Connection conn=null;   
        PreparedStatement ps=null;   
        ResultSet rs=null;   
        try{   
            Class.forName("com.mysql.jdbc.Driver");   
            conn=DriverManager.getConnection(   
                    "jdbc:mysql://localhost:3306/cars","root","1232323");   
            String sql="Select uname,upass from user";   
            ps=conn.prepareStatement(sql);   
                       rs=ps.executeQuery();   
            while(rs.next()){   
                if(user.getUname().equals(rs.getString("uname"))&&user.getUpass().equals(rs.getString("upass"))){   
                return true;   
                }   
            }   
            //return false;   
        }catch(Exception e){   
            e.printStackTrace();   
        }finally{   
            try{   
                rs.close();   
                ps.close();   
                conn.close();   
            }catch(SQLException e){   
                e.printStackTrace();   
            }   
        }   
        return false;   
    }   
  
} 

 

 

这里index.JSP只写了一个1,2,3大同小异,这里就不写了。这里用到了MYSQL,实现需要配置好服务器,和web.xml。我的web.xml:

 

/*Web.xml代码*/ 
<?xml version="1.0" encoding="UTF-8"?>   
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">   
    <servlet>   
        <servlet-name>UserServlet</servlet-name>   
        <servlet-class>Servlet1.UserServlet</servlet-class>   
    </servlet>   
       
    <servlet-mapping>   
        <servlet-name>UserServlet</servlet-name>   
        <url-pattern>/UserServlet/*</url-pattern>   
    </servlet-mapping>   
     
</web-app>  

 

大致说一下实现的过程,1.了解架构,JSP负责前台页面;bean用来具体实现功能语言:sql语言的完成和算法等;servlet在后台进行调用分配等。

此代码,登陆和注册页面都在一个页面,代码可以看得出,是最基本的登陆页面。

(此贴为JavaWeb新手参见,希望能帮到新手们,因为当初自己也是找了很久没找到比较完善的。具体有5个JSP,一个java,两个Bean,一个Servlet。详情见代码,如果有错误和不当之处请回帖。欢迎您的意见)

 

分享到:
评论

相关推荐

    基于J2EE框架的个人博客系统项目毕业设计论文(源码和论文)

    本网站以xp为Web平台,JSP+Ajax+Servlet+JavaBean+Hibernate为网站实现技术,建立基于MySQL数据库系统的核心动态网页,实现博客网站前台及博客个人维护管理等功能模块。 1、 系统处理的准确性和及时性:系统处理的...

    java源码包---java 源码 大量 实例

    一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...

    java源码包2

    一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源...

    java源码包3

    一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源...

    java源码包4

    一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在...

    JAVA上百实例源码以及开源项目源代码

    然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在...

    JAVA上百实例源码以及开源项目

    一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...

Global site tag (gtag.js) - Google Analytics