´«ÖDz¥¿Íjavaѧϰ OA»ú¹¹Éè¼Æ
½ñÌìÊÇѧϰoaµÄµÚ¶þÌ죬ѧµÄ֪ʶµã±È½Ï¶à£¬ÎÒ×öÁ˱ʼǣº
Service²ãÉè¼Æ£º
1£¬ÏÈÓÐget(Long)£¬ÒòΪ»¹ÏëÒª»ñÈ¡ÆäËû¶ÔÏ󣨲»ÊÇT£©£¬ËùÒÔÔÙ¶¨ÒåÒ»¸öget(Class, Long)
2£¬ ΪʲôÓÐget(Class, Long)£¬µ«²»¼ÓÉÏÒÔÏÂÁ½¸ö·½·¨ÄØ£¿
<E> E delete(Class<E> clazz, Long id);
<E> List<E> findAll(Class<E> clazz);
¿ÉÒÔ¼ÓÉÏ£¬µ«ÊÇÔÚ³ÌÐòÖÐֻʹÓõ½ÁËget(Class, Long)£¬ËùÒÔ¾ÍÖ»¶¨ÒåÁËget·½·¨¡£
3£¬ÎªÊ²Ã´Ê¹ÓÃLongÐ͵ÄÖ÷¼üÄØ£¿Ò²¿ÉÒÔʹÓÃSerializableÀàÐÍ£¬ÒòΪSession.get()·½·¨¾ÍÊǽÓÊÜÕâ¸öÀàÐÍ¡£
°ü ×ÊÔ´£¨Àà¡¢½Ó¿ÚµÈ£©
cn.itcast.oa.service.daosupport ServiceBase£¨ÔÃûΪDaoBase£©
ServiceImplBase£¨ÔÃûΪDaoBaseImpl£©
cn.itcast.oa.service ServiceµÄ½Ó¿Ú
Cn.itcast.oa.service.impl ServiceµÄʵÏÖÀà
˵Ã÷£º Service½Ó¿Ú¿ÉÒÔͨ¹ý¼Ì³ÐServiceBaseµÃµ½Ôöɾ¸Ä²éµÄ·½·¨ÉùÃ÷¡£ServiceµÄʵÏÖÀà¿ÉÒÔͨ¹ý¼Ì³ÐServiceImplBaseµÃµ½Ôöɾ¸Ä²é·½·¨µÄʵÏÖ¡£Í¨¹ýServiceImplBaseÖеÄgetSession()ÓëgetJbpmContext()·½·¨¿ÉÒÔ·½±ãµÄ»ñµÃSessionÓëJbpmContext¡£
ʹÓ÷´Éä»ñÈ¡ÀàÐͲÎÊýµÄÕæʵÀàÐ͵ĴúÂëÈçÏ£º
public DaoBaseImpl () {
Type type = this.getClass().getGenericSuperclass();
ParameterizedType pt = (ParameterizedType) type;
this.clazz = (Class<T>) pt.getActualTypeArguments()[0];
}
ÊÂÎñ¹ÜÀí£º
ʹÓùýÂËÆ÷¼Ó ThreadLocal ʵÏÖ
ÒòΪSession¿ÉÒÔͨ¹ýJbpmContext.getSession()»ñµÃ£¬ËùÒÔÖ»Ðè¹ÜÀí JbpmContext¼´¿É£»¹ýÂËÆ÷À¹½Ø*.doµÄÇëÇó¡£
Ò»¸öÇëÇó£¨Ị̈߳©Ê¹ÓÃͬһ¸öJbpmContext Èç¹ûÇëÇóÖÐûÓÐʹÓÃJbpmContext»òSession£¬¾Í²»Òª´´½¨JbpmContext¡£
ÔÚ¹ýÂËÆ÷ÖйرÕJbpmContextʱ£¬Ò²Òªµ÷Óà ThreadLocal.remove()£¬ÒòΪWebÈÝÆ÷ÓÐÏ̳߳أ¬¾ÍÊÇÁ½´ÎÇëÇóÓпÉÄÜÊÇʹÓõÄͬһ¸öÏ̡߳£
JbpmContextFilterÖеÄÏà¹Ø´úÂ룺
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,ServletException {
try {
chain.doFilter(request, respons
Ïà¹ØÎĵµ£º
http://lavasoft.blog.51cto.com/62575/18920
JavaÒì³£´¦Àí×ܽá
Òì³£´¦ÀíÊdzÌÐòÉè¼ÆÖÐÒ»¸ö·Ç³£ÖØÒªµÄ·½Ã棬ҲÊdzÌÐòÉè¼ÆµÄÒ»´óÄѵ㣬´ÓC¿ªÊ¼£¬ÄãÒ²ÐíÒѾ֪µÀÈçºÎÓÃif...else...À´¿ØÖÆÒì³£ÁË£¬Ò²ÐíÊÇ×Ô·¢
µÄ£¬È»¶øÕâÖÖ¿ØÖÆÒ쳣ʹ¿à£¬Í¬Ò»¸öÒì³£»òÕß´íÎóÈç¹û¶à¸öµØ· ......
ÏÂÃæÒÔ±àÒë /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 ......
±à¼¹¤³ÌµÄ.projectÎļþ£º
Ìí¼Ó
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
µ½
<natures>
…
& ......
¡¡ÕâÊÇclone¼¼Êõ½éÉܵĵÚһƪ¡£±¾ÆªÖ÷Òª½éÉܶÔÏóclone¼¼ÊõµÄ»ù±¾ÖªÊ¶¡£
Clone»ù±¾ÖªÊ¶´¢±¸
ÔÚJavaÀïÌáµ½clone¼¼Êõ£¬¾Í²»Äܲ»Ìájava.lang.Cloneable½Ó¿ÚºÍº¬ÓÐclone·½·¨µÄObjectÀà¡£ËùÓоßÓÐclone¹¦ÄܵÄÀ඼ÓÐÒ»¸öÌØÐÔ£¬ÄǾÍÊÇËüÖ±½Ó»ò¼ä½ÓµØʵÏÖÁËCloneable½Ó¿Ú¡£·ñÔò£¬ÎÒÃÇÔÚ³¢ÊÔµ÷ÓÃclone£¨£©·½·¨Ê±£¬½«»á´¥·¢CloneNo ......
ÎÒ½ñÌìѧϰÁËÐìÀÏʦ½²µÄhibernate֪ʶ£¬ÎÒ×öÁ˼òµ¥µÄ±Ê¼Ç£º
Ò»¡¢Hibernate
a) Á¬½ÓjavaÓ¦ÓóÌÐòºÍ¹ØϵÐÍÊý¾Ý¿âµÄÖмä¼þ£¬¶ÔJDBC API·â×°£¬¸ºÔð¶ÔÏó³Ö¾Ã»¯
b) λÓڳ־û¯²ã£¬·â×°ËùÓеÄÊý¾Ý·ÃÎÊϸ½Ú£¬Ê¹ÒµÎñÂß¼²ã¸ü¹Ø×¢ÓÚÒµ ......