久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3162|回復: 1
收起左側

短信貓項目總結

[復制鏈接]
ID:1 發表于 2013-6-11 17:40 | 顯示全部樓層 |閱讀模式
實現的功能:定期搜索發送任務表,按照指定的電話號碼,發送指定內容,支持小靈通。
涉及到的內容:程序對短信設備的控制,pdu編碼解碼,設計模式

遇到的問題:
1、短信設備提供的是串口接口,因為傾向于跨平臺運行這個軟件,所以采用了java作為開發工具,但是帶來的問題是java對window和linux平臺提供的串口api不同,方法也不一樣,而且如果以后根據需要,增加短信設備的話,也受到服務器提供的串口的限制。所以采用了以太網控制方式,為短信設備增加了一個RS232轉RJ45的32口串口服務器這樣就可以通過以太網來控制串口設備了,而且串口設備可以無限增加。但是這樣又帶來了另一個問題:發送什么格式的數據包才能被串口設備識別呢?我在這個地方花了些時間,串口以太網轉換器隨機附帶了一個串口模擬軟件,運行后可以從超級終端控制短信設備,然后根據這個線索,使用wireshark抓包工具對通訊中的包進行了分析,找到了對短信設備初始化的格式包,問題解決。

2、設計模式真是個好東西,優雅的解決事務問題。使用觀察者模式負責對短信設備的監聽,代碼簡約干凈,使用工廠模式,解決了對象創建混亂的問題。

3、項目初步完成后,領導又連續提出了新的要求,需要短信設備完成的功能更多了,幸虧當時把短信監控發送單獨抽取了出來,哈哈,只要把需要短信設備完成的工作添加入發送表就可以了,但是如何管理這些增加的任務呢?每提出一個要求就寫一個程序也太累了,而且以后如果數量增加了,管理也是一個難題。我充分利用了java的反射功能,首先寫了幾種模式的任務類,然后在xml配置文件里對這些類進行配置,任務程序運行時首先讀取xml,根據配置生成任務組,并且實例化,以多線程的方式運行這些類。嘿嘿,順便配了個短信鬧鐘,每天早晨給我發短信叫我起床。

心得:擺脫數據庫對思維的限制,擺脫寫軟件先設計表,考慮表結構的思想,運用面向對象的思維方式,把主要精力轉移到完成主要功能上來,另外任務模塊在設計上還不完善,找時間改成組合模式,這樣任務的耦合度就更小了,還有,是不是增加個網絡服務功能呢?開個端口監聽請求,根據請求完成任務,或者是采用ejb的方法,分布式?各有優缺點,網絡服務方式好處是通用性好,無論采用什么語言開發的,都可以調用,方便其他同事以后的開發,分布式的好處是可以遠程調用java對象,以后開發起來更靈活,功能更強大,可以組合各種功能組件快速實現任務,而且組件積累到一定的量,就會從量變到質變,到時候會發生什么呢?沒想好,繼續!繼續!


回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲三级av | 98在线视频 | 日皮视频在线观看 | 午夜在线 | 成人免费网站黄 | 久久久久一区二区 | 久久精品久久久精品美女 | 97视频免费观看 | 黄色免费片 | 国产日韩一区二区三区 | 国产一区二区在线播放 | 日本不卡视频在线观看 | 中文字幕av久久爽av | 国产精品入口66mio男同 | 亚洲国产精品久久 | 男人天堂av网 | 激情高潮到大叫狂喷水 | 婷婷久久综合 | 少妇高潮久久久久久潘金莲 | 午夜在线观看免费视频 | 亚洲视频免费在线观看 | 一级黄色片在线观看 | 欧美专区在线观看 | 午夜在线 | 97久久精品| 日韩欧美精品一区二区 | 成人三级晚上看 | 国产福利视频在线观看 | 综合久久久久 | 青青草国产精品 | 亚洲国产欧美日韩在线 | 亚洲日本国产 | 欧美狠狠操| 久久这里只有精品6 | 男人午夜影院 | 99这里只有精品视频 | 日本伊人 | 欧美一级淫片免费视频黄 | 欧美一区在线视频 | 日韩免费在线视频 | 91亚洲国产成人久久精品网站 |