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

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

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

    風(fēng)人園

    弱水三千,只取一瓢,便能解渴;佛法無邊,奉行一法,便能得益。
    隨筆 - 99, 文章 - 181, 評(píng)論 - 56, 引用 - 0
    數(shù)據(jù)加載中……

    ECApp -- 之系統(tǒng)初始化

    在java web項(xiàng)目中,最常用的就是使用listener來實(shí)現(xiàn)初始化了。

    下面是實(shí)現(xiàn)代碼
     1 public class StartupListener extends ContextLoaderListener implements
     2         ServletContextListener {
     3 
     4     private Logger logger = LoggerFactory.getLogger(getClass());
     5     
     6     /**
     7      * web容器啟動(dòng)時(shí)調(diào)用
     8      */
     9     public void contextInitialized(ServletContextEvent event) {
    10         logger.info("application servlet initialized");
    11 
    12         ServletContext context = event.getServletContext();
    13         
    14         //從spring中獲得bean,由這個(gè)bean進(jìn)行相應(yīng)操作,結(jié)果存到context中
    15         ApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(context);
    16         ProductClassManager productClassManager = (ProductClassManager)ctx.getBean("productClassManager");
    17         
    18         String prodClassTreeJson = productClassManager.generateProdClassTree();
    19         
    20         context.setAttribute(Constants.PRODUCT_CLASS_JSON_STRING, prodClassTreeJson);
    21     }
    22     
    23     
    24     /**
    25      * web容器銷毀時(shí)調(diào)用
    26      */
    27     public void contextDestroyed(ServletContextEvent event){
    28         logger.info("application servlet destroyed");
    29     }
    30 
    31 }
            這里面還調(diào)用 了spring的bean,所以listener要配置在spring的那個(gè)listener下面,否則可能出錯(cuò)。

    這樣我們就可以在系統(tǒng)啟動(dòng)的時(shí)候?qū)⒁恍┏S玫臄?shù)據(jù)及配置信息都放到內(nèi)存(即serlvetContext里面),在struts2中,我們可以通過這種方式獲得
    ServletContext context = ServletActionContext.getServletContext();
    然后就可以使用存放在context里面的數(shù)據(jù)了。
    就這么簡單。

    posted @ 2009-08-06 15:40 風(fēng)人園 閱讀(251) | 評(píng)論 (0)編輯 收藏

    ECApp--ext應(yīng)用之我見

            以前做項(xiàng)目的時(shí)候也使用過一段時(shí)間的ext,但是總體來說,在使用的過程中有蠻多不習(xí)慣的地方,后來除了幾個(gè)布局界面使用ext之外,其他的全部又替換為html了。
            這次項(xiàng)目,再次使用ext又有了新的感覺,總的來說,ext還是非常的好(這個(gè)是廢話)。css風(fēng)格是我比較喜歡的那種,非常的耐看,不會(huì)看厭。各種組件豐富,只要你能用的起來,還是非常好的,一個(gè)應(yīng)用下來,整體操作非常的爽。
            有一個(gè)不爽的地方就是在編寫的時(shí)候 ,多一個(gè)少一個(gè)逗號(hào)就玩完,這個(gè)比較郁悶,但是注意一下就好了。
            下面暫時(shí)show一下程序的主體頁面,只能說基本完成,還沒有完全弄好。
            今天把頁面及tree給弄好,明天把中間的grid及相關(guān)的幾個(gè)編輯form弄完,在完善一下相應(yīng)的按鈕操作,就完工了,哈哈。拿出去給人看都是眼前一亮。good,繼續(xù)努力ing

    posted @ 2009-08-06 15:02 風(fēng)人園 閱讀(176) | 評(píng)論 (0)編輯 收藏

    ECApp--產(chǎn)品主數(shù)據(jù)管理界面及產(chǎn)品選擇方案構(gòu)思



    1、管理界面
            對(duì)于一個(gè)ERP系統(tǒng)來講,產(chǎn)品數(shù)據(jù)是最重要的,而且也是操作比較頻繁的。所以界面一定要要友好。
    在c/s中,一般是這樣處理的,左邊樹形結(jié)構(gòu)顯示分類,右邊產(chǎn)品數(shù)據(jù),提供查詢定位功能。
    所以在這個(gè)系統(tǒng)里,我也想使用類似的界面,這樣直觀且方便。

            在這個(gè)界面上,提供對(duì)產(chǎn)品類別 & 產(chǎn)品數(shù)據(jù)的操作。
            在樹形結(jié)構(gòu)上操作產(chǎn)品類別,操作有:新增類型,新增子類型。
            產(chǎn)品數(shù)據(jù):新增(需要先選擇類別)、刪除、修改、查找、定位等。

    2、產(chǎn)品選擇
            在整個(gè)系統(tǒng)中,產(chǎn)品選擇使用是最為廣泛和頻繁的,所以一定要提供多種選擇操作,滿足用戶的操作需要,方便用戶產(chǎn)品需要的產(chǎn)品。
        1)、彈出式選擇對(duì)話框
        2)、下拉式(自動(dòng)匹配建議)
        3)、多選輸入(減少操作次數(shù),這個(gè)很重要)

    上面這些看能否用ext實(shí)現(xiàn)。
    本來想使用jquery.treeview來做,但是好像有點(diǎn)問題。看來只能用ext的東東來做tree了。
    那個(gè)自動(dòng)匹配的下拉菜單,估計(jì)要自己來手工打造了,已經(jīng)找到了類似的源代碼,自己做吧。
    哦:)

    posted @ 2009-08-05 15:22 風(fēng)人園 閱讀(277) | 評(píng)論 (0)編輯 收藏

    java中文注釋在eclipse中顯示亂碼的問題

    這個(gè)問題困擾已久,一直沒有空查,今天終于查了一下,呵呵,總算看見那個(gè)久違的漢字了,高興啊。

    原文請(qǐng)看這個(gè)論壇帖子 : http://www.javaeye.com/topic/100391

    解決方案:
    Preferences General > Workspace 修改Text file encoding
    為UTF-8后才行。這個(gè)問題一直琢磨了好久,今天下了決心想看看,最后還是查了eclipse的幫助才解決。

    當(dāng)當(dāng)修改project 為UTF-8是不行的。


    就這么回事,我一直改項(xiàng)目的那個(gè),怪不得。

    posted @ 2009-08-05 15:07 風(fēng)人園 閱讀(2428) | 評(píng)論 (0)編輯 收藏

    ECApp 項(xiàng)目說明

    在此記錄開過過程及問題處理,便于瀏覽查詢。
    ECApp是一個(gè)web版的進(jìn)銷存系統(tǒng)
    模塊有系統(tǒng)模塊,基礎(chǔ)模塊,采購管理,銷售管理,倉庫管理,應(yīng)收應(yīng)付等。

    在web版的基礎(chǔ)上,計(jì)劃再開發(fā)一個(gè)RCP版本的。web的主要用于查詢分析。RCP用于數(shù)據(jù)操作。

    這樣B/S,C/S的特點(diǎn)都能發(fā)揮出來。


    在公司工作也不是很累,有很多時(shí)間做開發(fā),給自己點(diǎn)事情做作,免得人都荒廢了。這樣人累點(diǎn),但是充實(shí),給人的精神感覺也好。讓人有個(gè)希望,有個(gè)目標(biāo)。

    現(xiàn)在在完成基礎(chǔ)模塊的東西,整體架構(gòu)

    Struts2 + spring + hibernate + ibatis

    數(shù)據(jù)庫任意,現(xiàn)為sql server 2005

    爭取以后改為ERP,有機(jī)會(huì)的話,可以拿出去賣賣,哈哈

    給自己一個(gè)目標(biāo),年底前完成,加油吧,兄弟。

    posted @ 2009-08-04 16:39 風(fēng)人園 閱讀(242) | 評(píng)論 (0)編輯 收藏

    struts2 表單屬性映射的問題

    最近使用的過程中,有點(diǎn)搞不懂,表單域跟屬性到底是怎么個(gè)關(guān)系,因?yàn)橛袝r(shí)候可以,有時(shí)候又不行。有點(diǎn)小郁悶。

    使用新東西的時(shí)候或多或少會(huì)出現(xiàn)這樣那樣的問題,這導(dǎo)致很多人不愿意更換原來的框架,一換又要學(xué)一個(gè)大堆東西,處理一大堆異常。但是我們這些做開發(fā)的,不學(xué)習(xí)使用新的 東西,就會(huì)被淘汰。這個(gè)行業(yè)的悲哀啊,當(dāng)初也不知道怎么選擇了這個(gè)行業(yè)。

    以上是題外話。

    表單映射,在2里面有兩種方式,一個(gè)事modelDriver,直接映射到model里面。
    另一種方式就是通過屬性來影射,通過getter和setter方法來獲取和設(shè)置值。

    現(xiàn)在出現(xiàn)問題的在第二種情況,設(shè)值后,傳到頁面,頁面沒有得到值,這個(gè)不知道什么緣故,感覺有可能是頁面轉(zhuǎn)發(fā)的問題。這個(gè)還要好好看看資料研究一下。

    :)

    //==========================================================================
    2009-11-17
    好久以前的問題了,今天終于有了答案,原來都是ValueStack惹的。其實(shí)也怪自己,一直沒有空把struts2的原理好好的看看,還以為跟以前的東西一樣呢。

    問題是這樣的,在action里定義了屬性之后,數(shù)據(jù)都是存在ValueStack里面的。如果你直接使用tag取的話就沒有問題。但是你想通過java代碼,用request取的話,這樣是取不出來的。

    今天終于發(fā)現(xiàn)了這個(gè)問題的原因。
    這些屬性可以通過request取,但是首先要去的ValueStack,然后從ValueStack里面把這個(gè)值取出來。
    如:
    ValueStack vs = request.getAttribute(struts.valueStack);
    然后根據(jù)屬性名稱,從vs中獲取這個(gè)對(duì)象值。
    vs.find("value");

    這樣就可以把數(shù)據(jù)取出來通過java代碼來操作了。否則只能使用struts2自帶的tag來運(yùn)行。

    這個(gè)是今天的一大收獲。

    posted @ 2009-08-04 15:52 風(fēng)人園 閱讀(1096) | 評(píng)論 (0)編輯 收藏

    jquery.treeview

    今天用到tree,試了下jqeury的這個(gè)插件,結(jié)果發(fā)現(xiàn)一個(gè)問題。
    效果是出來了,可是沒有單擊事件,這讓我們?cè)趺从冒 U媸羌{悶死了,看文檔也沒有這個(gè)說明,看demo里面也沒有這個(gè)例子。

    好像其他的官方插件也或多或少有這樣那樣的問題,看來官方的插件還需要努力更新啊。

    難道我要自己動(dòng)手完成這個(gè)東東了?

    js一直是我的軟肋,郁悶死。

    現(xiàn)在碰到復(fù)雜一點(diǎn)的js,根本沒轍。特別是現(xiàn)在oo版本的js,基本上屬于看不懂,看來我需要研究一下了。

    posted @ 2009-08-04 13:47 風(fēng)人園 閱讀(693) | 評(píng)論 (0)編輯 收藏

    hibernate annotion 注解放在屬性上或者方法上

    兩種方式都是可以,但是看人家的代碼,習(xí)慣將注解放于方法上,不知道有沒有什么好的地方?

    現(xiàn)在唯一發(fā)現(xiàn)的區(qū)別就是,@Transient非持久化域的不同。
    放在方法上,只需要標(biāo)記那個(gè)getter方法即可,可以沒有對(duì)應(yīng)屬性。

    如果放在屬性上,需要生成getter 和setter方法


    在實(shí)體對(duì)象中,可能存在很多非持久化方法,這種情況下
    注解置于屬性上,功能性get方法,可以沒有對(duì)應(yīng)屬性。
    注解至于方法上,直接使用@Transient。

    兩者基本上都一樣。
    只是在使用的時(shí)候不能混合使用

    posted @ 2009-08-04 09:54 風(fēng)人園 閱讀(1522) | 評(píng)論 (0)編輯 收藏

    Hibernate annotion配置

    在這里,記錄一下annotion在實(shí)際使用過程中一些常用的配置。

    1、一對(duì)多
    2、一對(duì)一

    常見異常及處理
    1、Could not determine type for: java.util.Set
    說不能找到這個(gè)類型,無法創(chuàng)建列
    原因:annotion不能同時(shí)放在屬性和方法上,要么都放在屬性上,或者都放在方法上

    posted @ 2009-08-04 08:52 風(fēng)人園 閱讀(432) | 評(píng)論 (0)編輯 收藏

    OperaMasks學(xué)習(xí)系列(三) 數(shù)據(jù)驗(yàn)證(原創(chuàng))

    1、簡單驗(yàn)證
       
    • @Required. 聲明一個(gè)域或Bean屬性必須具有輸入值。

    • @ValidateDoubleRange. 檢驗(yàn)一個(gè)浮點(diǎn)數(shù)取值是否在指定范圍中。

    • @ValidateLongRange. 檢驗(yàn)一個(gè)整型數(shù)取值是否在指定范圍中。

    • @ValidateLength. 檢驗(yàn)一個(gè)字符串的長度是否在指定范圍中。

    • @ValidateRegexp. 檢驗(yàn)一個(gè)字符串是否可以匹配指定的正則表達(dá)式。(OperaMasks提供了一個(gè)工具類org.operamasks.faces.validator.CommonRegexpPatterns,列出了一些常用的校驗(yàn)正則表達(dá)式)

    2、服務(wù)器端驗(yàn)證

    3、自定義驗(yàn)證錯(cuò)誤信息

    4、客戶端驗(yàn)證   
        設(shè)置form 的屬性:clientValidate="true"
        通過此標(biāo)簽自定義客戶端驗(yàn)證
        <ajax:clientValidator message="用戶名不能為w">
            嵌入javascript代碼
        </ajax:clientValidator>

    posted @ 2009-06-17 13:32 風(fēng)人園 閱讀(329) | 評(píng)論 (1)編輯 收藏

    僅列出標(biāo)題
    共10頁: 上一頁 1 2 3 4 5 6 7 8 9 下一頁 Last 
    主站蜘蛛池模板: 国产日韩精品无码区免费专区国产 | 亚洲精品无码av天堂| 久久成人永久免费播放| 久久精品国产亚洲AV果冻传媒| 免费v片在线观看视频网站| 亚洲精华国产精华精华液| 亚洲黄片毛片在线观看| 99久热只有精品视频免费看| 亚洲中文字幕无码爆乳app| 亚洲综合久久夜AV | 91精品免费久久久久久久久| 在线观看亚洲专区| 亚洲AV无码码潮喷在线观看| 美女视频黄免费亚洲| 一级毛片完整版免费播放一区| 久久久久亚洲AV无码专区体验| 成年女人永久免费观看片| 美女无遮挡拍拍拍免费视频| 亚洲影视一区二区| 亚洲成人一区二区| 成人免费在线看片| 一级毛片免费不卡| 亚洲a∨无码男人的天堂| 亚洲一区二区三区无码影院| 青青青国产在线观看免费网站| jzzjzz免费观看大片免费| 亚洲国产成人99精品激情在线| 久久久青草青青国产亚洲免观| 成年免费大片黄在线观看岛国 | 亚洲AV无码一区二区乱子伦| 日韩高清在线免费看| 久久午夜伦鲁片免费无码| 免费无码AV一区二区| 国产精品亚洲片在线va| 久久精品国产亚洲综合色| 四虎永久免费影院| 日韩不卡免费视频| 暖暖在线视频免费视频| 一级白嫩美女毛片免费| 18禁亚洲深夜福利人口| 亚洲激情视频图片|