��8��@J2EE�̃g�����U�N�V��������


 J2EE�̃g�����U�N�V����

�@��������A���悢��J2EE�̃g�����U�N�V�����̉���ɓ���܂��BJ2EE�ɂ́A�v���O���}�[���g�����U�N�V�������ڍׂ܂ňӎ����Ȃ��Ă��悢�������s���Ă��܂��B

�@

 J2EE�̃g�����U�N�V���������̓���

�@�v���O���}�[���u��O���v���A���̈ӎ��ƃX�L�����ω����A�����ɕ��U�g�����U�N�V�����̍��x�ȏ������A�l�b�g���[�N�E�A�v���P�[�V�����ł��K�v�ƂȂ�P�[�X�����蓾�邱�Ƃ������ڂ������Ă��܂������A����ɂ͖󂪂���܂��BJ2EE�̃A�v���[�`�́A�����������ɑ΂���A�ɂ߂ċ����[���A���Œ����I�ȉ𓚂�񋟂��Ă��邩��ł��BJ2EE�̃g�����U�N�V���������̍ő�̓�����1�‚́A�v���O���}�[���ʓ|�ȃg�����U�N�V�����̃R�[�h�������Ȃ��Ă��A�R���e�i�������I�Ƀg�����U�N�V�������������Ă���邱�Ƃɂ���܂��B

�@J2EE�ł́A�v���O���}�[���g�����U�N�V���������ɐ��ʂ��āA�������g�����U�N�V���������̃R�[�h�𐶐����邱�Ƃ����҂���̂���߂āA�}�V����������J�o�[����悤�ɂ����̂��ƍl���Ă�������������܂���B�v���O���}�[���g�����U�N�V������m��Ȃ��Ă��A�g�����U�N�V������J2EE����������Ɩʓ|������Ƃ����킯�ł��B�������������́A�����Ӓn���Ɍ����邩������܂��񂪕K�����������ł͂���܂���B��ʗʂ������ĎԂ̃X�s�[�h����������H�̌����_��24���Ԃ̌�ʐ������A�l�Ԃ������M���@��ݒu���������悢�ƍl����̂́A�K�������l�ԕs�M�Ƃ͂����܂���B�܂��āA���̌�ʐ��������ڂ‚��Ȃ��q�ǂ�������Ă�����A�h���C�o�͓{�肾���ł��傤�B

�@J2EE�ł́A�G���e�B�e�B�E�r�[���ł��Z�b�V�����E�r�[���ł��A����Container-Managed Transactions�̋@�\���g�����Ƃ��ł��܂��B���m�ɂ����΁A�f�[�^�x�[�X�Ƃ̌��т‚��������G���e�B�e�B�E�r�[���ł́A���̃R���e�i�Ǘ��̃g�����U�N�V�����������p���邱�Ƃ͂ł��܂���B�ʂ̂�����������΁A�G���e�B�e�B�E�r�[�����g������A�g�����U�N�V�����́A���ׂăR���e�i���ʓ|�����邱�Ƃ��ł���̂ŁA�g�����U�N�V�����������Ĉӎ�����K�v�͂���܂���B����́AJ2EE�̔��ɑ傫�ȓ����ł��B

�@�����ł́A�G���e�B�e�B�E�r�[���ŁA�f�[�^�̉i������ۏ؂���Container-ManagedPersistent�iCMP)���AEJB1.0�ł́A�I�v�V�����ł��������Ƃ��v���o���Ă��������B�f�[�^�x�[�X�Ƃ̓��������������悤�Ƃ���ACMP2.0�́AEJB2.0�̒��S�I�ȖڕW�̈�‚��Ǝv���܂����A�r�[���ƃR���e�i�Ƃ���J2EE�̃A�C�f�A�́A���ɑ�����������A�g�����U�N�V�����ւ̑Ή����AJ2EE�V�X�e���̑傫�ȖڕW�Ƃ��Ĉӎ�����A�������炻�̎������������ɍs��ꂽ�̂́A�m�����Ǝv���܂��B

�@

 ���\�b�h�̋��ݍ��݂�Container-Managed Transactions

�@�f�t�H���g��Container-Managed Transactions�ł́A�R���e�i�́A�r�[���̃��\�b�h���n�܂钼�O�Ƀg�����U�N�V�������J�n���A���\�b�h���I��������g�����U�N�V�������R�~�b�g���܂��B�����ł́A����܂ʼn��x�����Ă����A���̂悤�ȁA�R���e�i�ɂ�郁�\�b�h�̏��������ƃ��\�b�h�̋��ݍ��݂��A���܂��g���Ă��܂��B

�@��6���ŁA���̂悤�ȗ���Љ�܂����B

public String sayHello() throws RemoteException { // Remote���\�b�h�ł���B
  ............
  HelloEJB helloejb = (HelloEJB) ............ ; // ����EJB�N���X�̃C���X�^���X
  ............
  container.preInvoke(...); // ���\�b�h�Ăяo���̑O����
  String s = helloejb.sayHello(); // ����EJB�N���X�̃��\�b�h�Ăяo��
  container.postInvoke(...); // ���\�b�h�Ăяo���̌㏈��
  ............
  return s;
}

�@���̂悤�ɁAEJB�v���O���}�[����`�����AHelloEJB�N���X��sayHello���\�b�h�́A�R���e�i�̒��ł́A��̃��X�g�̂悤�ɁA�����́A�������Ȃ���Remote��sayHello���\�b�h�ɏ����������A���̑O��́ApreInvoke���\�b�h��postInvoke���\�b�h�ɂ���ċ��ݍ��܂�܂��B

�@�\�z���‚��Ǝv���܂����AJ2EE�ł́A����preInvoke�̒��ŁA�g�����U�N�V�����̏������s��preInvokeTx���\�b�h���Ăяo����ApostInvoke�̒��ŁA�g�����U�N�V�����̌㏈�����s��postInvokeTx���\�b�h���Ăяo����܂��B

�@

 Deploy���ɁA�g�����U�N�V�����̑�����錾����

�@���̂悤�ɁAContainer-Managed Transactions�́A1��1�‚̃��\�b�h�Ƀg�����U�N�V��������������Ƃ������Ƃ���{�ɂȂ��Ă��܂��B�������A���̏����̏����́A�r�[���̔z�u���ɁA���ꂼ��̃��\�b�h�ɂ‚��ăg�����U�N�V�����������w�肷�邱�ƂŁA�ׂ��ȃR���g���[�����”\�ł��B���1�̓G���e�B�e�B�E�r�[���́A���2�́A�Z�b�V�����E�r�[����Container-Managed Transactions�̐ݒ��ʂł��B1��1�‚̃��\�b�h�ɑ΂��āA�g�����U�N�V�����̑������ݒ肳��Ă���̂�������Ǝv���܂��B�f�t�H���g�ł́A�gRequired�h�Ƃ����������I������Ă��܂��B

���1�@

���2�@

�@

 �g�����U�N�V������scope�ƃg�����U�N�V��������

�@�����Ă��̏ꍇ�ɂ́A���́gRequired�h�ŏ\�����Ǝv���܂����AJ2EE�ł́A�g�����U�N�V�����ɂ‚��čׂ��ȑ�������`����Ă��܂��B

�@�ŏ��Ɋm�F�������̂́A�g�����U�N�V�����ɂ́A�X�R�[�v������Ƃ������Ƃł��B�Ⴆ�΁A�r�[��A�Ńg�����U�N�V�������J�n����A���̒��Ń��\�b�hA���Ăяo���ꂽ�Ƃ��܂��B���̂Ƃ��A����Ƀ��\�b�hA�̒��Ńr�[��B�̃��\�b�hB���Ăяo���ꂽ�Ƃ��܂��傤�B���\�b�hB�̃g�����U�N�V�����́A���\�b�hA�̃g�����U�N�V�����͈̔͂̒��ɂ���̂ł��傤���H ����Ƃ��A���\�b�hB�ɂ́A�V�����g�����U�N�V�������K�v�Ȃ̂ł��傤���H���́A���ꂼ��̃��\�b�h�ւ̃g�����U�N�V���������̐ݒ�ɂ���āA�g�����U�N�V�����͈̔͂̓R���g���[�����邱�Ƃ��”\�ł��B

�@J2EE�̃g�����U�N�V���������ɂ́A����6��ނ�����܂��B

  • Required
  • RequireNew
  • Mandatory
  • NotSupported
  • Supports
  • Never

�@���̃y�[�W����A���ꂼ��̃g�����U�N�V���������̓��������Ă����܂��傤�B�ŏ��̂����‚��ɂ‚��ẮA�Ή�����R�[�h�̈ꕔ�����p���Ă����܂����B

3/5

J2EE�̊�b�i��8��j
�@ �R���s���[�e�B���O�ɂ�����g�����U�N�V�����̕K�v��
�@ �g�����U�N�V�����̊�b��m��
J2EE�̃g�����U�N�V����
�@ �g�����U�N�V���������̓���
�@ �g�����U�N�V��������

�A�ړ��e
J2EE�̊�b
�@ ��1��@Java Pet Store�ŁAJ2EE��̌�����(1)
�@ ��2��@Java Pet Store�ŁAJ2EE��̌�����(2)
�@

��3��@J2EE�A�v���P�[�V�����Ɣz�u�ideployment�j

�@ ��4��@J2EE�A�v���P�[�V�������\������R���|�[�l���g
�@ ��5��@�f�[�^�x�[�X�̃u���E�U�����
�@ ��6��@EJB�ɂ�����R���e�i�ƃR���|�[�l���g
�@ ��7��@J2EE�̃Z�L�����e�B�̃L�z����m��
��8��@J2EE�̃g�����U�N�V��������


�A�ڋL���ꗗ




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

���ڂ̃e�[�}

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

�{�� ����