brb*_*lol 17 java jsp javabeans java-ee
我正在做一些JSP教程,我不明白bean类的意义.它只是获取和设置方法.我们为什么要用它们?
public class UserData {
String username;
String email;
int age;
public void setUsername( String value )
{
username = value;
}
public void setEmail( String value )
{
email = value;
}
public void setAge( int value )
{
age = value;
}
public String getUsername() { return username; }
public String getEmail() { return email; }
public int getAge() { return age; }
Run Code Online (Sandbox Code Playgroud)
}
而jsp是
<jsp:useBean id="user" class="user.UserData" scope="session"/>
<HTML>
<BODY>
You entered<BR>
Name: <%= user.getUsername() %><BR>
Email: <%= user.getEmail() %><BR>
Age: <%= user.getAge() %><BR>
</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)
Jig*_*shi 12
Bean获得了Java"一次编写,随处运行"范例的所有好处.可以控制公开给应用程序构建器工具的Bean的属性,事件和方法.
Bean可以设计为在不同的区域中正确运行,这使其在全球市场中有用.
可以提供辅助软件来帮助人配置Bean.只有在设置该组件的设计时参数时才需要该软件.它不需要包含在运行时环境中.Bean的配置设置可以保存在持久存储中,并在以后恢复.
Bean可以注册以从其他对象接收事件,并且可以生成发送到其他对象的事件.
自从十多年前taglibs(如JSTL)和EL(表达语言,这些东西)诞生以来,我们非常不鼓励使用scriptlet(那些<% %>东西).scriptlet的主要缺点是:${}
可重用性:您无法重用scriptlet.
可替换性:您不能使scriptlet抽象化.
OO-ability:你不能利用继承/组合.
可调试性:如果scriptlet中途抛出异常,你得到的只是一个空白页面.
可测试性:scriptlet不是可单元测试的.
可维护性:每个saldo需要更多时间来维护混杂/混乱/重复的代码逻辑.
JavaBeans的主要原因是可重用性.JavaBeans可用于JSP,Servlet和其他Java技术.
它是一个简单的可序列化对象,用于将许多对象封装为一个.也就是说,我们可以发送一个完全定义的bean,以便通过线路单独发送每个属性.