2009-08-28 2 views
2

내 응용 프로그램에 Stateless EJB가 있습니다. 이제 Stateful을 통해 DB 작업을 수행해야합니다. 이 Stateless EJB가 DB 유틸리티에 접근하여 상태 연결을 열 수 있습니까? 이로 인해 설계/성능 문제가 발생합니까?Stateless 연결과 Stateful 연결 결합

+0

응용 프로그램이 DB에 액세스한다고해서 당신이 stateful bean이 필요하다는 것을 의미하지는 않습니다. –

답변

0

연결 상태가 유지됩니까?

  1. 열기 클라이언트에 반환 할 때 서버에 호출 사이에 영업을 자동으로 커밋되지 않습니다 상태 연결 :

는 의미합니까?
  • 세션 컨텍스트에서 사용할 수있는 보안 자격 증명을 사용하여 연결을 열어 사용자의 데이터베이스 사용자/암호로 연결을 설정 하시겠습니까? StatelessSessionBean (SLSB)의 앞에 StatefulSessionBean (SFSB)를 사용하여 수행 할 수있을 수도 있지만 첫 번째 경우에

  • 는, 예를 들어 원격 사이의 상호 작용을 수집하는 명령 패턴을 사용하여 (아마 훨씬 더 나은 방법이있다 커밋 할 준비가 될 때까지 호출).

    두 번째 경우 DataSource 조회는 사용자 이름과 비밀번호를 지속적으로 제공하여 동일한 연결을 수신해야 할 필요가 있지만 DataSource.lookup (username, password)이 도움이 될 수 있습니다.

    이로 인해 디자인/성능이 저하됩니까?

    두 경우 모두 기본 보안 오류 (일반 텍스트로 비밀번호 전송과 같은)를하지 않도록주의해야합니다. 필자는이 두 가지 방법 중 하나를 사용한 적이 없으며 둘 중 하나를 포함하는 솔루션을 재 설계하려고합니다.

    저는 보안 및 유지 관리중인 취약성과 같은 기타 디자인 문제보다 성능 문제에 대해 덜 우려 할 것입니다.

    관련 문제