code学习

JavaBean组件<jsp:forward>动作<jsp:param>动作登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。

JavaBean组件

JavaBean组件实际是一种java类。通过封装属性和方法成为具有某种功能或者处理某个业务的对象。

特点:1、实现代码的重复利用。2、容易编写和维护。3、jsp页面调用方便。

javabean类的书写规则:一般属性是private,访问属性的方法设置为public。对外提供setxxx和getxxx来设置和调用属性。需提供无参的构造函数,如果定义了有参数的构造函数、则需要重新定义无参的构造函数。

创建用户登录的javabean

package com.zyz;

public class UserBean {
  private String username;// 用户名
  private String pwd;// 密码
  // 无参构造函数

  public UserBean() {

  }

  // 构造方法
  public UserBean(String username, String pwd) {
    this.username = username;
    this.pwd = pwd;
  }

  public String getUsername() {
    return username;
  }

  public void setUsername(String username) {
    this.username = username;
  }

  public String getPwd() {
    return pwd;
  }

  public void setPwd(String pwd) {
    this.pwd = pwd;
  }

}      

常用的JSP动作

1.1 jsp:forward动作

语法:​

​<jsp:forward page="转发的页面url"> </jsp:forward>​

​ 作用:页面转发跳转到新的页面,url可以是绝对路径也可以是相对路径

1.2jsp:param动作

语法格式:​

​<jsp:param name="参数名" value="参数值"></jsp:param>​

​ 作用:传递参数,传递的参数封装在request请求中,参数的值可以在目标页面中通过request对象取得。不能单独使用

举例:jsp:param动作和jsp:forward动作一起使用,在页面请求转发时传递参数。

登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。

UserBean类

package com.zyz;

public class UserBean {
  private String username;// 用户名
  private String pwd;// 密码
  // 无参构造函数

  public UserBean() {

  }

  // 构造方法
  public UserBean(String username, String pwd) {
    this.username = username;
    this.pwd = pwd;
  }

  public String getUsername() {
    return username;
  }

  public void setUsername(String username) {
    this.username = username;
  }

  public String getPwd() {
    return pwd;
  }

  public void setPwd(String pwd) {
    this.pwd = pwd;
  }

  // 检查方法
  public boolean check() {
    if ("xiao".equals(username) && "pass123".equals(pwd)) {
      return true;
    } else {
      return false;
    }
  }

}
      

login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
  pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登录界面</title>
</head>
<body>
  <%
    String error = request.getParameter("error");
    if (error != null) {
      out.print("<font color=red>" + error + "</font>");
    }
  %>

  <form action="checklogin.jsp" method="post">
    用户名:<input type="text" name="username"> 密码:<input
      type="password" name="pwd"> <input type="submit" value="提交">
    <input type="reset" value="取消">

  </form>

</body>
</html>      

checklogin.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
  pageEncoding="UTF-8"%>
<%@ page import="java.util.*,com.zyz.UserBean"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>检查页面</title>
</head>
<%
  //获取提交的用户名和密码
  String username = request.getParameter("username");
  String pwd = request.getParameter("pwd");
  UserBean user = new UserBean(username, pwd);//直接调用构造函数,传参
  boolean flag = user.check();//调用信息匹配方法
  if (flag) {
%>

<jsp:forward page="success.jsp">
  <jsp:param value="<%=user.getUsername()%>" name="username" />
  <jsp:param value="<%=user.getPwd()%>" name="pwd" />

</jsp:forward>
<%
  } else {
%>
<jsp:forward page="login.jsp">
  <jsp:param value="error message,please you input the information"
    name="error" />
</jsp:forward>
<%
  }
%>
<body>

</body>
</html>      

success.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登录成功界面</title>
</head>
<body>
<h1>登录成功</h1>
用户名:<%=request.getParameter("username") %>
密码:<%=request.getParameter("pwd") %>
</body>
</html>      

运行截图

JavaBean组件<jsp:forward>动作<jsp:param>动作登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。