小编BSe*_*zin的帖子

何时在无状态会话bean上使用有状态会话bean?

有状态会话bean定义如下:

有状态会话Bean对象的状态由其实例变量的值组成.在有状态会话bean中,实例变量表示唯一的客户端bean会话的状态.因为客户端与其bean交互("会话"),所以这种状态通常称为会话状态.

无状态会话bean定义如下:

无状态会话Bean无状态会话Bean不与客户端保持会话状态.当客户端调用无状态bean的方法时,bean的实例变量可能包含特定于该客户端的状态,但仅限于调用期间.方法完成后,不应保留特定于客户端的状态.但是,客户端可以更改池化无状态bean中的实例变量的状态,并且此状态将保留到池化无状态bean的下一次调用.除了在方法调用期间,无状态bean的所有实例都是等效的,允许EJB容器将实例分配给任何客户端.也就是说,无状态会话bean的状态应该适用于所有客户端.

使用无状态会话bean而不是有状态会话bean的优点如下:

由于无状态会话bean可以支持多个客户端,因此它们可以为需要大量客户端的应用程序提供更好的可伸缩性.通常,应用程序比有状态会话bean需要更少的无状态会话Bean,以支持相同数量的客户端.

所以我想到的问题是,何时应该使用有状态会话bean?为了我对这个问题的天真理解,我应该坚持使用无状态会话bean.

应该使用有状态会话bean的候选者是什么?有什么好例子吗?

会话Bean

java spring ejb stateless-session-bean stateful-session-bean

78
推荐指数
2
解决办法
7万
查看次数

错误:在maven编译期间编码UTF8的不可映射字符

我正在使用maven编译一个包,它表示构建失败并出现以下编译错误:

SpanishTest.java [31,81]用于编码UTF8的不可映射的字符

我在线搜索,对于很多人来说,将源代码从UTF-8改为ISO-8859-1似乎可以工作,但我仍然得到相同的编译错误.我使用的是32位Ubuntu.以下是该标记在我的pom.xml中的显示方式

<project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>
Run Code Online (Sandbox Code Playgroud)

即使我将<project.build.outputEncoding>标签更改为ISO-8859-1,我仍然会收到错误.可能是因为java版本?我的系统上安装了sun-sun和openjdk.

任何人都可以让我知道该怎么做.

谢谢

java character-encoding maven

55
推荐指数
5
解决办法
12万
查看次数

Wicket Form中可重复使用的DropDownChoice

在我的项目中,我有50多个表单,它们大多是彼此相似的并使用相同的DropDownChoice组件.我可以创建单独的Panel,我定义我的DropDownChoice,然后我将以Panel另一种形式使用它吗?否则,我如何实现这种情况?

例如

form1有下一个字段:
name(TextField)
surname(TextField)
city(DropDownChoice)

form2有下一个字段:
Code(TextField)
Amount(TextField)
city(再次相同DropDownChoice)

我想为这种方法做出漂亮的解决方案.

forms wicket panel dropdownchoice wicket-6

4
推荐指数
1
解决办法
114
查看次数