jsp 登陆页面


转载自 : 这里


 1.设计四个页面:

登陆页面Login.htm 提供客户登陆的表单

登陆判断页面Login_Check.jsp 根据表单提供过来的ID与PWD进行数据库验证

登陆成功页面Login_Success.jsp 登陆成功,提示欢迎信息

登陆失败页面Login_Failure.htm,提示输入错误,提供返回链接

 

2.代码实现

1)Login.htm

复制代码
     < form  action = " login_check.jsp "  method = " post " >
        
< table border = " 1 " >
           
< tr > < Td colspan = " 2 " > USerLogin </ Td > </ tr >
           
< tr > < td > UserName: </ td >< td >< input type = " text "  name = " ID " ></ td ></ tr >
           
< tr > < td > Password: </ td >< td >< input type = " password "  name = " PWD " ></ td ></ tr >
          
< tr > < td colspan = " 2 " > < td >< input type = " submit "  value = " Login " ></ td > < td >< input type = " reset "  value = " Reset " ></ td > </ tr >
        
</ table >
    
</ form >
复制代码

2)Login_Check.jsp

复制代码
<%
 DataSource ds = null;
 try{
  String dbUrl="jdbc:oracle:thin:@localhost:8080:yourdatabase";
     String Username="name";
     String Password="password";
     Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
     Connection conn = DriverManager.getConnection(dbUrl,Username,Password);//连接
     Statement stmt=conn.createStatement();//会话
     ResultSet rst=stmt.executeQuery("select * from yourTable");
  
  String ID=null;
  String PWD=null;
 while(rst.next())
 {
  ID=rst.getString("yourColumnName");
  PWD=request.getParameter("PWD");
 }
 if(ID.equals(ID))
 {
 %><
jsp:forward page = " Login_Success.jsp " >
< jsp:param name = " uname "  value = " <%=ID%> " />
</ jsp:forward >
<% } else { %>
< jsp:forward page = " Login_Failure.jsp " />
<%
}
%>
复制代码

3)Login_Success.jsp

  < body >
  Welcome. 
< br >
  
<%= " ID " %>
 
</ body >

 

4)Login_Failure.htm

   < body >
    So sorry about that. 
< br >
    
< a href = " Index.html " > Loin </ a >
  
</ body >

 

3.涉及知识点

1)静态页面与动态页面分开

  Login.htm与Login_Failure.htm两页面没有Java代码出现,故用htm页面。因为静态请求不需要经过容器,可以适当提高运行速度。

2)Scriptlet脚本小程序

  所有嵌入HTML中的Java代码都需用Scriptlet标记出来。有三种:<%%>,<%!%>,<%=%>

  2.1)<% %>可以:定义局部变量,编写语句。

  2.2)<%!%>可以:定义全局变量,方法,类。(虽然可以,但不建议在JSP页面定义,可以用JavaBean方式调用,注意分层)

  2.3)<%=%>可以:输出一个变量或一个具体值。

   也可以使用<jsp:scriptlet >String S="test";</jsp:scriptlet><%="S" %>这种标签来使代码优化,减少多出出现<%%>.


3)指令

  指令有Page,include,forward等等这几种

  3.1)page页面指令:当前页面的,常用ContextType,import等

  3.2)include包含指令:静态与动态之分

  3.3)forward跳转指令:将用户的一个request请求从一个页面传递到另外一个页面。通俗讲:Alice让我处理一件事,我让Bob去处理。请求从我这里传到了Bob那里。

    3.3.1)不传递参数的:<jsp:forward page="Login_Failure.jsp"/>
    3.3.2)传递参数:<jsp:forward page="Login_Success.jsp"><jsp:param name="uname" value="<%=ID%>"/></jsp:forward>

4)JSP注释
  有三种:<!-- --> <% // %>


5)JSP内置对象

  有几种属性:page,request,session,application.使用方法:page.setAttribute("name","Name");

        5.1page 是当前页面的,跳转页面后无效。

  5.2)request 是传递的,跳转页面后仍可读取,但是超链接无效(超链接时传递中断)

  5.3)session 打开的页面都有效,超链接也有效。

  5.4)cookies

  5.5)response

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值