<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    最近要在一個項目中使用java, 本來是用.net開發(fā)的, 可是驗收時用戶要求用java平臺,只好進(jìn)行移植工作了. 一直使用的是.net開發(fā), JAVA只是關(guān)注, 沒有深入研究, 等實際應(yīng)用時才發(fā)現(xiàn)自己水平有限, 問題一堆.
    把最近碰上的問題做些整理:

    使用JAVA平臺的問題:
    1. 開發(fā)工具太多, 什么Eclipse, jbuilder等,各有不同, 讓人熟悉就花時間了, 本為以為對JB比較熟悉,又有2006版本了, 就用它吧, 可是才兩天, 就發(fā)現(xiàn)自己的代碼文件中的中文變?yōu)閬y碼了, 當(dāng)然網(wǎng)上有一堆解決方案, 只是心里不爽, 直接不用了, 改為eclipse了, 操作界面不是很熟悉, 與VS.NET IDE還是有不少區(qū)別, 只是用多了自然就熟悉了,
    又從網(wǎng)上當(dāng)了一堆插件, 什么tomcat, xml編輯器, 沒有用myeclipse, 雖然支持JSP,以前用過一下, 也不太好用, 其它的就沒找到什么好東西了, 時間也不允許, 至少現(xiàn)在可以調(diào)度JAVA代碼了, JSP的調(diào)試再說吧.
    2. 開始整的時候,發(fā)現(xiàn)自己在WEB開發(fā)方面熟悉的是VS的ASPX事件模型, 反而不知道如何處理JSP了, 只好使用以前ASP的模式, 使用form提交, 感覺真是太落伍了, 雖然現(xiàn)在有許多AJAX之類的東西, 也支持客戶端事件模型, 實在沒時間研究這些東西了. 先做出來再說.
    數(shù)據(jù)庫連接類使用了以前jive中的幾個類, 支持在xml中配置連接等, 再自己寫了一個類, 從XML中讀取SQL語句, 差不多能用.
    3。在網(wǎng)上搜索了一把,未找到在eclipse中對web service支持比較好的plugin,發(fā)現(xiàn)版本都比較低,似乎久未更新了,JB下到是有不錯的設(shè)計和編譯界面,只是JB其它太爛。


    字符集問題:
    使用java首先就要碰上一個中文字符的顯示和處理問題, 這些問題總是很煩, 要對request進(jìn)行編碼才能解決.
    既然使用非MS平臺, 數(shù)據(jù)庫可能就不會用到mssql server了, 使用mysql, 發(fā)現(xiàn)要移植以前的數(shù)據(jù)還是比較容易, 但mysql的驅(qū)動實在不好弄, 剛開始使用純JDBC的驅(qū)動, 結(jié)果發(fā)現(xiàn)在中文字符的處理上始終有問題, 只好
    網(wǎng)上查原因, 發(fā)現(xiàn)jdbc驅(qū)動的版本太低, 在判斷中文字符上有問題, 升級驅(qū)動程序, 可以插入和顯示了, 但SQL中是中文, 可是進(jìn)了數(shù)據(jù)庫就是亂碼, 試了N遍也不行, 只好改為jdbc-odbc.
    但接下來在執(zhí)行batch sql時又報錯了, 說mysql odbc driver 的SQL語法錯, 檢查了半天, SQL也能在mysql中執(zhí)行的, 就是不能通過JAVA提交執(zhí)行. 用的是mysql 5.0.X, 支持unicode 的編碼建表. 最后只能采用一個折衷的辦法,自己寫一個批量執(zhí)行SQL的類,采用“;”分隔多個SQL,在調(diào)用時仍然一行一行的執(zhí)行,郁悶。

    最終的字符集解決辦法:
    頁面上要設(shè)置字符集的輸出格式,如GBK或GB2312,另外,如果使用統(tǒng)一的包含文件定義輸出字符集,還是不行,必須在每個頁面中單獨定義,也可能是我的INCLUDE方式不對;
    數(shù)據(jù)庫連接字符串中也要設(shè)置編碼;
    在傳遞數(shù)據(jù)到DB的SQL還要對中文進(jìn)行編碼;
    String key = new String(request.getParameter("txtKey").getBytes("ISO8859_1"));
    最后還有一個問題是,如果TOMCAT編譯JSP文件生成的JAVA文件有亂碼,那么在訪問的時候頁面上總是要報錯,什么"delete tokens"之類的,此時要刪除掉tomcat\work目錄下的中間編譯代碼才行;


    控件及常用庫
    WEB控件, 網(wǎng)上有一堆各種各樣的lib和控件, 但這些東西太浪費時間, 光是上網(wǎng)找就比較花時間了, 下回來試用也有各種各樣的問題,
    每個控件有自己的特色, 而且每個總是滿足了這個,滿足不了那個需求, 要都滿足, 還是要收費的才行, 畢竟天下沒有多少免費的午餐;
    主要有幾個:
     1。數(shù)據(jù)顯示表格控件,應(yīng)該能支持排序,有緩存機(jī)制,能分頁,能設(shè)置格式,支持ResultSet或ArrayList之類的,還要有導(dǎo)出excel等功能;最好要能簡單使用。
     2。圖表控件,最有名的當(dāng)然是cewolf/jfreechart,只是要使用它自己定義的DatasetProducer,不能直接使用ResultSet,也是個麻煩事,不過的確是很不錯的控件了。


    小結(jié)
    1。經(jīng)過這次移植,發(fā)現(xiàn)JAVA還是有許多很牛的地方,采用hashmap來緩存數(shù)據(jù),效率的確很不錯,只是用得太多,缺乏管理機(jī)制,有點混亂了,下一階段再重構(gòu)一下,形成一個管理框架最好;
    2。eclipse開發(fā)的確很不錯,與vs ide差別是比較大,只是使用習(xí)慣了之后發(fā)現(xiàn)其功能強(qiáng)大,而且可以找些plugin來擴(kuò)展功能,估計我只是看到了點皮毛而已。
    3。在JAVA下開發(fā),使用Javascript太多,還沒找到更好解決辦法,水平有限;
    4。與另一個人一起開發(fā),大家的編程風(fēng)格和代碼不夠規(guī)范,使用了一些重復(fù)的類和方法,這在后期維護(hù)是個工作,時間太緊,項目總是這樣,就沒得多少提高了;

    個人水平實在有限,上面只是一面之詞,項目月底才結(jié)束,有什么變更再補充。

    posted on 2005-12-17 16:02 Java,研究之路 閱讀(1484) 評論(3)  編輯  收藏
    Comments
    • # re: Java項目開發(fā)筆記
      clawhammer
      Posted @ 2005-12-18 21:36
      不好意思!覺得你水平確實是有限的很!自己不會用就怪jbuilder太爛,jb2005以后就沒有中文問題了,出了問題是你自己的事!雖然eclipse現(xiàn)在是很火,但作為一個好用的ide還是跟jb有很大差距,尤其是在j2ee開發(fā)上面。java上面,你是很需要提高。  回復(fù)  更多評論   
    • # re: Java項目開發(fā)筆記
      Java,研究之路
      Posted @ 2005-12-18 23:09
      謝謝指點.  回復(fù)  更多評論   
    • # re: Java項目開發(fā)筆記
      clawhammer
      Posted @ 2005-12-19 10:16
      對不起上次說的有點過火了!  回復(fù)  更多評論   

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
     
    主站蜘蛛池模板: 一级日本高清视频免费观看 | 久久精品国产亚洲AV未满十八| 久草免费手机视频| 亚洲阿v天堂在线| 成全高清在线观看免费| 亚洲一区二区三区自拍公司| 国产国产人免费人成成免视频| 亚洲AV成人潮喷综合网| 人体大胆做受免费视频| 中文字幕第一页亚洲| 搡女人免费免费视频观看| 亚洲国产精品成人精品无码区在线 | 精品亚洲永久免费精品| 国产真人无码作爱免费视频| 亚洲精品成人无限看| 久久国产免费观看精品| 自怕偷自怕亚洲精品| 国产99视频精品免费观看7| 亚洲精品无码高潮喷水A片软| 国产精品久久久久影院免费| 一级毛片试看60分钟免费播放| 国产亚洲无线码一区二区| 99国产精品免费观看视频| 亚洲成_人网站图片| 亚洲日本韩国在线| 日韩电影免费观看| 一本色道久久88亚洲精品综合 | 日本免费在线中文字幕| 亚洲日本乱码一区二区在线二产线| 亚洲精品免费网站| 黄色网址免费在线| 久久久无码精品亚洲日韩京东传媒| 免费无码又黄又爽又刺激| 免费看黄福利app导航看一下黄色录像| 啦啦啦完整版免费视频在线观看| 午夜国产羞羞视频免费网站| 久久免费99精品国产自在现线| 亚洲嫩草影院久久精品| 最近最新的免费中文字幕| fc2成年免费共享视频网站| 亚洲毛片在线免费观看|