Time of Update: 2018-12-04
Selenium是一個很好用的Web自動化測試載入器。Aaron很久以前使用過Selenium,不過僅僅用了其提供的API來寫測試代碼,也在blog上發過一個簡單的程式碼範例。近來有好幾個博友加我MSN問我有關Selenium錄製的問題,可惜以前沒有使用過,愛莫能助。鑒於此,昨天晚上磨嘰了一陣子終於讓指令碼給跑起來了。Aaron希望對於那些博友及其他人會有協助。Selenium IDE簡介和安裝 Selenium錄製功能是由Selenium IDE實現的。根據官方網站當前的介紹:
Time of Update: 2018-12-04
Bromon原創
Time of Update: 2018-12-04
二、spring管理對象的簡單例子Bromon原創 請尊重著作權 任何需要交給spring管理的對象,都必須在設定檔中註冊,這個過程被稱為wiring,下面做一個最簡單的Hello world示範,我們將要註冊的類如下: /* * 建立日期 2005-3-22 */ package org.bromon.spring.test; /** * @author Bromon */ public class HelloTalker {
Time of Update: 2018-12-04
可以在建立表時建立單個 PRIMARY KEY 約束作為表定義的一部分。如果表已存在,且沒有 PRIMARY KEY 約束,則可以添加 PRIMARY KEY 約束。一個表只能有一個 PRIMARY KEY 約束。如果已存在 PRIMARY KEY 約束,則可以修改或刪除它。例如,可以讓表的 PRIMARY KEY 約束引用其他列,更改列的順序、索引名、聚集選項或 PRIMARY KEY 約束的填滿因數。但是,不能更改使用 PRIMARY KEY 約束定義的列長度。注意若要修改 PRIMARY
Time of Update: 2018-12-04
中學那陣很羨慕別人有個錄音機,這東西雖然叫錄音機,但是90%的時候還是用來放音的。兩個門的那種最屌,雖然我至今也沒想明白同時放兩盤磁帶有什麼作用。後來有機會到一同學家瞻仰那玩意兒。。我說的是錄音機那玩意兒。。該同學放了一段我始終聽不懂的音樂。。我無比崇敬。。我連音標都還沒搞明白。。兄弟你都能聽外語歌曲了。。兄弟說我呸。。人家這是粵語。。這樂隊叫比昂。。我k。。真牛逼。。連逼都昂。。服了。我決定以後都聽他了。。後來還在高中的聖誕晚會上無比裝逼的唱了一個長城。。技驚四座。。一個從來不聽英語課的哥
Time of Update: 2018-12-04
杭州古來名氣之大,天朝縱然泱泱,也再無第二城能居其右。在其他城市還在炫耀自己的文化名人的時候,這裡的人已經在考慮建立准入制度,為遷客騷人頒發暫住證以及為發展中名人建立收容所。僅一個西湖一個靈隱就已牛人成堆將星雲集,在此散步你需碎步輕踱,免踩了蘇小小的裙腳得來小姐嗔怪驚了武二郎的宿醉招來打虎一怒,醉月飛觴也勿高聲喧嘩,會惹來於廷益的泠泠清風嶽武穆的沉鬱英武。此處有白居易的文採風流蘇東坡的豪氣幹雲,也曾看王右軍的萬古行序濟癲和尚的瘋中傳奇,範蠡在此施輯西施在此浣紗。九泉之下不知多少文人相得英雄相惜,
Time of Update: 2018-12-04
使用觀察者(Observer)實現對象監聽Bromon原創 請尊重著作權 有非常多的時候,我們希望自己的程式能夠監視資料的變化,然後做出響應,這種情況非常多,比如探測資料庫中資料的變化、檢測使用者狀態的變化等等。通常我們都缺乏一種雙工通訊的機制,只能選擇讓程式做論詢,隔一段時間檢測一次資料變化,記錄下來與上一次檢測結果做對比,從而判斷資料是否發生了變化。毫無疑問這樣的方式很笨拙,不僅寫起來痛苦,跑起來也耗資源,是典型的用80%的時間解決20%的問題。
Time of Update: 2018-12-04
C/C++ code/*完成+,-,*,/和(),並且運算元為個位元的中綴運算式轉尾碼運算式操作。假設運算式是合法的*/string mid_to_postfix(const string &str){ string result;//儲存尾碼運算式 stack<char> s; map<char,int> m;//儲存算符的優先順序 /* 規定優先順序越高則整數值越大,加減同層級<乘除同層級
Time of Update: 2018-12-04
先定義一下: 碼元速率:Rc 資訊速率:Ri 如果我們使用二進位碼元,那麼一位碼元就表示一位資訊,也就是說資訊是由一個bit來表示的,而對於二進位的碼元來講,一個碼元就是一個bit的二進位碼.這樣來講,如果1秒鐘傳輸2400bit的資訊,也就需要1秒鐘傳輸2400個的碼元.即Rc=Ri. 如果我們使用八進位的碼元,那麼一個碼元就可以表示三位資訊,也就是說資訊由三個bit來表示.對於八進位的碼元來講,一個碼元就是三個bit的資訊.這樣,如果1秒鐘傳輸2
Time of Update: 2018-12-04
整理下思路,如果真的是中文無法正常顯示的問題,也就是字型設定問題,是不應該有檔案能夠正常顯示中文的,應該全部亂碼才對。而事實上並非如此,所以這個猜測可以排除。那麼,會不會是檔案編碼的問題?Linux下預設的編碼是UTF-8,而Windows下預設的編碼是GB2312/GBK。難道是編碼問題引起的問題?切換到Windows系統下,輸入一段中文後,儲存為UTF-8的txt檔案,然後再另存同一個檔案為GB2312編碼格式。再次切換到Ubuntu
Time of Update: 2018-12-04
1.查看系統是否有ftp服務ps -e | grep vsftpd 2.按裝vsftpdapt-get install vsftpd 安裝完成後,vsftpd會自動開啟,而且會給系統建立一個ftp的使用者。 3.重啟/etc/init.d/vsftpd restart 4.預設目錄預設情況下vsftp自動開啟匿名帳號,其預設目錄可以查看/etc/passwd 看ftp賬戶對應的目錄列比如我這裡是ftp:x:114:121:ftp
Time of Update: 2018-12-04
遞迴函式,是指某一函數內部自己直接或間接地調用自己,即直接遞迴和間接遞迴。是語言中比較進階的技術用法。遞迴函式之所以難,是因為是一種過於抽象化的技術,寫代碼的時候無法直觀的看出邏輯是否符合自己要求,因此想一次性寫好遞迴函式,是一件很困難的事情,必須要程式運作起來執行遞迴函式的代碼才能看出是否正確,而且進行測試的難度也很高,有時的隱含bug可能要軟體上線後才會漸漸體現出來。筆者寫過幾次較為複雜的遞迴函式,總結出了一些寫遞迴函式的技巧和方法,這裡特地拿出來給大家分享,如果各位還有更好的想法,歡迎多加
Time of Update: 2018-12-04
Time of Update: 2018-12-04
三、spring中的hibernate開發Bromon原創 請尊重著作權 spring中對hibernate的支援是非常強大的,從一個簡單的例子就看得出來,從這個例子中我們還將對所謂的輕量級容器做一些討論。 首先需要配置資料來源,通常我們有兩種方式獲得Connection,一是自己編寫代碼獲得串連,二是從JNDI環境中得到DataSource,然後產生一個Connection。無論怎樣,既然是spring下面的對象,就應該註冊到設定檔中。假設我們需要一個串連mysql下面一個叫做examer
Time of Update: 2018-12-04
[ZT]全世界所有程式員都會犯的錯誤-蔡學鏞當年,國際巨星成龍的「龍種」曝光,眾人指責他對不起嬌妻林鳳嬌,逼得他出面召開記者會,向世人自白他犯了「全世界所有男人都會犯的錯誤」。從來沒犯過這種錯誤的我,也因此常常認為自己不是個男人。雖然沒犯過「全世界所有男人都會犯的錯誤」,但是我倒是曾經犯了「全世界所有程式員都會犯的錯誤」。不管使用何種語言,全世界所有程式員都一定犯過這種錯誤,那就是:太依賴編譯器,卻不知道編譯器做了哪些事。一般來說,越高階的程式語言,會提供越多文法上的便利,以方便程式撰寫,這就俗
Time of Update: 2018-12-04
以前寫HBM,用一對多或多對多的時候預設總是加上“inverse=true”。當時想法很簡單就是由雙方來維護之間的關聯關係。今天才終於明白inverse的真正含義了!其實inverse不複雜,但是要真正明白還是要稍微看一下源碼。inverse的真正作用就是指定由哪一方來維護之間的關聯關係。當一方中指定了“inverse=false”(預設),那麼那一方就有責任負責之間的關聯關係,說白了就是hibernate如何產生Sql來維護關聯的記錄!舉個最簡單的一對多父子關係。那麼代碼就寫成:父親中的關係映
Time of Update: 2018-12-04
ERROR 1005: Can't create table (errno: 121)errno 121 means a duplicate key error. Probably the table already exists in the InnoDB internal data dictionary, though the .frm file for the table has been deleted. This is the most common reason for
Time of Update: 2018-12-04
大多數情況下,很少使用“inverse=false”,但是我還是想仔細研究一下(這樣可以更加理解“inverse=true”)。 ^_^為什麼很少使用“inverse=false”?原因很簡單之前也提到過,就是不會對雙向關係進行最佳化。 還是來看一個父子的例子: 父親中的關係映射{set name=children lazy=true inverse=false} {key column=parent_id/} {one-to-many class=test.Child/}{
Time of Update: 2018-12-04
Handler.sendMessage(new Message). 這個方法是指 Handler 在發送訊息的時候,需要發送一個新的對象。也就是每次在發送訊息時,在更新了 Date 後,需要重新構造 Message 對象,而不是利用已經構建的對象,否則會報錯:06-27 09:25:39.073: ERROR/AndroidRuntime(1170): android.util.AndroidRuntimeException: { what=0 when=3496212 arg1=10 obj=
Time of Update: 2018-12-04
Spring的一些應用經驗(1)- -