Õ¾ÄÚËÑË÷: ÇëÊäÈëËÑË÷¹Ø¼ü´Ê

µ±Ç°Ò³Ãæ: ¿ª·¢×ÊÁÏÊ×Ò³ ¡ú Java רÌâ ¡ú EJBÊý¾ÝÑéÖ¤³öÏÖÔÚʲôµØ·½×îºÏÊÊ

EJBÊý¾ÝÑéÖ¤³öÏÖÔÚʲôµØ·½×îºÏÊÊ

ÕªÒª: ÎÒÃǽ«ÌÖÂÛÊý¾ÝÑéÖ¤Âß¼­Ó¦¸Ã³öÏÖÔÚ EJB Ó¦ÓóÌÐò´úÂëµÄʲôλÖ㬶ø²»ÊÇרעÓÚÑéÖ¤¹ý³Ì
¡¡¡¡ÎÒÃǽ«ÌÖÂÛÊý¾ÝÑéÖ¤Âß¼­Ó¦¸Ã³öÏÖÔÚ EJB Ó¦ÓóÌÐò´úÂëµÄʲôλÖ㬶ø²»ÊÇרעÓÚÑéÖ¤¹ý³Ì£¨Java ¼¼ÊõרÇøµÄÆäËüµØ·½¶Ô´Ë½øÐÐÁ˺ܺõÄÌÖÂÛ£©¡£ÎÒÃÇÁ˽âÁ˺ܶà×é³É»ùÓÚ EJB ¼¼ÊõµÄÓ¦ÓóÌÐòµÄ×é¼þ£ºµ×²ã»á»° bean ¼°ÆäÒµÎñ½Ó¿Ú£»ÔÚʵÌå bean ¼°Æä¿Í»§»úÖ®¼ä´«ËÍÊý¾ÝµÄÖµ¶ÔÏóÒÔ¼°µ£ÈÎ Web ²ãºÍÒµÎñ²ãÖ®¼äµÄ±£»¤²ãµÄ¸÷ÖÖίÅÉÀà¡£ÑéÖ¤Âß¼­Ê®·ÖÊʺÏÕâЩ×é¼þÖеÄÈκÎÒ»¸ö¡£Êµ¼ÊÉÏ£¬Äú¿ÉÒÔÔÚ¶à¸ö×é¼þÖзÅÖÃÑéÖ¤Âß¼­£¬ÔÚÕû¸öÓ¦ÓóÌÐòÖзֲã´ÎµØ·ÅÖÃËü£¨¾¡¹ÜÕâÑù×öÊDz»¿ÉÈ¡µÄ£©¡£Òò´Ë£¬ÎÒÃÇÔÚ´Ë´¦Ìá³öµÄÎÊÌâÊÇ£ºÔÚ EJB Ó¦ÓóÌÐòµÄʲôλÖ÷ÅÖÃÑéÖ¤´úÂë×îÓÐÀû£¿

<iframe width="360" height="300" align="right"scrolling="No" frameborder="0" marginheight="0" marginwidth="0" SRC="http://images.chinabyte.com/adjs/iframe-pip/y-software-pip.html"></iframe>¡¡¡¡Êý¾ÝÑéÖ¤µÄÀàÐÍ

¡¡¡¡ÒªÈ·¶¨½«ÑéÖ¤´úÂë·ÅÖÃÔÚʲôλÖ㬵ÚÒ»²½ÊÇÁ˽âÄúÕýÔÚ´¦ÀíʲôÀàÐ͵ÄÑéÖ¤¡£Êý¾Ý¸ñʽÑé֤ȷ±£ËùÓÐÊý¾ÝÀàÐÍ£¨ÕûÊý¡¢¸¡µãÊý¡¢×Ö·û´®µÈ£©¶¼ÊÇÕýÈ·µÄ¡£Ëü»¹ÒªÈ·ÈϱäÁ¿¶¼ÔÚÔÊÐíÖµµÄ·¶Î§Ö®ÄÚÒÔ¼°Êµ¼ÊµÄģʽ°´Ô¤ÆÚµÄÆ¥Åä¡£±¾ÖÊÉÏ£¬Êý¾Ý¸ñʽÑéÖ¤´¦ÀíÑéÖ¤µÄÈκη½Ã棬ÕâЩÑéÖ¤²»ÐèÒªÓ¦ÓÃÌض¨ÒµÎñ¹æÔò

¡¡¡¡Ìض¨ÓÚÒµÎñµÄÑéÖ¤»ùÓÚÒ»×éÒµÎñ¹æÔò£¨ÀýÈ磬ȷ±£ËùÌṩµÄ ISBN ºÅÓëÄúÊý¾Ý¿âÖеÄʵ¼ÊÊé¼®ÏàÆ¥Å䣩¡£Ëü¼¸ºõ×ÜÊÇÐèÒª¶Ô EJB ²ãÒÔ¼°Ó¦ÓóÌÐòÖеÄÆäËüÒµÎñÂß¼­×é¼þ¾ßÓзÃÎÊȨ¡£

¡¡¡¡Êý¾Ý¸ñʽÑéÖ¤

¡¡¡¡È·¶¨ÁËÕýÔÚ´¦ÀíµÄÑéÖ¤ÀàÐÍÖ®ºó£¬ÏÂÒ»²½ÊÇÈ·¶¨·ÅÖôúÂëµÄλÖá£ÔÚÄúµÄ EJB Ó¦ÓóÌÐòÖУ¬Êý¾Ý¸ñʽÑéÖ¤Âß¼­¿ÉÒÔÈçϽøÐзÅÖãº

¡¡¡¡½«¸³Öµ£¨setter£©·½·¨·ÅÖÃÔÚÒµÎñίÅÉÉÏ¡£
¡¡¡¡½«¸³Öµ£¨setter£©·½·¨·ÅÖÃÔÚ bean µÄÔ¶³Ì½Ó¿ÚÉÏ¡£
¡¡¡¡½«¸³Öµ£¨setter£©·½·¨·ÅÖÃÔÚ bean µÄÏûÏ¢¶ÔÏó»òÖµ¶ÔÏóÉÏ¡£

¡¡¡¡¶ÔÓÚ±¾Ê¾Àý£¬ÎÒÃǽ«¼Ù¶¨ÄúÕýÔÚ´¦ÀíÒ»¸ö°üÀ¨ÒµÎñίÅÉµÄ EJB Ó¦ÓóÌÐò¡£Èç¹ûÊÇÕâÑù£¬ÄÇôÄúÓ¦¸Ã²ÉȡijЩ²½Ö裬ȷ±£ËùÓеÄÓ¦ÓóÌÐò¿Í»§»ú£¨´¦ÓÚ Web ²ã£©¶¼ÔÚʹÓÃίÅɽøÐÐ bean ·ÃÎÊ£¬¶ø²»ÊÇÖ±½Ó·ÃÎÊ bean¡£Èç¹ûȷʵÊÇÕâÑù£¬ÄÇôÄú¿ÉÒÔ½«ËùÓÐÊý¾ÝÑéÖ¤´úÂ붼°²È«µØ·ÅÖÃÔÚÒµÎñίÅÉ·½·¨ÖУ¬ÈçÇåµ¥ 1 Ëùʾ¡£

¡¡¡¡Çåµ¥ 1. ÒµÎñίÅÉÖеÄÊý¾Ý¸ñʽÑéÖ¤ package com.ibm.library;

<table width="90%" bgColor=#ffffff border=0> <tr> <td>import java.rmi.RemoteException;
import java.util.Iterator;
import java.util.List;
import javax.ejb.CreateException;
import javax.naming.NamingException;

public class LibraryDelegate implements ILibrary {

¡¡private ILibrary library;

¡¡public LibraryDelegate() {
¡¡¡¡init();
¡¡}

¡¡public void init() {
¡¡¡¡// Look up and obtain our session bean
¡¡¡¡try {
¡¡¡¡¡¡LibraryHome libraryHome =(LibraryHome)EJBHomeFactory.getInstance().lookup(
"java:comp/env/ejb/LibraryHome", LibraryHome.class);
¡¡¡¡¡¡library = libraryHome.create();
¡¡¡¡} catch (NamingException e) {
¡¡¡¡throw new RuntimeException(e);
¡¡} catch (CreateException e) {
¡¡throw new RuntimeException(e);
¡¡} catch (RemoteException e) {
¡¡¡¡throw new RuntimeException(e);
¡¡}
}

// No validation required for accessor (getter) methods

public boolean checkout(Book book) throws ApplicationException {
¡¡// No validation required here; the object type
¡¡// takes care of it

¡¡try {
¡¡¡¡return library.checkout(book);
¡¡} catch (RemoteException e) {
¡¡¡¡throw new ApplicationException(e);
¡¡}
}

public boolean checkout(List books) throws ApplicationException {
¡¡// Validate list
¡¡for (Iterator i = books.iterator(); i.hasNext(); ) {
¡¡¡¡Object obj = i.next();
¡¡¡¡if !(obj instanceof Book) {
¡¡¡¡¡¡throw new ApplicationException(
¡¡¡¡¡¡¡¡ApplicationException.VALIDATION_ERROR,"Only Books are allowed in the input list");
¡¡¡¡}
¡¡}

¡¡try {
¡¡¡¡return library.checkout(books);
¡¡} catch (RemoteException e) {
¡¡¡¡throw new ApplicationException(e);
¡¡}
}

// And so on...

public void destroy() {
¡¡// In this case, do nothing
}
}</td></tr></table>
¡¡¡¡¶ÔÓÚÊý¾Ý¸ñʽÑéÖ¤£¬ÄúÏ£ÍûʹÑéÖ¤Âß¼­¾¡¿ÉÄÜ¿¿½ü¿Í»§»ú¡£Êý¾Ý¸ñʽÑéÖ¤¾­³£´¥·¢´íÎóÒ³Ãæ»òÒªÇó¿Í»§»úÖØÐÂÊäÈë¸ñʽ´íÎóµÄÊý¾Ý¡£ÔÚÕâЩÇé¿öÏ£¬ÄúÏ£Íû»¨·Ñ×îÉٵĴ¦Àí¿ªÏúѸËÙÏò¿Í»§»úÌṩ·´À¡¡£Í¨¹ý½«ÑéÖ¤Âß¼­·ÅÖÃÔÚÒµÎñίÅÉÖУ¬ÄúÒѾ­´´½¨ÁË×î×ÔÈ»µÄ´ íÎó´¦Àí·½°¸¡£µ±¿Í»§»ú³¢ÊÔÏòίÅɲéѯ´øÓиñʽ´íÎóµÄÊý¾Ýʱ£¬¾Í»á´¥·¢´íÎó£¬ÇëÇó±»Ö±½ÓËͻؿͻ§»ú£¬²¢¾Í¸ÃÎÊÌ⾯¸æÓû§¡£

¡¡¡¡½«ÑéÖ¤Âß¼­·ÅÖÃÔÚ bean ʵÏÖÖлᵼÖµÍЧÂʵÄÑéÖ¤¹ý³Ì¡£´íÎóÏûÏ¢½«´Ó bean ʵÏÖ´«Ë͵½Î¯ÅÉ£¬¶ø²»ÊÇÖ±½Ó´ÓίÅÉ´«Ë͵½¿Í»§»ú£¬ÕâºÜÏó RemoteException£¬¶ø²»ÏóÓ¦ÓóÌÐòÒì³£¡£³ýÁËÔ¶³ÌÒì³£µÄ´ú¼ÛÖ®Í⣬ίÅÉ»¹½«¸¶³ö JNDI ²éÕÒ¡¢RMI Á÷Á¿ÒÔ¼°£¨¿ÉÄÜÓУ©¶îÍâµÄÒµÎñÂß¼­µÄ´ú¼Û ¡ª »¨·ÑÔÚµ¥¸öÑéÖ¤´íÎóÉϵÄÁ¦ÆøÌ«¶àÁË£¡

¡¡¡¡Ìض¨ÓÚÒµÎñµÄÑéÖ¤

¡¡¡¡Ìض¨ÓÚÒµÎñµÄÑéÖ¤ÍêÈ«ÊÇÒ»ÖÖ²»Í¬µÄÇéÐΡ£ÒµÎñÑéÖ¤´íÎóͨ³£±ÈÊý¾ÝÑéÖ¤´íÎó¸ü¸´ÔÓ£¬²¢ºÜÉÙͨ¹ý¿Í»§»ú½»»¥»ñµÃ½â¾ö¡£½â¾öÌض¨ÓÚÒµÎñµÄ´íÎóÒªÇóʹÓöîÍâµÄʵÌåºÍ»á»° bean ÒÔ¼°Êý¾Ý¿â·ÃÎÊ£¬ÕâЩ¶¼±ØÐëͨ¹ý JNDI ºÍ RMI ÊÂÎñ½øÐд¦Àí¡£°ÑÕâÖÖÑéÖ¤·ÅÔÚÒµÎñίÅÉÉÏ»¨·ÑµÄ¿ªÏú»áºÜ´ó¡£¸üºÃµÄÖ÷ÒâÊǽ«ÕâÖÖÑéÖ¤ÒÆ»Ø EJB ²ã£¬ÓÈÆäÊÇ·ÅÖõ½ bean µÄʵÏÖÀàÖС£

¡¡¡¡ÔÚ½«¸ÃÑéÖ¤·ÅÖÃÔÚÓ¦ÓóÌÐòµÄÕâÒ»²ãʱ£¬ËùÓÐ RMI Á÷Á¿¶¼Ó¦¸ÃÊDZ¾µØµÄ£»´ó¶àÊýÓ¦ÓóÌÐò·þÎñÆ÷¶¼½«Ê¹Óà VM ÄÚµÄÓÅ»¯£¬ÒÔʹ bean-µ½-bean ½»»¥Ëٶȼ«¿ì¡£ÄúÒ²¿ÉÒÔ±ÜÃâ JNDI ·ÃÎÊ£¬ÒòΪÐí¶à bean ÒѾ­²éÕÒÁËÏà¹Ø bean µÄÖ÷£¨home£©½Ó¿Ú¡£´ËÍ⣬ÄúµÄÒµÎñίÅÉÒѾ­´¦ÀíÁËËùÓбØÒªµÄÊý¾Ý¸ñʽÑéÖ¤¡£

¡¡¡¡½áÊøÓï

¡¡¡¡ÔÚ¾ö¶¨½«ÑéÖ¤´úÂë·ÅÖÃÔÚÄÄÀïʱ£¬ºÜÖØÒªµÄÊÇÄܹ»·Ö±æÁ½ÖÖÑéÖ¤ÀàÐÍ¡£Êý¾ÝÑéÖ¤ÊDZÈÒµÎñÑéÖ¤¼òµ¥µÃ¶àµÄÑéÖ¤ÀàÐÍ£¬Ò»°ãµÄ¾­ÑéÊÇʹËü¾¡¿ÉÄÜ¿¿½ü¿Í»§»ú¡£Ìض¨ÓÚÒµÎñµÄÑéÖ¤¸ü¸´ÔÓ£¬²¢Í¨³£ÐèÒª¼¸ÖÖ²»Í¬µÄÊÂÎñÀ´Íê³É¡£ÕâÀàÑéÖ¤Ó¦¸Ã·ÅÔÚ EJB ²ã£¬ÔÚÄÇÀËü¿ÉÒÔ¾¡¿ÉÄܵØÀûÓÃÏÖÓеĽø³Ì¡£zmbbs=1;



¡ü·µ»ØĿ¼
ǰһƪ: »ùÓÚSwingµÄͼÊé¹ÝϵͳXML¿ò¼Ü
ºóһƪ: Java£¨JVM£©ÐéÄâ»ú½á¹¹»ù´¡