Java Bean的用法

时间:2013-03-11 11:29:27

标签: java swing jsp javabeans pojo

我是java新手,所以我问这个,虽然这里的事情可能很明显。什么是Java Beans的真实生活用途。它们被定义为可重用的软件组件,但我只能找到在Jsp和Swing编程中使用它们作为POJO的示例。是否有效的方案来定义bean将执行一些复杂的计算,用户将bean“属性”设置为该计算的参数?他们可以通过它们的属性暴露其他不是bean的类型,原始类型吗?

2 个答案:

答案 0 :(得分:1)

实际上,JavaBeans是遵循“属性”访问方法(getter和setter)的命名约定的常规Java类。我认为你理解正确。

以下是更详细的答案:What is Java Bean

答案 1 :(得分:1)

通常Beans只保留信息。一些基本计算就像这样:

private int age=17;
public int getAge(){return age;};
public boolean isOver18(){return getAge() > 18;};
public boolean isNotOver18(){return getAge() < 19;};
public boolean isSurfable(){
    int minAge = beachService.findBeachBean().getMinimumAge();
    int maxAge = beachService.findBeachBean().getMinimumAge();
    boolean hasPhysicalProblems = humanService.findAnatomyBean().hasLegs();
    if(!isSurfboard()){
        hasPhysicalProblems = true;
    }
    return isOver18() && getAge() < maxAge && getAge() >= minAge && hasPhysicalProblems;
}

(顺便说一下。因为模拟和继承而在isOver18()中使用getAge()非常重要)

请参阅,如果您停止了网络服务器并且您已登录用户。会话钝化将轻松地将loginbean保存到服务器的HDD以获取特定的sessionid(8AHE765F7655F765),并在服务器重新启动后重新激活Bean,并且会话尝试从HDD重新激活此loginbean。所以bean应始终特定于State或Action。