于吉吉的技術博客

          建造高性能門戶網

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            65 隨筆 :: 6 文章 :: 149 評論 :: 0 Trackbacks

          web開發

          posted @ 2012-03-19 16:33 陳于喆 閱讀(4385) | 評論 (3)  編輯

               摘要: 其實為什么javascript的定時器會出現所謂的不可靠或偏差的情況,這是可以理解的,最主要的問題是它們并不是所謂的線程,其實
          javascript是運行于單線程的環境中,而定時器只是計劃代碼在未來某個執行的時間,執行的時間點是不能被保證的,因為在頁面的生命周期中,不同時間可能存在其他代碼,或各個瀏覽器的內核控制住javascript進程。  閱讀全文
          posted @ 2012-01-10 15:15 陳于喆 閱讀(3548) | 評論 (6)  編輯

          posted @ 2011-12-06 16:22 陳于喆 閱讀(4993) | 評論 (7)  編輯

          posted @ 2011-08-21 15:55 陳于喆 閱讀(6429) | 評論 (0)  編輯

          posted @ 2011-06-02 16:11 陳于喆 閱讀(972) | 評論 (0)  編輯

               摘要: google map測距的實現和分析
          不斷有傳聞google map在今年的7月1號之后在大陸停止運營,具體原因是因為天朝的牌照問題,這個就不多講了,可以發現現在搜房網的地圖,和安居客等的地圖紛紛都撤下 google map,而重新選擇了mapabc或baidu,當然網易房產地圖也不例外,現在也在使用mapabc作為網易房產地圖的開發,預計將在6月底前上線,到 時再跟大家分享一下mapabc的一些開發實踐。
          還是說回google map的開發,自從上次建了個qq群就有不少人在問測距怎么實現,當然很多人想的是拿來主義的,當時是拿http://xf.house.163.com /gz/map/000B.html的例子出來,但確實頁面上進行了封裝也寫得比較亂,所以還是比較難以抽離,先給個簡單實現的例子:  閱讀全文
          posted @ 2011-06-02 14:01 陳于喆 閱讀(3971) | 評論 (1)  編輯

               摘要: 有朋友去一家大型的互聯網公司參加了java程序員的筆試,抄下了一些筆試題,可能有的抄的并不全,試了解答一下,有些還真的答不出來

          1.cookie和session的作用以及他們的應用場合
          2.怎樣讓jvm加載一個Class的同時執行一段代碼
          3.post和get區別
          4.事務的屬性有哪些?寫出spring或jdbc管理事務的例子
          5.實現一個高并發、高性能的hashmap。寫出偽代碼
          6.解析一段xml,拼接成一個url。  閱讀全文
          posted @ 2011-04-21 17:23 陳于喆 閱讀(3773) | 評論 (9)  編輯

               摘要: google Map的交互基本都是事件驅動的,這表示js是通過生成時間來響應交互的,并且處于監聽我們設定的事件,每個 Google Maps API 對象都可導出大量已命名的事件。如果程序想要實現某些事件,則會為這些事件注冊 Javascript 事件偵聽器,并會在通過在 google.maps.event 命名空間中注冊 addListener() 事件處理程序接收這些事件時執行相應的代碼。

          初步的事件響應

          google map中的所有對象都可以對用戶事件監聽并作出響應,用戶的事件可以包括鼠標或鍵盤,對象可以監聽以下這幾種事件:
          'click','dblclick','mouseup','mousedown','mouseover','mouseout'
          這些事件看上去很像標準的DOM事件,但這些時間可以在不同的瀏覽器實現不同的DOM事件模型。  閱讀全文
          posted @ 2011-03-30 16:58 陳于喆 閱讀(26597) | 評論 (0)  編輯

               摘要: 本來是想將房產地圖google map的應用記錄一個系列,但繼1)記錄完之后總找不到時間繼續記錄下去,1)中主要解決了Google Maps JavaScript API V3 與 Google Local Search API兩者由于版本問題帶來的一系列麻煩,思路是使用一個iframe作為兼容的跳板,子頁面應用Local Search API獲得查詢的result后返回給父頁面,下面再記錄一些地圖坐標的定位和一些UI的組成。

          可參考 http://xf.house.163.com/gz/map/00Xa.html  閱讀全文
          posted @ 2011-03-05 16:02 陳于喆 閱讀(4421) | 評論 (2)  編輯

               摘要: 以前的房產地圖一直都是使用有道地圖,雖然有道地圖是很好,但是為了更好,還是決定使用google地圖來重新開發^_^,下面是一個開發完畢的簡單應用http://xf.house.163.com/gz/map/000B.html

          1)整合Google Maps JavaScript API V3 與 Google Local Search API

          Google Maps JavaScript API V3
          地址 http://code.google.com/intl/zh-CN/apis/maps/documentation/javascript/

          Google Maps JavaScript API V3 文檔讀起來真的是很清晰,各種demo也很齊全,并且論壇的擁有巨大的論壇支持,對比了一下Google Maps JavaScript API V3 和 V2 的版本,雖然第3版的 Google Maps API 看上去跟第2版挺相識,但在內在機制上有了較大的變化,尤其在對移動瀏覽器的支持上,專門針對iphone和android  閱讀全文
          posted @ 2011-02-12 15:57 陳于喆 閱讀(4969) | 評論 (6)  編輯

               摘要: The minimum requirement for a POM are the following:

          project root
          modelVersion - should be set to 4.0.0
          groupId - the id of the project's group.
          artifactId - the id of the artifact (project)
          version - the version of the artifact under the specified group

          Here's an example:  閱讀全文
          posted @ 2010-12-29 17:50 陳于喆 閱讀(333) | 評論 (0)  編輯

               摘要: 目前幾套系統中主要使用的hessian進行遠程調用webservice服務的有hessian的 HessianProxyFactory(com.caucho.hessian.client.HessianProxyFactory)和 spring的 HessianProxyFactoryBean(org.springframework.remoting.caucho.HessianProxyFactoryBean).

          1.HessianProxyFactory
          查看HessianProxyFactory源碼后發現,hessian在創建http請求連接webservice服務并沒有對連接超時進行相關的參數設置,所以當網絡出現問題就會造成整個hessian處理的阻塞,進而阻塞整個線程后續的處理
          以下是HessianProxyFactory對連接處理的源碼

          protected URLConnection openConnection(URL url)
          throws IOException
          {
          URL  閱讀全文
          posted @ 2010-12-16 14:46 陳于喆 閱讀(12040) | 評論 (11)  編輯

               摘要: 對很久以前的一個bug進行分析和總結

          function parsePost(data, action) {
          try {
          var postData = eval("(" + data + ")");

          // TO DO1
          } catch (e) {

          // TO DO2
          }
          }


          這是一段頁面的老代碼,data是數據庫body字段,既是用戶錄入并取出的數據,由于業務的關系,data是以json格式保存的,為了使數據能實現兼容,這里使用try...catch...方式處理,如果變量data能被轉換成對象,則執行TO DO1,否則執行TO DO2.

          我們知道eval的作用很簡單,就是把一段字符串傳遞給js解析器,由javascript解析器將這段字符串解釋成為  閱讀全文
          posted @ 2010-12-15 11:31 陳于喆 閱讀(4364) | 評論 (2)  編輯

               摘要: 大名鼎鼎的分布式緩存系統memcached,在開源社區中可謂是無人不知無人不曉,memcached支持分布式的橫向擴展,但memcached的服務端卻是單實例,并無"分布式"的功能,所謂的分布式只是客戶端在存儲的主鍵做分布的存儲;還有memcached組件緩存對象,如果組件無進行序列化必定無法正確取得數據;如何使用memcached的java組件來監控memcached的運行狀態;以上等等的問題是我在日常的工作中碰到并解決的,拿出來跟大家做個分享^_^

          對象的序列化
          首先memcached是獨立的服務器組件,獨立于應用系統,從客戶端保存和讀取對象到memcached是必須通過網絡傳輸,因為網絡傳輸都是二進制的數據,所以所有的對象都必須經過序列化,否則無法存儲到memcahced的服務器端.
          正如我們以往在集群中應用的序列化一樣,memcached的序列化的性能也是往往讓大家頭疼,如果我們對我們的domain類進行對象的序列化,第一次序列化時間會比較長,但后續會優化,也就是說序列化最大的消耗不是對象的序列化,而是類的序列化,如果存儲的只是一個String  閱讀全文
          posted @ 2010-12-08 15:00 陳于喆 閱讀(5620) | 評論 (4)  編輯

               摘要: 很久以前就見過這本1000頁的書<代碼大全>,覺得應該是說些寫代碼的東西,沒怎么又興趣去讀它,一次偶然的機會,發現自己是誤解了它,<代碼大全>覺得應該叫軟件百科好像更合適一點,因為它里面涵蓋了架構,分析,設計,編程,測試,重構,面向對象,調試,規范,管理,軟件質量控制,協作,優化,開發工具,注釋,甚至個性,開發藝術等等等,讓人感覺就是一本軟件百科全書.

          書讀的不多,不過剛開始讀了100多頁有一點感悟,所以做了一點記錄,叫讀<代碼大全>的一點記錄之1.

          利用隱喻
          隱喻通過把軟件開發與你所熟知的事情聯系在一起,從而使你對其更有深刻的理解,正是因為如此在計算機中的發展不過僅有數十年的歷史,卻擁有著所有科學最為豐富多彩的語言

          蓋房子的隱喻
          狗屋
          霹靂啪啦,木材加鐵釘,犯錯了怎么辦?無所謂,拆了再來過  閱讀全文
          posted @ 2010-12-07 17:59 陳于喆 閱讀(1255) | 評論 (0)  編輯

          Full web開發 Archive

          主站蜘蛛池模板: 原平市| 建宁县| 盐边县| 海门市| 河津市| 饶阳县| 井冈山市| 博客| 阿荣旗| 丁青县| 蕉岭县| 绩溪县| 长春市| 通州区| 通山县| 乐陵市| 皮山县| 衡东县| 太谷县| 红安县| 榆林市| 剑阁县| 花莲市| 玉田县| 襄樊市| 邻水| 古浪县| 深泽县| 农安县| 宝清县| 泸溪县| 沙坪坝区| 康乐县| 宜川县| 榆中县| 桐梓县| 烟台市| 繁昌县| 蛟河市| 新晃| 江永县|