´«ÖDz¥¿Íjavaѧϰ jpa³õ²½
ÎÒ½ñÌìѧϰÁËÐìÀÏʦ½²µÄjpa£¬ÎÒ×öÁ˼òµ¥µÄ±Ê¼Ç£º
JPA(Java Persistence API)ÊÇSun¹Ù·½Ìá³öµÄJava³Ö¾Ã»¯¹æ·¶¡£ËüΪJava¿ª·¢ÈËÔ±ÌṩÁËÒ»ÖÖ¶ÔÏó/¹ØÏµÓ³É乤¾ßÀ´¹ÜÀíJavaÓ¦ÓÃÖеĹØÏµÊý¾Ý¡£ËûµÄ³öÏÖÖ÷ÒªÊÇΪÁ˼ò»¯ÏÖÓеij־û¯¿ª·¢¹¤×÷ºÍÕûºÏORM¼¼Êõ£¬½áÊøÏÖÔÚHibernate¡¢TopLinkµÈORM¿ò¼Ü¸÷×ÔΪӪµÄ¾ÖÃæ¡£ÖµµÃ×¢ÒâµÄÊÇ£¬JPAÊÇÔÚ³ä·ÖÎüÊÕÁËÏÖÓÐHibernate¡¢TopLinkµÈORM¿ò¼ÜµÄ»ù´¡ÉÏ·¢Õ¹¶øÀ´µÄ£¬¾ßÓÐÒ×ÓÚʹÓá¢ÉìËõÐÔÇ¿µÈÓŵ㡣´ÓĿǰµÄ¿ª·¢ÉçÇøµÄ·´Ó¦ÉÏ¿´£¬JPAÊܵ½Á˼«´óµÄÖ§³ÖºÍÔÞÑÆäÖоͰüÀ¨ÁËSpringÓëEJB3.0µÄ¿ª·¢ÍŶӡ£×ÅÑÛδÀ´¼¸ÄêµÄ¼¼Êõ×ßÏò£¬JPA×÷ΪORMÁìÓò±ê×¼»¯ÕûºÏÕßµÄÄ¿±êÓ¦¸Ã²»ÄÑʵÏÖ¡£
JPAµÄ×ÜÌå˼ÏëºÍÏÖÓÐHibernate¡¢TopLinkµÈORM¿ò¼Ü´óÌåÒ»Ö¡£×ܵÄÀ´Ëµ£¬JPA°üÀ¨ÒÔÏÂ3·½ÃæµÄ¼¼Êõ£º
ORMÓ³ÉäÔªÊý¾Ý
JPAÖ§³ÖXMLºÍJDK 5.0×¢ÊÍ£¨Ò²¿ÉÒë×÷×¢½â£©Á½ÖÖÔªÊý¾ÝµÄÐÎʽ£¬ÔªÊý¾ÝÃèÊö¶ÔÏóºÍ±íÖ®¼äµÄÓ³Éä¹ØÏµ£¬¿ò¼Ü¾Ý´Ë½«ÊµÌå¶ÔÏó³Ö¾Ã»¯µ½Êý¾Ý¿â±íÖС£
Java³Ö¾Ã»¯API
ÓÃÀ´²Ù×÷ʵÌå¶ÔÏó£¬Ö´ÐÐCRUD²Ù×÷£¬¿ò¼ÜÔÚºóÌ¨ÌæÎÒÃÇÍê³ÉËùÓеÄÊÂÇ飬¿ª·¢Õß¿ÉÒÔ´Ó·±ËöµÄJDBCºÍSQL´úÂëÖнâÍѳöÀ´¡£
²éѯÓïÑÔ
ÕâÊdz־û¯²Ù×÷ÖкÜÖØÒªµÄÒ»¸ö·½Ã棬ͨ¹ýÃæÏò¶ÔÏó¶ø·ÇÃæÏòÊý¾Ý¿âµÄ²éѯÓïÑÔ²éѯÊý¾Ý£¬±ÜÃâ³ÌÐòµÄSQLÓï¾ä½ôÃÜñîºÏ¡£
JPA²»ÊÇÒ»ÖÖеÄORM¿ò¼Ü£¬ËûµÄ³öÏÖÖ»ÊÇÓÃÓڹ淶ÏÖÓеÄORM¼¼Êõ£¬Ëû²»ÄÜÈ¡´úÏÖÓеÄHibernate¡¢TopLinkµÈORM¿ò¼Ü¡£Ïà·´£¬ÔÚ²ÉÓÃJPA¿ª·¢Ê±£¬ÎÒÃÇÈÔ½«Ê¹Óõ½ÕâЩORM¿ò¼Ü£¬Ö»ÊÇ´Ëʱ¿ª·¢³öÀ´µÄÓ¦Óò»ÔÙÒÀÀµÓÚij¸ö³Ö¾Ã»¯ÌṩÉÌ¡£Ó¦ÓÿÉÒÔÔÚ²»Ð޸ĴúÂëµÄÇé¿öÏÂÔÚÈκÎJPA»·¾³ÏÂÔËÐУ¬ÕæÕý×öµ½µÍñîºÏ£¬¿ÉÀ©Õ¹µÄ³ÌÐòÉè¼Æ¡£
JPA±à³Ì½¨Ä££ºÊµÌåÊÇPOJO(²»ÐèҪʵÏÖEntityBean)£¬Ê¹ÓÃ×¢½â±íÃ÷ʵÌå(²»ÐèҪʹÓò¿ÊðÃèÊö·û)
JpaµÄºËÐÄ´úÂ룺
EntityManagerFactory emf = Persistence.createEntityManagerFactory("manager1")
EntityManager em = emf.createEntityManager();
em.xxx();
em.close();
emf.close();
jpaµÄÓ³É䣺
Ó³ÉäʵÌå @Entity @Table(name="USERS")
Ó³ÉäÊôÐÔ£º@id
JPA¹ØÏµ ManyToOne/OneToMany
@ManyToOne/@OneToMany
Class Order{
@ManyToOne
Customer customer ;
Class Customer{
@OneToMany(mappedBy
Ïà¹ØÎĵµ£º
http://lavasoft.blog.51cto.com/62575/18920
JavaÒì³£´¦Àí×ܽá
Òì³£´¦ÀíÊdzÌÐòÉè¼ÆÖÐÒ»¸ö·Ç³£ÖØÒªµÄ·½Ã棬ҲÊdzÌÐòÉè¼ÆµÄÒ»´óÄѵ㣬´ÓC¿ªÊ¼£¬ÄãÒ²ÐíÒѾ֪µÀÈçºÎÓÃif...else...À´¿ØÖÆÒì³£ÁË£¬Ò²ÐíÊÇ×Ô·¢
µÄ£¬È»¶øÕâÖÖ¿ØÖÆÒ쳣ʹ¿à£¬Í¬Ò»¸öÒì³£»òÕß´íÎóÈç¹û¶à¸öµØ· ......
ÔÚÃüÁîÐнçÃæÓÃnative2ascii¹¤¾ß
1.½«ºº×ÖתΪUnicode:
C:\Program Files\Java\jdk1.5.0_04\bin>native2ascii
²âÊÔ
\u6d4b\u8bd5
2.½«Unicodeת»»Îªºº×Ö:
C:\Program Files\Java\jdk1.5.0_04\bin>native2ascii -reverse ......
ÏÂÃæÒÔ±àÒë /src/com/dream/io/ScannerTest.javaΪʾÀý£º
1¡¢ÓÃjavac±àÒë.javaÎļþʱ£¬½øÈësrcĿ¼ºó£¬ÊäÈë javac com/dream/io/ScannerTest.java£¬ »Ø³µ£¬¼´¿É±àÒëScannerTest.javaÎļþΪ.classÎļþ£»Ò²¿É£¬½øÈë /src/com/dream/io/ Ŀ¼ºó£¬ ÊäÈë javac ScannerTest.java£¬ »Ø³µ£¬Ò²¿É±àÒë ScannerTest.javaÎļþΪ .clas ......
BlockingQueueÊÇÒ»¸ö½Ó¿Ú£¬Ëü´ÓQueue¼Ì³Ð¶øÀ´£¬
°üº¬ÁËQueueµÄËùÓй¦ÄÜ£¬²¢ÔÚQueueµÄ»ù´¡ÉÏÌṩÁË2¸öÐµĹ¦ÄÜ£º
1. ¼ìË÷ÔªËØÊ±µÈ´ý¶ÓÁбäΪ·Ç¿Õ
2. ´æ´¢ÔªËØÊ±µÈ´ý¿Õ¼ä±äµÃ¿ÉÓá£
ÏÂÃæ³Â¼Ò»Ð©JDKÎĵµÖйØÓÚBlockingQueueµÄ½éÉÜ£º
BlockingQueue ¿ÉÒÔÊÇÏÞ¶¨ÈÝÁ¿µÄ¡£ËüÔ ......
¡¡ÕâÊÇclone¼¼Êõ½éÉܵĵÚһƪ¡£±¾ÆªÖ÷Òª½éÉܶÔÏóclone¼¼ÊõµÄ»ù±¾ÖªÊ¶¡£
Clone»ù±¾ÖªÊ¶´¢±¸
ÔÚJavaÀïÌáµ½clone¼¼Êõ£¬¾Í²»Äܲ»Ìájava.lang.Cloneable½Ó¿ÚºÍº¬ÓÐclone·½·¨µÄObjectÀà¡£ËùÓоßÓÐclone¹¦ÄܵÄÀà¶¼ÓÐÒ»¸öÌØÐÔ£¬ÄǾÍÊÇËüÖ±½Ó»ò¼ä½ÓµØÊµÏÖÁËCloneable½Ó¿Ú¡£·ñÔò£¬ÎÒÃÇÔÚ³¢ÊÔµ÷ÓÃclone£¨£©·½·¨Ê±£¬½«»á´¥·¢CloneNo ......