J2EE�̃x�X�g�v���N�e�B�X�E�g�b�v10�i+2�j�i��ҁj

Kyle Brown, Senior Technical Staff Member, IBM Software Services for WebSphere
Keys Botzum, Senior Consulting I/T Specialist, IBM Software Services for WebSphere
Ruth Willenborg, Senior Manager, IBM WebSphere Performance
2004/8/7


��ȓ��e
6.EJB�R���|�[�l���g�𗘗p����Ƃ��́ASession Facade����Ɏg������
7.�X�e�[�g�t��Session Bean�ł͂Ȃ��X�e�[�g���XSession Bean���g������
8.CMT�iContainer Managed Transaction�j���g������
9.�v���[���e�[�V������i�Ƃ��Ă�JSP���ŗD��Ɏg������
10.HttpSession�ɂ̓r�W�l�X�E���W�b�N�ɕK�v�ȍŏ����̃f�[�^������ۊǂ��邱��
11.WebSphere�ł́A�_�C�i�~�b�N�E�L���b�V���O�@�\���I���ɂ��A�T�[�u���b�g�E�L���b�V���O�E���J�j�Y���𗘗p���邱��
12.O/R�}�b�s���O�̎�i�Ƃ��āA�܂���CMP Entity Bean�𗘗p���A�v���O���}�[�̐��Y�������߂邱��


�{�L���́AIBM developerWorks����A�b�g�}�[�N�E�A�C�e�B�������𓾂Ė|��A�]�ڂ������̂ł��B

�@J2EE�̃x�X�g�v���N�e�B�X�ɂ‚��ẮA�ߋ�5�N�ɂ킽�葽���̕��͂��L����Ă��Ă���BJ2EE�A�v���P�[�V�����̊J���m�E�n�E����������L���͐��������\����Ă���A�o�ł��ꂽ���Ђ������炭10�𒴂��邾�낤�BJ2EE�Ɋւ����񌹂͂��܂�ɂ��������߁A�݂��ɖ���������j�������Ă��邱�Ƃ�����B���ۂ̂Ƃ���A���́g���̖��H�h�������AJ2EE�����ɂ������Q�ƂȂ��Ă����̂ł���B

�@�M�҂�́A���̖��H�ł��܂悦��ǎ҂Ɍ������ȒP�ȃK�C�h�Ƃ��āAJ2EE�ɂ�����ł��d�v�ȃx�X�g�v���N�e�B�X�̃g�b�v10���X�g���쐬�����B�������AWeb�T�[�r�X��J2EE�̈ꕔ���Ƃ��Ċ܂߂��Ƃ���A���X�g�̍��ڂ�10�𒴂��Ă��܂����B�����ł����ł́A�����𑱂���J2EE�Ɍh�ӂ�\���A�g�b�v10�̑���Ɂu�g�b�v12���X�g�v�Ƃ��邱�Ƃɂ������B

�@��҂ł̓g�b�v6����12�܂ł��Љ�悤(����1����5�܂ł́u�O���v���Q�Ɓj�B

  1. �K��MVC���g������
  2. ���ׂẴ��C���Ƀe�X�g�c�[����p�ӂ��A���j�b�g�e�X�g�����������邱��
  3. �A�v���P�[�V�����E�T�[�o�̎d�l�ł͂Ȃ��W���d�l�Ɋ�Â��J�����邱��
  4. J2EE�Z�L�����e�B�̗��p�𓖏����猟�����邱��
  5. �����ł���͈͂Ńr���h���邱��
  6. EJB�R���|�[�l���g�𗘗p����Ƃ��́ASession Facade����Ɏg������
  7. �X�e�[�g�t��Session Bean�ł͂Ȃ��X�e�[�g���XSession Bean���g������
  8. CMT�iContainer Managed Transaction�j���g������
  9. �v���[���e�[�V������i�Ƃ��Ă�JSP���ŗD��Ɏg������
  10. HttpSession�ɂ̓r�W�l�X�E���W�b�N�ɕK�v�ȍŏ����̃f�[�^������ۊǂ��邱��
  11. WebSphere�ł́A�_�C�i�~�b�N�E�L���b�V���O�@�\���I���ɂ��A�T�[�u���b�g�E�L���b�V���O�E���J�j�Y���𗘗p���邱��
  12. O/R�}�b�s���O�̎�i�Ƃ��āA�܂���CMP Entity Bean�𗘗p���A�v���O���}�[�̐��Y�������߂邱��
6. EJB�R���|�[�l���g�𗘗p����Ƃ��́ASession Facade����Ɏg������

�@�ǂ̂悤�Ȏ�ނ̃N���C�A���g�ɑ΂��Ă��AEntity Bean�𒼐ڌ��J���Ă͂Ȃ�Ȃ��B�܂��AEntity Bean�ł̓��[�J���E�C���^�[�t�F�C�X�̂ݗp���邱�ƁB

�@Session Facade�p�^�[���́AEJB�R���|�[�l���g�̗��p�ɍۂ��āA�ł��L���蒅���Ă���x�X�g�v���N�e�B�X��1�‚ł���B���̂Ƃ���A���̃p�^�[���́ACORBA��EJB�ADCOM�Ȃǂ̂����镪�U�e�N�m���W�[����ŗp�����Ă��镁�ՓI�ȃ��[����\�������̂��B�‚܂�A�A�v���P�[�V�����ɂ�����u�l�b�g���[�N�̉��f�v���Ȃ�ׂ����炷�Ƃ��������ł���B����ɂ��A�ׂ��ȃf�[�^���l�b�g���[�N������x���s���������Ƃɂ��I�[�o�[�w�b�h�̔�����h�~�ł���B

�@Session Facade����������ɂ́A�����ׂ̍��ȃ��W�b�N�������傫�ȃt�@�T�[�h�E�I�u�W�F�N�g���쐬���A1��̃��\�b�h�Ăяo�������Ŏ�v�ȃr�W�l�X�E���W�b�N�����s�ł���悤�݌v����B���̌��ʁA�l�b�g���[�N�̃I�[�o�[�w�b�h���}������d�g�݂��B�����EJB�ł́A�r�W�l�X�E���W�b�N�S�̂��܂�1�‚̃g�����U�N�V�������\���ł��邽�߁A�f�[�^�x�[�X�E�A�N�Z�X�̉񐔂�啝�Ɍ��炷���Ƃ��ł���B

�@�Ȃ��ASession Facade�ɂ‚��ẮAKyle Brown���́uEnterprise Java Programming with IBM WebSphere, 2nd Edition�v�iAddison-Wesley�A2003�j�ɂďڂ�����������Ă���B�܂��A���p�^�[���̊�{�`������������ЂƂ��ẮADeepak Alur����ɂ��uCore J2EE Patterns, 2nd Edition�v�iAddison-Wesley�A2003�j������B����ɂق��̕����Ƃ��āAEJB�𒴂������ՓI�ȃp�^�[���Ƃ��ĉ�����Ă���Martin Fowler���́uPatterns of Enterprise Application Architecture�v�iAddison-Wesley�A2002�j��AFloyd Marinescu���́uEJB Design Patterns�v�iJohn Wiley & Sons�A2002�j������B

�@���āAEJB 2.0�d�l�ł́A����JVM���œ��삷��EJB�R���|�[�l���g�Ԃ̃A�N�Z�X�E�p�t�H�[�}���X���œK�������i�Ƃ��āu���[�J���E�C���^�[�t�F�C�X�v���V���ɓ������ꂽ�B���̃��[�J���E�C���^�[�t�F�C�X�𗘗p����ɂ́A���C���^�[�t�F�C�X���Ăяo���悤�ɃA�v���P�[�V�����E�R�[�h�����������Ȃ���΂Ȃ�Ȃ��B�܂��A��ɂȂ���EJB�R���|�[�l���g���قȂ�JVM�ɕ��U�����邱�ƂɂȂ�΁A�ĂуR�[�h�����ɖ߂��K�v��������B���̂��߁ASession Facade�i�ʏ�̓X�e�[�g���XSession Bean�j�́A�]���ǂ��胊���[�g�E�C���^�[�t�F�C�X��p���Đ݌v���Ă������Ƃ����߂�B����A���̔w��œ��삷��Entity Bean�́ASession Facade�Ɠ���JVM���œ��삷�邽�߁A���[�J���E�C���^�[�t�F�C�X�𗘗p���ׂ��ł���B

�@�������ۂ̂Ƃ���A���Ȃ��Ƃ�Web�A�v���P�[�V�����ł́AEJB�N���C�A���g��EJB�R���|�[�l���g������JVM���œ��삷��P�[�X�������B���������Ƃ���Session Facade�ɂ‚��Ă����[�J���E�C���^�[�t�F�C�X�𓱓����A�p�t�H�[�}���X���œK�����ׂ����낤�B�܂��AWebSphere Application Server�iWAS�j�́uNo Local Copies�i���[�J���R�s�[�֎~�j�v�@�\�̂悤�ȃA�v���P�[�V�����E�T�[�o�̍œK���ݒ�𗘗p����΁A���[�J���E�C���^�[�t�F�C�X���g�p�����Ƃ�����Ɠ����̌��ʂ�������B������̕��@�ɂ���A���\�b�h�Ăяo���̃��J�j�Y�����I�u�W�F�N�g�̒l�n���ipass by value�j����Q�Ɠn���ipass by reference�j�ɕω����邱�ƂɋC��t���Ăق����B���̈Ⴂ�͖��ȃo�O�̌����Ƃ��Ȃ肩�˂Ȃ��̂ŁA���[�J���E�C���^�[�t�F�C�X�̓����ɂ‚��Ă̓v���W�F�N�g�̓������猟�����Ă����ׂ����낤�B

�@����ASession Facade�Ƀ����[�g�E�C���^�[�t�F�C�X��p���邱�Ƃ̃����b�g�́AJ2EE 1.4������Web�T�[�r�X�Ƃ���Session Facade�����J�ł��邱�Ƃ��BJ2EE 1.4��Web�T�[�r�X�E�f�v���C�����g�ɂ‚��ċK�肷��JSR 109�ł́AEJB Web�T�[�r�X��EJB�R���|�[�l���g�Ԃ̃C���^�[�t�F�C�X�Ƃ��āA�X�e�[�g���XSession Bean�̃����[�g�E�C���^�[�t�F�C�X���g�p���邱�Ƃ��߂Ă���BWeb�T�[�r�X���T�|�[�g����΁A��葽���̎�ނ̃N���C�A���g����Session Facade�̃r�W�l�X�E���W�b�N�𗘗p�ł���悤�ɂȂ邾�낤�B

7. �X�e�[�g�t��Session Bean�ł͂Ȃ��X�e�[�g���XSession Bean���g������

�@�X�e�[�g���XSession Bean��p���邱�ƂŁA�V�X�e���̃t�F�C���I�[�o�[�����e�ՂɎ����ł���B�X�̃��[�U�[�̏�Ԃ�ێ�����ɂ�HttpSession�𗘗p���ׂ��B

�@�M�҂�ɂƂ��āA�X�e�[�g�t��Session Bean�͂��łɉߋ��̋Z�p�ł���B��Bean�́A������CORBA�I�u�W�F�N�g�Ƃ܂������������J�j�Y���œ��삷��B���Ȃ킿�A1��̃T�[�o�ɔ����A�Ō�܂ł��̃T�[�o�Ɉˑ���������I�u�W�F�N�g�ł���B�����T�[�o���_�E������΁A�N���C�A���g�ɂƂ��ĕs�K�Ȃ��ƂɁA�X�e�[�g�t��Session Bean���ێ����Ă������e�͎����Ă��܂��B

�@J2EE�A�v���P�[�V�����E�T�[�o�ɔ����X�e�[�g�t��Session Bean�̃t�F�C���I�[�o�[�@�\���g���΁A�T�[�o�̃_�E���ɑ΂��Ă�����x�̑΍�͉”\�ł���B�Ƃ͂����A�X�e�[�g���XSession Bean�ɔ�ׂ�΁A���̃X�P�[���r���e�B�̒Ⴓ�͔ۂ߂Ȃ��B�Ⴆ��WAS�ł́A�X�e�[�g���XSession Bean�ɑ΂��郊�N�G�X�g���A�N���X�^���\�����邷�ׂẴT�[�o�Ɍ����ĕ��ו��U�����B�ΏƓI�ɁA�X�e�[�g�t��Session Bean�ւ̃��N�G�X�g�͕��ו��U�ł��Ȃ��B���̂��߁A�T�[�o�Ԃ̕��ׂɂ΂�‚�������������̂ł���B
�@���ȕ��U�V�X�e�����\�z���邽�߂̌����́A�ł������X�e�[�g���X�Ȑ݌v�Ƃ��邱�Ƃ��B�������X�e�[�g�t��Session Bean�𗘗p����ɂ́A�A�v���P�[�V�����E�T�[�o��ɃZ�b�V��������ێ����Ȃ��Ă͂Ȃ�Ȃ��B���̌��ʃV�X�e�������G�ɂȂ�A�g���u�����̑Ή����ʓ|�Ȃ��̂ƂȂ��Ă��܂��B

�@�����������R����A�唼�̃A�v���P�[�V�����ɂ‚��ăX�e�[�g���XSession Bean��I�����邱�Ƃ������߂���B�r�W�l�X�E���W�b�N�̏����ɕK�v�ȃ��[�U�[���Ƃ̃Z�b�V�������́AHttpSession�Ȃǂ̋@�\�ɂ��EJB�̊O���ɕێ����AEJB�ւ̃��\�b�h�Ăяo�����Ɉ����Ƃ��ēn���΂悢�B�������́AEJB�̃g�����U�N�V�����̎��s���ɁAEntity Bean�Ȃǂ�p���ăo�b�N�G���h�̃f�[�^�x�[�X����ǂݍ��ޕ��@������B

�@�܂��A�A�v���P�[�V�����E�T�[�o�̃�������ɃZ�b�V�������̃L���b�V����K�X�ۑ����邱�Ƃ��”\���B�������A���U�V�X�e���ł̓L���b�V���Ԃ̐������ɂ܂‚���肪�N���蓾�邱�Ƃ����ӂ��ׂ����낤�B���������L���b�V���̃��J�j�Y���́A�f�[�^�����[�h�I�����[�̂Ƃ��ɍł����͂𔭊�����B

�@���ǂ̂Ƃ���A�v���W�F�N�g�̓�������X�P�[���r���e�B�ɂ‚��Čv��𗧂ĂĂ������Ƃ��d�v�ł���B�V�X�e���̐݌v���������A�T�[�o��2��ȏ�ɑ��₵�Ă����Ȃ����삷�邩�ǂ����`�F�b�N����B���̃��[���́A�A�v���P�[�V�����̃R�[�h�Ɍ��炸�AMBeans��Ǘ��p�C���^�[�t�F�C�X�̐݌v�ɂ����Ă͂܂�B

�@�����āA�X�e�[�g�t���Ȑ݌v������邱�ƁB�����J2EE�̐݌v�̊�{�����ł����āAIBM���i�ɌŗL�̐����ɗR������킯�ł͂Ȃ��B�Ⴆ��Tyler Jewell���̋L���uStateful Session Beans: Beasts of Burden�v�iOnJava.com�j�ł́A�M�҂�̎咣�Ɠ��l�ɁA�X�e�[�g�t��Session Bean�ւ̌������ӌ����Љ��Ă���B

1/3

�@INDEX

Eclipse�̃J�X�^�}�C�Y�̊��߁i��ҁj
Page1
6.EJB�R���|�[�l���g�𗘗p����Ƃ��́ASession Facade����Ɏg������
7.�X�e�[�g�t��Session Bean�ł͂Ȃ��X�e�[�g���XSession Bean���g������
  Page2
8.CMT�iContainer Managed Transaction�j���g������
9.�v���[���e�[�V������i�Ƃ��Ă�JSP���ŗD��Ɏg������
�@ Page3
10.HttpSession�ɂ̓r�W�l�X�E���W�b�N�ɕK�v�ȍŏ����̃f�[�^������ۊǂ��邱��
11.WebSphere�ł́A�_�C�i�~�b�N�E�L���b�V���O�@�\���I���ɂ��A�T�[�u���b�g�E�L���b�V���O�E���J�j�Y���𗘗p���邱��
12.O/R�}�b�s���O�̎�i�Ƃ��āA�܂���CMP Entity Bean�𗘗p���A�v���O���}�[�̐��Y�������߂邱��

Java Solution�S�L���ꗗ





Java Agile �t�H�[���� �V���L��
��IT���[���}�K�W���@�V������X�^�b�t�̃R���������[���œ͂��܂��i�����j

���ڂ̃e�[�}

Java Agile �L�������L���O

�{�� ����