2015年度總結--javaWeb


注:本來應該前的發,不過過年沒有心思管博客了,另外網絡也不是很方便,我想可以幫助大家了解一下javaweb吧。

之前的文章中說到,由於要做手機端安卓程序,所以開始使用java。實際上大部分的java程序都是放在瀏覽器上,也就是web應用,所以當然要看看java怎么開發web項目了。

實際上很多編程語言都提供web支持,因為web開發需求量實在是很多,我之前是學asp.net,后來又看過python的django。

之前用asp.net的時候並沒有很好的理解web開發技術,因為有很多服務器端組件,后來asp.net也有mvc的開發模式,不過我是通過django對mvc有了比較直觀的了解。

因此我就想通過java來實現,實際上基本上都是差不多的,view都是html、css之類,mould也基本上差不多,control的代碼是java代碼,另外頁面模板是使用的jsp、需要了解el表達式。

不過java中比較麻煩的地方是,要對不同的框架進行組合,不像asp.net和django,都已經集成好了。

一開始組合這些框架就遇到不少麻煩,首先要下載jar包,然后一開始不知道怎么配置就不停的報錯,以至於我都放棄了不玩了。

另外,我發現eclipse很不好用,錯誤提示就很不友好,不像visual studio只提示真正出錯的地方,后來換成Intellij Idea感覺好多了,起碼錯誤提示可以把用戶代碼和框架代碼區分開來。

經過無限報錯解決完錯誤以后,這種通過手動加入jar包的方式,javaWeb的框架就可以運行起來了,然后就可以用來開發項目了。

后來公司也確實有項目中用到了,公司人手不夠,於是我就跑去搞web項目了,框架什么的倒是沒有什么問題,只是時間上沖突了,搞得很郁悶,不過通過這個項目對javaweb更熟悉了,也寫了一些比較復雜的sql語句,消除了之前對sql語句的"恐懼感"。

再后來看到公司其他做web開發同事,是使用maven來構建項目,於是我又學習了一下怎么用maven來構建項目,這樣在拷貝代碼的時候就不會拷貝很多的jar文件。

在一個web項目中服務器端的部分,java能提供非常好的支持,也有很多現成的東西可以用。但感覺在處理前端網頁的時候,覺得有很多不足的地方,我做的那個項目,只有美工提供的靜態頁面,然后其他的東西都是由開發人員來處理。

目前有很多地方做web項目,采用前后端分離的方式,之前發過一個ReactNative的文章,就有一些做前端開發的朋友來加我的qq,於是我又去了解了一下前端開發。

前端我的理解就是用html、js來編寫一個應用,通過ajax的方式從服務器獲取數據,然后做后端開發的同學就只管提供json格式的數據就可以了。

前端開發有一套比較完整的方案,比如先要在本地運行一個web服務器,然后開發的時候修改了目錄中的代碼,服務器可以即時更新;代碼在發布的時候需要合並壓縮,這樣加載更快;angularjs可以提供前端的模板,這個模板比jsp的模板要好,因為可以動態更新,這是服務器端模板做不到的;另外,angularjs提供的功能,可以讓頁面模塊化,對於提高開發效率是很有好處的;css也有一些優化的方案,less、sass。

這里值得一提的就是angularjs,我在web項目中並沒有用angularjs,在用html5開發手機應用的時候,看到ionic,這個是使用angularjs的,在用ionic做手機應用的時候,大概對angularjs也有一些了解了。

angularjs學起來並不容易,有很多新的概念,實際使用的時候總會遇到一些問題。不過對於提高開發效率確實是很有幫助的。

再說說我做的那個web項目吧,從頁面上看有很多表格,每個表格都要有導出excel的功能。於是我就去找了一個表格控件flexgrid。使用表格控件倒是沒什么問題,就是把表格的頭部都定義好,添加請求數據的url,在后台返回固定格式的數據個表格控件就可以了。

但由於時間上沖突了,我沒有去管后來的工作,如果有很多表格,每個表格的信息都去手動定義,效率是很低的,后台返回數據的代碼也有很多都是重復的。這樣開發的時候耽誤時間,維護也很麻煩。

如果多想一下,對flexgrid進行一些封裝,跟后台的代碼做一些融合,也不需要增加多少額外的東西,是可以減少很多重復的代碼,會節省很多時間。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM