javabean
JavaBean是符合某种规范的Java组件,也就是Java类。 它必须满足如下规范:
1)必须有一个零参数的默认构造函数
2)必须有get和set方法,类的字段必须通过get和set 方法来访问。 (get方法无参,set方法有参)
我们下面就来看一个JavaBean的例子。
一般网页登陆都需要用户名和密码,我们可以把用户名和密码存放在JavaBean中。
代码如下:
- package mytrain.formbean;
- public class userBean {
- private String name;
- private String password;
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- }
package mytrain.formbean; public class userBean { private String name; private String password; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
有了JavaBean以后,我们怎么在JSP页面中访问它呢?
方法有2种: 直接访问和JSP标签访问 (不过我们推荐通过标签来访问) 1)直接访问 a) 声明bean 在页面顶部导入JavaBean类: <%@ page import="mytrain.formbean.userBean" %> 在JSP段实例化类: <% userBean user = new userBean(); %> b) 访问bean <% user.setXXX(aa); %> <%=user.getXXX();%>
2)标签访问 (推荐) a) 声明bean 使用userBean标签: <jsp:useBean id="user" class="mytrain.formbean.userBean"/> b) 访问bean 通过setProperty标签来设置: <jsp:setProperty name="user" property="name" param="mUserName"/> 通过getProperty标签来取得: <jsp:getProperty name="user" property="name"/>
下面我们来看一下完整的代码。
标签访问法:
- <%@ page language="java" pageEncoding="GBK"%>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>表单Bean例子2</title>
- <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" />
- </head>
- <body>
- <form action="" method="post">
- <table>
- <tr>
- <td>
- <span class="blue10">用户名:</span>
- </td>
- <td>
- <input type="text" name="mUserName" size="20"><br>
- </td>
- </tr>
- <tr>
- <td>
- <span class="blue10">密 码:</span>
- </td>
- <td>
- <input type="password" name="mPassword" size="20"><br>
- </td>
- </tr>
- <tr>
- <td>
- </td>
- <td>
-
- <input type=submit value="submit"/>
- </td>
- </tr>
- </table>
- </form>
- <jsp:useBean id="user" class="mytrain.formbean.userBean"/>
- <jsp:setProperty name="user" property="name" param="mUserName"/>
- <jsp:setProperty name="user" property="password" param="mPassword"/>
- <hr/>
- 用户名:<jsp:getProperty name="user" property="name"/>
- <br>
- 密 码:<jsp:getProperty name="user" property="password"/>
- </body>
- </html>
<%@ page language="java" pageEncoding="GBK"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>表单Bean例子2</title> <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" /> </head> <body> <form action="" method="post"> <table> <tr> <td> <span class="blue10">用户名:</span> </td> <td> <input type="text" name="mUserName" size="20"><br> </td> </tr> <tr> <td> <span class="blue10">密 码:</span> </td> <td> <input type="password" name="mPassword" size="20"><br> </td> </tr> <tr> <td> </td> <td> <input type=submit value="submit"/> </td> </tr> </table> </form> <jsp:useBean id="user" class="mytrain.formbean.userBean"/> <jsp:setProperty name="user" property="name" param="mUserName"/> <jsp:setProperty name="user" property="password" param="mPassword"/> <hr/> 用户名:<jsp:getProperty name="user" property="name"/> <br> 密 码:<jsp:getProperty name="user" property="password"/> </body> </html>
直接访问法:
- <%@ page language="java" pageEncoding="GBK"%>
- <%@ page import="mytrain.formbean.userBean" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>表单Bean例子3</title>
- <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" />
- </head>
- <body>
- <form action="" method="post">
- <table>
- <tr>
- <td>
- <span class="blue10">用户名:</span>
- </td>
- <td>
- <input type="text" name="mUserName" size="20"><br>
- </td>
- </tr>
- <tr>
- <td>
- <span class="blue10">密 码:</span>
- </td>
- <td>
- <input type="password" name="mPassword" size="20"><br>
- </td>
- </tr>
- <tr>
- <td>
- </td>
- <td>
-
- <input type=submit value="submit"/>
- </td>
- </tr>
- </table>
- </form>
- <%
- userBean user = new userBean();
- user.setName(request.getParameter("mUserName"));
- user.setPassword(request.getParameter("mPassword"));
- %>
- <hr/>
- 用户名:<%=user.getName()%>
- <br>
- 密 码:<%=user.getPassword()%>
- </body>
- </html>
<%@ page language="java" pageEncoding="GBK"%> <%@ page import="mytrain.formbean.userBean" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>表单Bean例子3</title> <link rel="StyleSheet" href="../../CSS/style.css" type="text/css" /> </head> <body> <form action="" method="post"> <table> <tr> <td> <span class="blue10">用户名:</span> </td> <td> <input type="text" name="mUserName" size="20"><br> </td> </tr> <tr> <td> <span class="blue10">密 码:</span> </td> <td> <input type="password" name="mPassword" size="20"><br> </td> </tr> <tr> <td> </td> <td> <input type=submit value="submit"/> </td> </tr> </table> </form> <% userBean user = new userBean(); user.setName(request.getParameter("mUserName")); user.setPassword(request.getParameter("mPassword")); %> <hr/> 用户名:<%=user.getName()%> <br> 密 码:<%=user.getPassword()%> </body> </html>