ejb-jar.xml
파일에서 구성 값을 읽는 ConfigParameter
SLSB가 있습니다.ejb-jar.xml에서 값을 읽는 @Singleton bean
이 클래스에는 전용 필드 만 있고 각 필드에는 해당하는 getter 메서드가 있습니다. 내 응용 프로그램에서는 구성 값을 읽으려는 ConfigParameter
의 인스턴스를 사용하는 다른 많은 EJB가 있습니다.
ConfigParameter
을 @Singleton
으로 만드는 것이 좋습니다. 상태는 전체 응용 프로그램에서 공유되므로 ConfigParameter
을 @Singleton
으로 만드는 것이 좋습니다.
그러나 ejb-jar.xml
에서 session-type
은 Stateful
또는 Stateless
으로 설정할 수 있습니다. 이 파일은 다음과 같습니다
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:ejb="http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" version="3.0">
<enterprise-beans>
<session>
<ejb-name>ConfigParameter</ejb-name>
<ejb-class>myapp.util.ConfigParameter</ejb-class>
<session-type>Stateless</session-type> <!-- make this a Singleton -->
<env-entry>
<env-entry-name>adminRoleName</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>admin</env-entry-value>
</env-entry>
</session>
</enterprise-beans>
</ejb-jar>
내 질문
은 다음과 같습니다- 가이 빈 싱글을 만들 수있는 좋은 생각인가?
- 그렇다면 어떻게해야합니까?
- 이해하기 :
session-type
을 싱글 톤으로 설정할 수없는 이유는 무엇입니까?
'ConfigParameter'는 모두 환경 항목에서 검색되는 기본 필드 및/또는 문자열 필드만을 포함하는 간단한 POJO입니까? – shelley
''COnfigParameter'는'@ Stateless'로 주석 처리 된 POJO였습니다. 필드 값은'@Resource (name = "...")를 통해 주입되었습니다. 나는 Piotr Nowickis의 대답을 따랐고 지금은 싱글 톤을 가지고있다 – hage