re: 開源的世界很精彩 大峽 2006-05-22 13:23
@netvista
兩百年以前,當西紅柿剛在美洲大陸出現(xiàn)的時候,人們覺得他吃起來是會死人的。因此,我認為每一樣東西都不是一下子就能流行起來的。
re: 開源的世界很精彩 大峽 2006-05-22 13:20
@天之北
騙人的吧,表面看起來是.Net做的。Java做的搜索嘛,請看看
http://myrss.easyjf.com 這個里面才全是Java做的東西,連里面的內(nèi)容也都全是Java的內(nèi)容。
SF自己先占!
Sun一直表示不用Java語言本身來賺錢,基本上這么多年也一直這樣做。然而現(xiàn)在力推Netbeans,也許是開放java源碼的一個因素之一吧。不管什么,開放了,我們就能學習、研究更深層的東西(嘿嘿,不開放你也有源碼啊,笑吧),機會也就多了。.Net基本上一言堂,而Java因為開放的精神,使得這個世界豐富多彩,充滿智慧,“這里的世界很精彩”-我喜歡。呵呵
所以國內(nèi)開源項目更需要高人來參與、指點了,大家需要多放一些大師水平的代碼來供眾平庸的程序員學習。
謝謝上面的無名好心同胞給我的忠告!
中國雖然技術(shù)落后,但我們有文化優(yōu)勢。光靠現(xiàn)在EasyJF的幾個人,肯定難得把EasyJWeb做好。這里寫的這些文章,不僅是從軟件技術(shù)的角度剖析這些“神秘”的框架,同時也想找到志同道合的合作伙伴,一起投入國產(chǎn)的開源事業(yè)中。中國什么都缺,缺技術(shù)、缺資金、缺管理,但這些都是可以改變的,中國唯一不缺的是人才,缺的是人才之間的團結(jié)、合作,如果我們團結(jié),也許不會看到今天這么糟的結(jié)果。
這里沒有要夸EasyJWeb的意思(呵呵,要真是夸的話前面我也夸了webwork、struts、spring MVC的),聰明人都會自己試一試、比較比較,而不是聽別人說好就眼著屁股后面叫好。
軟件是為了提高日常工作及生活的效率,框架是提高軟件開發(fā)的效率,這是最終目標。EasyJWeb還有很多不足,歡迎對開源有興趣的朋友加入到我們的開發(fā)隊伍中。
到目前為止的幾篇算是序吧,從下一篇《玩玩Spring之IOC》將開始真正的玩Spring,請大家多提建議!
這個系統(tǒng)沒用dwr。
本文代碼是我理解的最原始、最純樸的Ajax寫法,客戶端的javascript可與服務(wù)器端的asp、php、JSP等交互的!
本例子中準確的說是:EasyJWeb+javascript+xmlhttp
打算先把文字部分做了,現(xiàn)在是最簡單的模型,主要是服務(wù)器端的設(shè)計及實現(xiàn)!客戶端那些花哨的表情啊,動作啊........等等,對這個感興趣的一起來完善吧。
re: 今天去yahoo面試,被鄙視了. 大峽 2006-05-13 01:54
嘿嘿,先占個SF!
“輪子理論”中有一句話:“ 失敗不用怕,怕的是我們連失敗的機會都沒有!”,恭喜船長在通往成功的路上前進了一小步。有時間,多研究一下算法、底層的一些東西,“知其然并知其所以然,然后再使其然!”,一起努力。
HibIdGenerator.java實現(xiàn)org.hibernate.id.IdentifierGenerator接口,會由hibernate自己調(diào)用,請參考一下hibernate的定義的主鍵生成源碼。
createQuery(String)方法有沒有,請多看看API!
@mingo
謝謝 mingo兄的建議,EasyJWeb實際是對這些邏輯進行了封裝的。也有相應業(yè)務(wù)功能的Action基類等AbstractCrudAction,有時間請在幫忙看看EasyJWeb Tools中的寫法,也請更多高手來一起研究,謝謝。
如,EasyJWeb Tools中的類似實現(xiàn)組合模糊查詢及分頁的query方法代碼:
public class MessageAction extends AbstractCrudAction {
public IPageList doQuery(WebForm form, int currentPage, int pageSize) {
String belongUser=CommUtil.null2String(form.get("belongUser"));
String scope="1=1";
Collection paras=new ArrayList();
if(!"".equals(belongUser))
{
scope+=" and belongUser=?";
paras.add(belongUser);
}
String orderType=CommUtil.null2String(form.get("orderType"));
String orderField=CommUtil.null2String(form.get("orderField"));
if("".equals(orderField))
{
orderField="inputTime";
orderType="desc";
}
scope +=" order by "+orderField;
if(!orderType.equals(""))scope+=" "+orderType;
DbPageList pList=new DbPageList(Message.class,scope,paras);
pList.doList(currentPage,pageSize);
return pList;
}
}
呵呵,水平有限,只能達到這樣了。實現(xiàn)同樣的功能,歡迎朋友們來點真正優(yōu)雅的,丟上來大家一起學習學習!
@spacecoeboy
這是開源EasyJWeb Tools中的業(yè)務(wù)引擎,EasyJWeb項目中有源代碼!
關(guān)于該示例中分頁的使用,請看這篇:
http://m.tkk7.com/easyjf/archive/2006/04/10/40169.html
@原創(chuàng)專欄 開源學習
樓主代碼有壞味道
主要是前面的組合、模糊查詢及分頁部分,由于偶webwork用得不多,沒有找到比較簡單的方法,熟悉Webwork的朋友不妨改一下query中部分不爽的代碼,丟上來大家一起學習學習!
當然其它MVC框架的粉絲不妨也來給webwork找點骨頭。嘿嘿,偶喜歡看熱鬧滴說!
框架只是工具,用熟悉了就OK。不知道大家都用什么什么框架呢?
@aspirin
這里只是完Web工程師的工作完了,不是所有的步驟完了。請繼續(xù)往下看!
在這個示例中,webwork及easyjweb的action都只有140行代碼,而struts有200多行,嘿嘿。
為了演示方便,邏輯層只是最簡單的示例。更優(yōu)雅、華麗的代碼,還請大家提供上來吧。
由于是用的struts,action中組合查詢及分頁部分占的代碼有點多。關(guān)于該示例中分頁的使用,請看這篇:http://m.tkk7.com/easyjf/archive/2006/04/10/40169.html
關(guān)于商業(yè)邏輯層中,類似如下畫蛇添足的代碼:
public boolean del(IUser user) {
boolean ret=true;
try{
this.getHibernateTemplate().delete(user);
}
catch(Exception e)
{
ret=false;
}
return ret;
}
完全是為了考慮新手理解需要。老手直接改成
public boolean del(IUser user) {
this.getHibernateTemplate().delete(user);
return true;
}
呵呵,今天可是趕了個大早啊:-)
在這個示例中,webwork及easyjweb的action都只有140行代碼,而struts有200多行。
re: 在浮躁的年代里做好學問,難! 大峽 2006-05-08 23:34
哈哈,謝謝galen兄鼓勵,先想辦法把我身上的浮躁毛病干掉先!
@hecules
呵呵,老兄說的第二個方面有點意思哈。我的理解是:生產(chǎn)力提高了,機械化水平高了,肯定是要有一大批人從現(xiàn)有的工作崗位下崗。但這一部分人可以轉(zhuǎn)到其它工作崗位,做更有技術(shù)難度的事情,甚至轉(zhuǎn)行,去做更有意義的事情。而不是像現(xiàn)在,大家跟風一樣花很多時間從一個框架學到一個框架,而沒把更多的時候時間花到業(yè)務(wù)研究及其他的系統(tǒng)底層原理研究,這是生命的浪費,也是個人力資源以及國家、社會資源的浪費。其實明白人都知道,這些框架大同小異,也就是一個工具而已,只要精通了一樣,好比小李飛刀,雖然只是一把最普通的木刀,也一樣能刀刀致命。
正如我文中提到過,發(fā)明輪子的原因,我覺得還是“輪子不合適或者不完美的問題”。該不該去發(fā)明輪子,得“實事求是,具體問題具體分析!”。如果我是一個老板,是一個企業(yè)。我要考慮政府的政策,我的資金回收情況,利潤率等等。我不會考慮得那么長遠,能殺敵(賺錢)就是好事,發(fā)明輪子的風險很大(經(jīng)常是屁股擦不干凈),需要估量成本,確保利潤,況且國內(nèi)的軟件業(yè)現(xiàn)狀就是,人員流動太大,更不利于發(fā)明輪子。但若是作為社會性質(zhì)、以非盈利為目標的開源事業(yè),我主張大家發(fā)明輪子,要敢于嘗試發(fā)明輪子。
@匿名
相當無聊,你以后做項目的時候先寫一個JDK的類庫好了,然后慢慢做...看你很喜歡發(fā)明輪子,干脆從釘子,螺絲,開始做好了.
有時間,建議這位朋友先別急著寫程序,去讀讀《中庸》吧.不要因為住在北極太冷,你就搬到南極去住,其實南極也一樣很冷!
Spring中是否有“輪子”,請大家談?wù)勛约旱目捶ǎ?/div>
re: 玩玩Spring之初章 大峽 2006-05-04 14:25
Spring的好,Spring壞,請知情者多多報料!:-)
偶也小試了一把中文版的NetBeans,感覺用戶體驗確實很不錯。站在巨人的肩膀上.......
re: EasyJF開源團隊之掃盲篇 大峽 2006-04-29 15:16
汗,是建議樓上的,不是建議樓主哈。不好意思!
re: EasyJF開源團隊之掃盲篇 大峽 2006-04-29 15:13
如網(wǎng)絡(luò)方便,建議樓主不防到www.easyjf.com看看。EasyJF開源團隊倡導立足本土化應用需求,結(jié)合國內(nèi)外先進技術(shù)構(gòu)件體系,研究適合國內(nèi)技術(shù)水平現(xiàn)狀的J2EE開源應用軟件技術(shù),提供簡易、實用的J2EE開源產(chǎn)品、中間件及開發(fā)工具!EasyDBO源碼應該能下載,或者網(wǎng)絡(luò)問題吧。剛開始....仍在探索及嘗試,有什么好的領(lǐng)域及建議,請告訴我們。謝謝
re: Java路在何方? 大峽 2006-04-19 19:23
謝謝 圣手屠鴨 兄
“21世紀什么最重要--人才”,期待牛牛的到來.......也希望團隊中的小牛牛們快快長大!:-0
re: Java路在何方? 大峽 2006-04-19 16:26
一個公司沉溺于已有的技術(shù)框架不思進去,不吸收新鮮的技術(shù),這樣的公司有活力嗎?
公司一定會有技術(shù)轉(zhuǎn)型,雖然會有鎮(zhèn)痛期,但獲益必然大于付出.
這樣的道理外星人都知道。老板也知道,當然也更會算帳!嘿嘿
也許是我運氣比較差吧,我看到或經(jīng)歷的很多項目(不是全部)基本上都是這樣:40%的時間及Money在市場公關(guān)、20%的時間及Money在技術(shù)開發(fā)(難怪很多程序員在鬧窮)、40%時間及Money在后期維護及公關(guān)(尾款及二次開發(fā))。哈哈
re: Java路在何方? 大峽 2006-04-19 12:41
re: Java路在何方? 大峽 2006-04-19 12:33
存在即合理,去年我們招人的時候,他要說會用webwork、會JSF,但不熟悉struts,我還真不敢用他啊,畢竟我們90%的項目都是struts啊!
框架充其量只是工具,MVC更是如此,若真掌握了MVC原理,會了一種框架,若工作需要你學習另外一種框架的時候,難道一周56小時,你還不能學會嗎!
會Spring、會hibernate、會MVC,熟悉、精通又能怎么?用最少的錢、人及時間,解決老板、客戶問題才是硬道理。若論技術(shù),有興趣的朋友不防對照本人愚作“論J2EE員武功修為",自測一下。
re: Java路在何方? 大峽 2006-04-18 20:30
to sharkmao
江南大俠的東東我們一直在學習哈,不旦學習SpringSide,還在學習更多的xxxSide。:-)我們的目標就是集眾家之長為我所用,提煉出一套具有中國文化特色的,呵呵,這話有點空,但我想慢慢可以做實在。一個人肯定很難做好一件事情,但若是一群優(yōu)秀的人一起,那就不一定了,中國什么最多:人才多,who 怕who!歡迎有興趣的朋友都一起來干吧!
關(guān)于發(fā)明輪子:匯編語言開發(fā)者問C的,我的匯編搞這么好了你還發(fā)明C干嘛?C問Java,我的C這么無敵,你Java搞來干什么,浪費社會資源啊。同樣的問題,JDBC問,JDO問iBatis,iBatis問hibernate.......
re: Java路在何方? 大峽 2006-04-18 16:43
“因為我們浮躁,所以我們沒有發(fā)明C/C++、Java、Ruby,甚至面對Spring、Hibernate,我們也只有膜拜。”
re: Java路在何方? 大峽 2006-04-18 16:42
hecules 說到點子上了哈,軟件行業(yè)的市場、公關(guān)等就不用細說,就憑民間流行的一句話:“80%軟件公司都是騙子公司”,應該能證明很多東西。這更多應該跟我們所處的的大環(huán)境有關(guān)系。
不過我覺得技術(shù)落伍還是有很大一部原因,國內(nèi)很多中小型軟件公司的CTO,35左右的那種,停留并滿足于自己前期的開發(fā)構(gòu)架,不愿接受新東西,更不會花成本去嘗試新東西,應該也是落伍的一個表現(xiàn)吧。
江南大俠說得很有道理哈,剛剛開始肯定不利于職場,更何況成千上萬的開源項目,成功的也就那么幾個,若達不到“簡易、實用”的目標,也只能當是練練手了。
編語言開發(fā)者問C的,我的匯編搞這么好了你還發(fā)明C干嘛?C問Java,我的C這么無敵,你Java搞來干什么,浪費社會資源啊。同樣的問題,JDBC問,JDO問iBatis,iBatis問hibernate.......
re: 忽悠一下AJAX 大峽 2006-04-14 18:17
Ajax(Asynchronous JavaScript and XML),中文翻譯即異步加哇十塊撲特與二克十二蒙(:-0),這個詞好像是2005流行起來的吧,借用某位大蝦的一句話:“新瓶裝老酒”。
嘿嘿....俺們做技術(shù)的很累,所以建議大家多來一點娛樂元素。
re: 論J2EE程序員的武功修為 大峽 2006-04-12 14:09
Disuzz!,應該算是第三層中禪僧線路的一個分支。哈哈
re: 論J2EE程序員的武功修為 大峽 2006-04-12 11:54
@red-wolf
哈哈。看來武功招式出自一家啊。來比劃比劃
樓上的建議很好,因為IPageList屬于業(yè)務(wù)層,而WebForm屬于表示層,因此現(xiàn)在我們是通過一個簡單的Util實現(xiàn)兩者的轉(zhuǎn)換的,如下所示:
public static void saveIPageList2WebForm(IPageList pList,WebForm
form)
{
if(pList!=null){
form.addResult("list",pList.getResult());
form.addResult("pages",new Integer(pList.getPages()));
form.addResult("rows",new Integer(pList.getRowCount()));
form.addResult("page",new Integer(pList.getCurrentPage()));
form.addResult("gotoPageHTML",CommUtil.showPageHtml(pList.getCurrentPage(),pList.getPages()));
}
}
嘿嘿,臺階也罷、失敗也罷、成功也罷,多來點技術(shù)帖才是硬道理。
希望 沙沙 同志能一如即往的支持我們,謝謝!
re: 在浮躁的年代里做好學問,難! 大峽 2006-04-10 10:39
樓上的 沙沙 老兄想必一定是一個完美主義者,我這篇文章充只算上一篇爛文,沒有一點技術(shù)含量,不是說明文、更不是報告,完全不必較真。不過您所表達的一些思想有點極端,本想駁您幾句,可惜以前我們沒學過辨論。歡迎多發(fā)點技術(shù)帖,提出EasyJWeb的不足,代碼漏洞,設(shè)計缺陷點,我們一定感激不盡。
希望 沙沙 同志能一如即往的支持我們,謝謝!
我們正在籌備CVS服務(wù)器,過段時間肯定能看得到。
re: 在浮躁的年代里做好學問,難! 大峽 2006-04-07 13:38
@沙沙 老大
呵呵,你說的情況是要看實際情況啊,有的小型應用就不喜歡配置什么的。當然就可以不用了。而中大型的,為了便于維護及擴展,還得需要要配置(什么OC、OP、OA的通通要:-0)。不能走極端哈,更不能只看表面。
re: 在浮躁的年代里做好學問,難! 大峽 2006-04-07 13:34
re: 在浮躁的年代里做好學問,難! 大峽 2006-04-07 13:33
浮躁也得繼續(xù)做學問,哈哈.
請大家有時間幫忙看一下我們近期開源的系統(tǒng)代碼吧,幫忙指點指點啊.
下載地址:
http://www.easyjf.com/download.htm
一個是簡易訂銷管理系統(tǒng),涉及的東西比較全面,演示:
http://asp.easyjf.com
一個是MeyboMail郵件客戶端,主要涉及java mail及xml等,演示示:
http://mail.easyjf.com
一個是論壇系統(tǒng).演示:
http://www.easyjf.com/bbs/
我們?nèi)情_源的,請大家支持開源.
re: 在浮躁的年代里做好學問,難! 大峽 2006-04-07 13:33
EasyJF開源團隊于2006年初才開始建設(shè),因此當前整個開發(fā)團隊組建以及所發(fā)布的作品,都顯得極不成熟。EasyJWeb仍然處于測試階段,錯誤不妥的N多地方存在,在所難免。請廣大的Java愛好者多多批評及建議,同時也非常歡迎您能加入到我們的國產(chǎn)開源隊伍中。
謝謝樓上的!
迫切需要得到大家的關(guān)注啊。本來我們技術(shù)又差、底子又薄,如果大家不關(guān)注、不支持,肯定永遠都做不好的,希望更多的人來給我們提批評建議.
路還長著呢,現(xiàn)在好不容易走出了第一步哈。