首页 > 代码库 > javabean使用技巧

javabean使用技巧

avabean简介
Javabeans就是符合某种特定规范的java类,使用javabean的好处是解决代码重复编写,减少代码冗余,提高代码的维护性。

javabean的设计原则
公有类,无参的公有构造方法,属性私有,get,set方法,如下
public class Student
{
private String name,
public Student()
{

}
public void setName(String name){this.name=name;}
public String getName(){return this.name;}
}

jsp动作标签
存取javabean有关的
<jsp:useBean><jsp:setProperty><jsp:getProperty>

在jsp页面中如何使用javabeans
1:像使用普通java类一样,创建javabean实例

package com.entity;//用户类的javabeanpublic class Users {    private String name;    private String password;    public Users(){            }    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;    }    }

引用<%@page import="com.entity.Users"%>

   <%     Users u=new Users();     u.setName("admin");     u.setPassword("123");     %>    <h1>使用普通方法创建javabean实例</h1>    用户名:<%=u.getName() %>    密码:<%=u.getPassword() %>

2:在jsp页面中使用jsp动作标签使用javabean

<jsp:useBeans>作用:在jsp页面中实例化
<jsp:useBean id="标识符" class="java类名" scope="作用范围"/>

<jsp:useBean id="myuses" class="com.entity.Users"/>    <h1>使用javabean动作标签创建javabean实例</h1>    用户名:<%=myuses.getName() %>    密码:<%=myuses.getPassword()%> //可以获取Users中的值

--------------------------------------------------------------------------

<jsp:setProperty>作用:给已经实例话的javabean的对象属性进行赋值
<jsp:setProperty name="javaBean实例名" property="*"/>(跟表单关联,自动匹配所有属性)

<jsp:setProperty name="javaBean实例名" property="javabean属性名"/>(跟表单关联,匹配部分属性)

--------------------------------------------------------------------------------------------------

假如我们创建login的表单

<form name="loginform" action="doLogin.jsp" method="post">   <table>    <tr>      <td>用户名</td>      <td><input type="text" name="name" value=""></td>    </tr>    <tr>      <td>密码</td>      <td><input type="password" name="password" value=""></td>    </tr>    <tr>      <td colspan=2 align="center"><input type="submit" value="login"></td>          </tr>   </table>   </form>

doLogin.jsp展示login传递过来的用户名和密码通过setProperty方法

<jsp:useBean id="myuses" class="com.entity.Users" scope="page" />    <%--根据表单自动匹配 --%,property="*",表单的名为username和password和     javabean的Users类的name,password自动匹配赋值--%>    <jsp:setProperty name="myuses" property="*" />    用户名:<%=myuses.getName()%>    密码:<%=myuses.getPassword()%>

以下的setProperty与表单无关,手工赋值 

<jsp:setProperty name="myuses" property="name" value="http://www.mamicode.com/jack" />
 <jsp:setProperty name="myuses" property="password" value="http://www.mamicode.com/123" />

-------------------------------------------------------------------------

 <jsp:getProperty>作用:获取指定javabean对象的属性值
<jsp:getProperty name="javabean实例名" property="属性名"/>

<h2>使用getProperty获取javabean指定的属性的值</h2>    用户名:<jsp:getProperty property="name" name="myuses" />    密码:<jsp:getProperty property="password" name="myuses" />

javabean的四个作用域范围
使用usebeans的scope属性可以用来指定javabean的作用范围
page在当前页面有效
request可以通过HttpRequest.getAttribute()方法获得javabean对象
session可以通过HttpSession.getAttribute()方法获得javabean对象
application可以通过application.getAttribute()方法获得javabean对象

 

javabean使用技巧