<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    mis98zb

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      7 Posts :: 0 Stories :: 5 Comments :: 0 Trackbacks

    2006年5月4日 #

    在tomcat中輸出log,有兩種方式:

    首先就是在log4j.properties中使用org.apache.log4j.ConsoleAppender方式輸出。這樣,log會(huì)輸出到tomcat的標(biāo)準(zhǔn)輸出log里邊去。

    還有就是使用org.apache.log4j.FileAppender一類的方式輸出。這樣就會(huì)輸出到自己指定的文件里去。
    這時(shí)候有一點(diǎn)需要注意:文件路徑的問題。
    在log4j.properties中把文件名設(shè)置為${catalina.base}/logs/YourFileName.log的話,就能輸出到tomcat的log目錄中(如果在eclipse的WDT中使用的話,就在workspace所在路徑下的.metadata\.plugins\org.eclipse.wst.server.core\tmpX。X為數(shù)字,對應(yīng)eclipse中設(shè)置的server的編號(hào)。)。
    如果只指定一個(gè)文件名的話,就會(huì)輸出到tomcat被啟動(dòng)時(shí)的目錄中。
    posted @ 2007-02-13 09:48 mis98zb 閱讀(776) | 評(píng)論 (0)編輯 收藏

    呵呵,用上spring2.0了,但是辛辛苦苦研究出來的1.2.x的配置方法也不忍心就這么扔了,放這里做個(gè)記錄吧。
    首先是基于Java5 Annotation的配置:
    <?xml?version="1.0"?encoding="UTF-8"?>
    <!DOCTYPE?beans?PUBLIC?"-//SPRING//DTD?BEAN//EN"?"http://www.springframework.org/dtd/spring-beans.dtd">
    <beans>
    ????
    <import
    ????????
    resource="classpath:cn/com/nec/esmpro/gserver/util/database/database.beans.xml"?/>

    ????
    <bean
    ????????
    class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator">
    ????????
    <description>Switch?AOP?function?ON!</description>
    ????
    </bean>

    ????
    <bean
    ????????
    class="org.springframework.transaction.interceptor.TransactionAttributeSourceAdvisor">
    ????????
    <constructor-arg>
    ????????????
    <bean class="org.springframework.transaction.interceptor.TransactionInterceptor">
    ????????????????
    <property?name="transactionManager">
    ????????????????????
    <bean class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    ????????????????????????
    <property?name="sessionFactory" ref="gserverSessionFactoryBean"?/>
    ????????????????????
    </bean>
    ????????????????
    </property>
    ????????????????
    <property?name="transactionAttributeSource">
    ????????????????????
    <bean?class="org.springframework.transaction.annotation.AnnotationTransactionAttributeSource"/>
    ????????????????
    </property>
    ????????????
    </bean>
    ????????
    </constructor-arg>
    ????
    </bean>
    </beans>
    然后是只使用XML的配置:
    <?xml?version="1.0"?encoding="UTF-8"?>
    <!DOCTYPE?beans?PUBLIC?"-//SPRING//DTD?BEAN//EN"?"http://www.springframework.org/dtd/spring-beans.dtd">
    <beans>
    ????
    <import
    ????????
    resource="classpath:cn/com/nec/esmpro/gserver/util/database/database.beans.xml"?/>

    ????
    <bean
    ????????
    class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator">
    ????????
    <description>Switch?AOP?function?ON!</description>
    ????
    </bean>

    ????
    <bean
    ????????
    class="org.springframework.transaction.interceptor.TransactionAttributeSourceAdvisor">
    ????????
    <property?name="classFilter">
    ????????????
    <bean?class="???????????????????????????????????????">
    ????????????
    </bean>
    ????????
    </property>
    ????????
    <property?name="transactionInterceptor">
    ????????????
    <bean?class="org.springframework.transaction.interceptor.TransactionInterceptor">
    ????????????????
    <property?name="transactionManager">
    ????????????????????
    <bean?class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    ????????????????????????
    <property?name="sessionFactory"?ref="gserverSessionFactoryBean"?/>
    ????????????????????
    </bean>
    ????????????????
    </property>
    ????????????????
    <property?name="transactionAttributes">
    ????????????????????
    <props>
    ????????????????????????
    <prop?key="*">PROPAGATION_REQUIRED</prop>
    ????????????????????????
    <prop?key="find*">PROPAGATION_REQUIRED,readOnly</prop>
    ????????????????????
    </props>
    ????????????
    </property>
    ????????????
    </bean>
    ????????
    </property>
    ????
    </bean>
    </beans>

    posted @ 2006-08-22 14:47 mis98zb 閱讀(525) | 評(píng)論 (0)編輯 收藏

    寫了半天,老是出現(xiàn)config為null的問題:

    1?2006-08-10?00:37:54,015?INFO?[org.hibernate.cfg.AnnotationConfiguration]?-?Mapping?package?cn.com.nec.esmpro.gserver.author
    2?2006-08-10?00:37:54,093?WARN?[org.hibernate.cfg.AnnotationBinder]?-?Package?not?found?or?wo?package-info.java:?cn.com.nec.esmpro.gserver.author
    3?2006-08-10?00:37:54,093?INFO?[org.hibernate.cfg.AnnotationConfiguration]?-?Mapping?package?cn.com.nec.esmpro.gserver.source
    4?2006-08-10?00:37:54,093?WARN?[org.hibernate.cfg.AnnotationBinder]?-?Package?not?found?or?wo?package-info.java:?cn.com.nec.esmpro.gserver.source
    5?2006-08-10?00:37:54,750?INFO?[org.hibernate.cfg.AnnotationConfiguration]?-?Mapping?package?cn.com.nec.esmpro.gserver.user_support
    6?2006-08-10?00:37:54,750?WARN?[org.hibernate.cfg.AnnotationBinder]?-?Package?not?found?or?wo?package-info.java:?cn.com.nec.esmpro.gserver.user_support
    7?2006-08-10?00:37:54,750?INFO?[org.hibernate.cfg.Configuration]?-?Configured?SessionFactory:?null
    不知道什么原因。
    :(
    posted @ 2006-08-10 00:41 mis98zb 閱讀(1218) | 評(píng)論 (2)編輯 收藏

    在使用DB4O的時(shí)候發(fā)現(xiàn)兩個(gè)問題。
    1?????????ObjectSet?result?=?db.get(new?Object());
    2?????????for?(Object?obj?:?result)?{
    3?????????????db.delete(obj);
    4?????????}
    5?????????db.commit();

    第一行如果用
    db.get(Object.class)
    則一個(gè)對象都取不出來,
    db.get(new?Object());
    卻可以把對象都取出來。
    然而更奇怪的是第三行能夠刪掉大部分對象,卻刪不掉存在數(shù)據(jù)庫里的enum類型的對象。
    真是奇怪了……

    posted @ 2006-07-12 17:33 mis98zb 閱讀(232) | 評(píng)論 (0)編輯 收藏

    用laszlo IDE也有一段時(shí)間了,可惜一直不得其法,用的很是不爽。

    正規(guī)的用法大概是這樣的:
    創(chuàng)建一個(gè)laszlo類型的工程,設(shè)置好LPS Web Root,就可以在這個(gè)工程里開發(fā)lzx類型的代碼了。
    需要調(diào)試的時(shí)候,選中需要調(diào)試的canvas類型的lzx文件,在右鍵菜單中選擇Run As ——〉Laszlo Application。
    它會(huì)打開默認(rèn)瀏覽器,用以調(diào)試這個(gè)lzx文件。
    posted @ 2006-06-01 13:28 mis98zb 閱讀(549) | 評(píng)論 (0)編輯 收藏

    以前用WebWork的時(shí)候,因?yàn)檫x擇了xml + xslt的方式,所以就要把object映射到xml。
    最初想偷偷懶,不打算使用配置文件。于是就自己寫了一個(gè)obj2xml,遇到了兩個(gè)問題:

    ☆首先就是環(huán)的問題。
    xml是樹形結(jié)構(gòu),不允許出現(xiàn)環(huán)的。而對象關(guān)系中,很容易出現(xiàn)環(huán)。比如
    Parent.getChildren();
    Child.getParent();
    這樣的代碼。
    我的解決方法是,在映射的時(shí)候,用hash map保存一個(gè)class到已知obj列表。不在已知列表里的,就先映射,然后加到已知obj列表里。在已知列表里的,就不再映射了。這樣速度挺快,查找也方便。這個(gè)問題還算好解決。

    ☆接下來就是垃圾信息的屏蔽。
    我是用get*來映射的(當(dāng)然,集合類型會(huì)有特殊的處理)。
    但是,get*方法中赫然有g(shù)etClass存在!而Class類又有一堆get方法!這還算好辦,直接屏蔽掉Class類型好了。
    問題在于用戶自己的一些無用信息。比如
    DomainObject.getXXXService();
    XXXServiceImpl.getYYYDAO();
    YYYDAO.getZZZDAOSupport();
    還有就是多余的信息。比如我只想得到用戶的基本信息,可是
    class?Person?{
    ????getName();
    ????getAge();
    ????getBirthday();
    ????getEducationRecord();
    }


    class?EducationRecord{
    ????getMildSchool();
    ????getUnivercity();
    }
    這樣一來,本來不需要的教育的信息就會(huì)被映射到。由于Person對象可能會(huì)關(guān)聯(lián)到很多對象,那樣就會(huì)有很多無用的信息被包含進(jìn)來。
    對于這種情況,首先的想法就是LazyLoading。對于一般的使用,這是沒有問題的。但是我的需求是要把XML發(fā)送到客戶端。客戶端會(huì)使用XML中的哪些數(shù)據(jù),我的映射程序沒有辦法捕捉到。因此LazyLoading就毫無用武之地了。
    沒有辦法,只能把責(zé)任推倒對被映射的object,讓它注意不要包含無用的數(shù)據(jù)。可是這樣一來,就要專門為映射準(zhǔn)備一些bean,然后用BeanUtil給他們賦值,再傳遞給obj2xml。

    最后實(shí)在沒有辦法,干脆徹底拋棄我的obj2xml,自己寫了一個(gè)xmlResult,使用vm來生成xml。
    雖然為需要寫一些vm,但是比起專門準(zhǔn)備一堆bean再用obj2xml映射,還是要簡單直接一些。
    可能這也是沒有什么特別好用的obj/xml映射工具的原因吧!
    posted @ 2006-05-04 09:00 mis98zb 閱讀(1276) | 評(píng)論 (2)編輯 收藏

    最近終于想玩玩新技術(shù)了。試著用XFire做WS,用OpenLaszlo做客戶端。
    毫無疑問,當(dāng)然使用的是XFire結(jié)合Spring的方式。
    而且,作為一個(gè)地道的懶人,我首先就選擇了最簡單的基于SpringRPC的方式:

    ???? < servlet >
    ????????
    < servlet-name > xfire </ servlet-name >
    ????????
    < servlet-class > org.springframework.web.servlet.DispatcherServlet </ servlet-class >
    ????
    </ servlet >
    可是這就帶來了一個(gè)問題:
    它是Document方式的,返回給客戶端的數(shù)據(jù)都會(huì)被自動(dòng)映射成XML。

    呵呵,這就引起了我的興趣。
    以前我也曾經(jīng)寫過一個(gè)obj2xml的映射工具,看看XFire的有沒有什么過人之處。

    結(jié)果很令人失望,XFire連基本的環(huán)檢測都沒有做到,直接就用org.codehaus.xfire.aegis.type.basic.BeanType.writeObject()拼命寫,一直寫到j(luò)ava.lang.StackOverflowError。

    看來還是不能偷懶,得研究一下XBean方式。
    posted @ 2006-05-04 08:25 mis98zb 閱讀(1199) | 評(píng)論 (1)編輯 收藏

    主站蜘蛛池模板: 亚洲熟伦熟女新五十路熟妇| 一级毛片免费视频| 永久免费看bbb| 亚洲伦理中文字幕| 波多野结衣在线免费观看| 亚洲欧洲日本精品| 国国内清清草原免费视频99| 亚洲av专区无码观看精品天堂| 99re免费在线视频| 亚洲av产在线精品亚洲第一站| 免费人成视频在线| 亚洲爆乳无码专区www| 国产大片线上免费看| 羞羞网站免费观看| 亚洲综合伊人久久大杳蕉| 毛片在线播放免费观看| 亚洲天天做日日做天天欢毛片| 国内精自视频品线六区免费| 国产成人精品日本亚洲网址 | 亚洲av色香蕉一区二区三区| 黄网址在线永久免费观看 | 免费观看国产网址你懂的| 久久亚洲精品专区蓝色区| 天天看片天天爽_免费播放| 精品亚洲成a人在线观看| 国产精品亚洲美女久久久| fc2免费人成在线| 国产精品亚洲片在线观看不卡| 无码人妻一区二区三区免费n鬼沢 无码人妻一区二区三区免费看 | 日韩在线视频免费看| 一级做a爰片久久免费| 久久国产精品亚洲综合| 男女超爽刺激视频免费播放 | 成人精品一区二区三区不卡免费看| 亚洲第一视频网站| 欧洲精品免费一区二区三区| 一个人免费观看日本www视频 | 五月婷婷免费视频| 久久亚洲春色中文字幕久久久| 久久久久免费看黄A片APP| a级毛片免费观看网站|