Java編程風(fēng)格及基礎(chǔ)類庫(kù)使用培訓(xùn)_第1頁(yè)
Java編程風(fēng)格及基礎(chǔ)類庫(kù)使用培訓(xùn)_第2頁(yè)
Java編程風(fēng)格及基礎(chǔ)類庫(kù)使用培訓(xùn)_第3頁(yè)
Java編程風(fēng)格及基礎(chǔ)類庫(kù)使用培訓(xùn)_第4頁(yè)
Java編程風(fēng)格及基礎(chǔ)類庫(kù)使用培訓(xùn)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Java編程風(fēng)格及基礎(chǔ)類庫(kù)使用培訓(xùn)1培訓(xùn)安排一、Java的編程規(guī)范1. Java語言的編寫規(guī)范2. JSP的編程規(guī)范3. Java的設(shè)計(jì)模式二、基礎(chǔ)類庫(kù)的使用1. 信息發(fā)布基礎(chǔ)類2. 權(quán)限管理基礎(chǔ)類3. 數(shù)據(jù)庫(kù)訪問基礎(chǔ)類4. 數(shù)據(jù)庫(kù)數(shù)據(jù)導(dǎo)入導(dǎo)出基礎(chǔ)類庫(kù)1)Dbf文件的導(dǎo)入導(dǎo)出2)Excel文件的導(dǎo)入導(dǎo)出3)PDF文件的導(dǎo)出2Java 的編程規(guī)范Java語言的編程規(guī)范命名的規(guī)范Java的樣式文件代碼的編寫風(fēng)格程序的編寫規(guī)范JSP的編程規(guī)范 Java Web程序的結(jié)構(gòu)Jsp/Servlet的編程規(guī)范Java的設(shè)計(jì)模式基礎(chǔ)的設(shè)計(jì)模式J2EE的設(shè)計(jì)模式Java程序的開發(fā)框架(FrameWork)3Ja

2、va語言的編寫規(guī)范命名的規(guī)范Package 的命名 應(yīng)該都是由一個(gè)小寫單詞組成。 Class 的命名必須由大寫字母開頭而其他字母都小寫的單詞組成 Class 變量的命名 變量的名字必須用一個(gè)小寫字母開頭。后面的單詞用大寫字母開頭Static Final 變量的命名 Static Final 變量的名字應(yīng)該都大寫,并且指出完整含義參數(shù)的命名 參數(shù)的名字必須和變量的命名規(guī)范一致數(shù)組的命名 數(shù)組應(yīng)該總是用下面的方式來命名: byte buffer 方法的參數(shù) 使用有意義的參數(shù)命名如果可能的話,使用和要賦值的字段一樣的名字4Java語言的編寫規(guī)范Java 文件樣式 版權(quán)信息 Package/Impor

3、ts Class Class Fields 構(gòu)造函數(shù) 存取方法 克隆方法 類方法 toString 方法main 方法5Java語言的編寫規(guī)范代碼編寫格式代碼樣式代碼應(yīng)該注意回車換行的格式在一個(gè)項(xiàng)目中不要混用unix和windows 兩種不同的回車換行格式 文檔化 是用 Javadoc 來為類生成文檔它是標(biāo)準(zhǔn),也被各種 java 編譯器都認(rèn)可的方法 縮進(jìn)縮進(jìn)應(yīng)該是每行2個(gè)空格不要在源文件中保存Tab字符.Tab字符會(huì)因?yàn)橛脩粼O(shè)置的不同而擴(kuò)展為不同的寬度. 頁(yè)寬頁(yè)寬應(yīng)該設(shè)置為80字符 超長(zhǎng)的語句應(yīng)該在一個(gè)逗號(hào)或者一個(gè)操作符后折行一條語句折行后, 應(yīng)該比原來的語句再縮進(jìn)2個(gè)字符 6Java語言的編

4、寫規(guī)范 對(duì) 中的語句應(yīng)該單獨(dú)作為一行 括號(hào) 左括號(hào)和后一個(gè)字符之間不應(yīng)該出現(xiàn)空格 右括號(hào)和前一個(gè)字符之間也不應(yīng)該出現(xiàn)空格 不要在語句中使用無意義的括號(hào) 7Java語言的編寫規(guī)范程序編寫規(guī)范 exitexit 除了在 main 中可以被調(diào)用外,其他的地方不應(yīng)該調(diào)用 后臺(tái)服務(wù)地程序不應(yīng)該因?yàn)槟硞€(gè)庫(kù)模塊決定要退出就退出 異常 申明的錯(cuò)誤應(yīng)該拋出一個(gè)RuntimeException或者派生的異常 垃圾收集 需要調(diào)用close的對(duì)象一定要及時(shí)調(diào)用close打開的流對(duì)象數(shù)據(jù)庫(kù)連接Clone final 類絕對(duì)不要因?yàn)樾阅艿脑驅(qū)㈩惗x為 final 一個(gè)類還沒有準(zhǔn)備好被繼承,最好在類文檔中注明 訪問類的成

5、員變量 大部分的類成員變量應(yīng)該定義為 private 的來防止繼承類使用他們 8JSP的編寫規(guī)范Java Web 程序的架構(gòu)表示層負(fù)責(zé)HTML頁(yè)面的生成使用Jsp 或 Servlet邏輯層負(fù)責(zé)業(yè)務(wù)邏輯的處理使用Java Bean或普通Java類持久層負(fù)責(zé)數(shù)據(jù)庫(kù)數(shù)據(jù)的獲取使用DAO (Data Access Object) 獲取數(shù)據(jù)庫(kù)數(shù)據(jù)使用VO (Value Object)傳輸數(shù)據(jù)9JSP的編寫規(guī)范10JSP的編寫規(guī)范JSP/Servlet的編程規(guī)范適用場(chǎng)合JSP用于顯示頁(yè)面Servlet可以完成更強(qiáng)大的功Filter對(duì)所有頁(yè)面統(tǒng)一做處理 startup servlet 啟動(dòng)的時(shí)候初始化err

6、orPage每一個(gè)JSP都應(yīng)該包含ErrorPage頁(yè)面contentType每一個(gè)頁(yè)面都應(yīng)該指定contentType如果要指定中文編碼,適用GBK而不是GBK2312多使用已有的tag libTag是JSP的一個(gè)重要擴(kuò)展基礎(chǔ)類庫(kù)中定義的應(yīng)用的tag,要求盡量使用提取公用部分對(duì)于JSP中大量使用的公有部分,必須寫成單獨(dú)的JSP供其他頁(yè)面include11JSP的編寫規(guī)范不直接被WEB訪問的文件放到WEB-INF目錄下 WEB-INF目錄是j2ee規(guī)范中不被WEB訪問的目錄不能被用戶直接訪問的文件可以放到這個(gè)目錄下可以將JSP文件放到這個(gè)目錄下,然后使用Forward的方式訪問大括號(hào) 由于JS

7、P比較容易混亂,在控制語句的代碼塊中,后面的語句后面盡量加上注釋以便于閱讀特別是中間混雜了HTML代碼的更是需要加上注釋。的縮進(jìn)量應(yīng)保持一致12JSP的編寫規(guī)范Java程序的設(shè)計(jì)模式面向?qū)ο箝_發(fā)中程序員更重視代碼的重用性和可維護(hù)性 一個(gè)好的,對(duì)某個(gè)問題空間的通用的解決方案可以稱之為設(shè)計(jì)模式設(shè)計(jì)模式通常描述了一組相互緊密作用的類與對(duì)象設(shè)計(jì)模式提供一種討論軟件設(shè)計(jì)的公共語言,使得熟練設(shè)計(jì)者的設(shè)計(jì)經(jīng)驗(yàn)可以被初學(xué)者和其他設(shè)計(jì)者掌握設(shè)計(jì)模式為軟件重構(gòu)提供了目標(biāo) 設(shè)計(jì)模式使人們可以更加簡(jiǎn)單方便地重復(fù)使用成功的設(shè)計(jì)和體系結(jié)構(gòu) 13JSP的編寫規(guī)范基礎(chǔ)的設(shè)計(jì)模式基礎(chǔ)模式委托模式 接口模式 代理模式 創(chuàng)建型模式

8、抽象工廠模式 生成器模式 工廠方法模式 原型模式 單例模式 結(jié)構(gòu)型模式適配器模式 橋接模式 組合模式 容器模式 修飾模式 擴(kuò)展性模式 外觀模式 享元模式 管道與過濾器模式 代理模式 14JSP的編寫規(guī)范J2EE的設(shè)計(jì)模式在基礎(chǔ)的設(shè)計(jì)模式之上,針對(duì)Web方式的程序開發(fā)提出的設(shè)計(jì)模式表示層設(shè)計(jì)模式邏輯層設(shè)計(jì)模式持久層設(shè)計(jì)模式1516JSP的編寫規(guī)范Java程序的開發(fā)框架Framework即架構(gòu)某個(gè)問題空間抽象的、可復(fù)用的解決方式軟件的架構(gòu)方式一組設(shè)計(jì)模式的集合形成一個(gè)適應(yīng)項(xiàng)目需要的穩(wěn)定架構(gòu)是項(xiàng)目開發(fā)過程中一個(gè)非常重要的步驟多利用現(xiàn)有的程序開發(fā)架構(gòu)和工具StrutsTilesHibernate.17

9、基礎(chǔ)類庫(kù)的使用基礎(chǔ)類庫(kù)信息發(fā)布權(quán)限管理數(shù)據(jù)庫(kù)訪問數(shù)據(jù)庫(kù)數(shù)據(jù)的導(dǎo)出導(dǎo)入其他正在整理正在開發(fā)中待研究18信息發(fā)布基礎(chǔ)類信息發(fā)布基礎(chǔ)類功能說明:信息發(fā)布基礎(chǔ)類庫(kù)提供了信息發(fā)布中需要用到的數(shù)據(jù)庫(kù)數(shù)據(jù)操作的基本功能顯示修改插入刪除數(shù)據(jù)合法性檢查出錯(cuò)信息提示信息發(fā)布基礎(chǔ)類的使用要求信息發(fā)布基礎(chǔ)類庫(kù)通過數(shù)據(jù)庫(kù)訪問基礎(chǔ)類訪問Oracle數(shù)據(jù)庫(kù)信息發(fā)布基礎(chǔ)類需要業(yè)務(wù)數(shù)據(jù)庫(kù)中建立特定的數(shù)據(jù)表信息發(fā)布基礎(chǔ)類以Jsp Taglib的形式提供19信息發(fā)布基礎(chǔ)類信息發(fā)布基礎(chǔ)類的數(shù)據(jù)庫(kù)結(jié)構(gòu)信息發(fā)布基礎(chǔ)類要求對(duì)所操作的數(shù)據(jù)表和數(shù)據(jù)字段在信息發(fā)布基礎(chǔ)類的自建表中進(jìn)行定義和說明信息發(fā)布基礎(chǔ)類庫(kù)需要在業(yè)務(wù)庫(kù)中建立如下表xxfb_b

10、mb 信息發(fā)布數(shù)據(jù)定義表存儲(chǔ)信息發(fā)布中所需訪問的業(yè)務(wù)系統(tǒng)數(shù)據(jù)表的相關(guān)信息 t_sjzdb信息發(fā)布數(shù)據(jù)字典表存儲(chǔ)信息發(fā)布中所需訪問到的業(yè)務(wù)系統(tǒng)的數(shù)據(jù)字段信息的描述 xxfb_dxxxb 信息發(fā)布單項(xiàng)選擇表:用于存儲(chǔ)信息發(fā)布中用到的單向選擇列Sequence的命名規(guī)范為 “seq_”+數(shù)據(jù)數(shù)據(jù)表名20權(quán)限管理基礎(chǔ)類權(quán)限管理基礎(chǔ)類功能說明用戶的身份認(rèn)證用戶權(quán)限的存儲(chǔ)結(jié)構(gòu)用戶權(quán)限的檢查權(quán)限管理的使用要求信息發(fā)布基礎(chǔ)類庫(kù)通過數(shù)據(jù)庫(kù)訪問基礎(chǔ)類訪問Oracle數(shù)據(jù)庫(kù)信息發(fā)布基礎(chǔ)類需要業(yè)務(wù)數(shù)據(jù)庫(kù)中建立特定的數(shù)據(jù)表信息發(fā)布基礎(chǔ)類以Jsp Taglib的形式提供21權(quán)限管理基礎(chǔ)類權(quán)限管理的基本概念權(quán)限組成的四大基

11、本要素用戶指應(yīng)用系統(tǒng)的用戶,是系統(tǒng)的直接面對(duì)者。角色是為了對(duì)權(quán)限進(jìn)行組織和管理而建立的“用戶組”實(shí)體在某些應(yīng)用系統(tǒng)中可能是一個(gè)職位的體現(xiàn);權(quán)限是指為了完成某個(gè)系統(tǒng)功能而必須具有的權(quán)力對(duì)應(yīng)于應(yīng)用系統(tǒng)的最小功能單位;模塊是系統(tǒng)功能的具體實(shí)現(xiàn),一般情況下,每個(gè)系統(tǒng)功能必須由一個(gè)至多個(gè)模塊來共同完成這里的模塊一般以一個(gè)WEB頁(yè)面為單位 22權(quán)限管理基礎(chǔ)類權(quán)限系統(tǒng)四大要素的對(duì)應(yīng)關(guān)系用戶到角色的對(duì)應(yīng)指明了每個(gè)用戶所擁有的角色指明了每個(gè)角色所對(duì)應(yīng)的所有用戶是多對(duì)多的關(guān)系角色到權(quán)限的對(duì)應(yīng)指明了每個(gè)角色所擁有的權(quán)限每個(gè)權(quán)限也可以被多個(gè)角色所擁有是多對(duì)多的關(guān)系權(quán)限到模塊的對(duì)應(yīng)指明為了完成某個(gè)權(quán)限賦予的功能所需要的

12、模塊每個(gè)模塊也可能支持多個(gè)權(quán)限是多對(duì)多的關(guān)系 23權(quán)限管理基礎(chǔ)類權(quán)限管理基礎(chǔ)類的數(shù)據(jù)庫(kù)結(jié)構(gòu)用戶信息表:其重要字段是“用戶ID”這是varchar2類型的數(shù)據(jù),最長(zhǎng)可達(dá)64位詳細(xì)的用戶信息表由應(yīng)用系統(tǒng)自行決定基礎(chǔ)類提供一個(gè)參考表org_thcic_userinfo org_thcic_roles角色說明表存放角色的信息和說明 角色I(xiàn)D類型是number(9),數(shù)值可以自由分配; org_thcic_perms權(quán)限說明表存放權(quán)限的信息和說明權(quán)限ID類型是number(9),數(shù)值可以自由分配;24權(quán)限管理基礎(chǔ)類org_thcic_modules模塊說明表存檔模塊的信息和說明模塊ID類型是varcha

13、r2(256)取值規(guī)則是”應(yīng)用名稱:模塊URL全路徑:子模塊號(hào)“其中子模塊號(hào)可以為空,但最后的”:“不能省略子模塊號(hào)的作用是,當(dāng)同一個(gè)頁(yè)面可以完成若干功能時(shí),可能對(duì)應(yīng)于不同的權(quán)限,那么就需要子模塊號(hào)來做更細(xì)的區(qū)分org_thcic_user_role用戶、角色對(duì)應(yīng)表存放用戶、角色的對(duì)應(yīng)關(guān)系org_thcic_role_perm角色、權(quán)限對(duì)應(yīng)表存放角色、權(quán)限的對(duì)應(yīng)關(guān)系org_thcic_module_perm模塊、權(quán)限對(duì)應(yīng)表存放模塊、權(quán)限的對(duì)應(yīng)關(guān)系25權(quán)限管理基礎(chǔ)類org.thcic.sysconf系統(tǒng)配置表與授權(quán)系統(tǒng)相關(guān)的配置信息有:EnableAuthority 指明是否啟動(dòng)授權(quán)系統(tǒng)Defa

14、ultAuthorityClassName 指明管理授權(quán)系統(tǒng)的類名字,默認(rèn)是org.thcic.authority.AuthorityDB26 數(shù)據(jù)庫(kù)訪問基礎(chǔ)類功能說明提供了對(duì)Jdbc的封裝實(shí)現(xiàn)了對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的訪問數(shù)據(jù)庫(kù)訪問基礎(chǔ)類的使用要求使用數(shù)據(jù)庫(kù)連接池不自帶數(shù)據(jù)庫(kù)連接池,需使用第三方提供的數(shù)據(jù)庫(kù)連接池ResinWeblogic其他默認(rèn)的數(shù)據(jù)連接池名是OracleDB27數(shù)據(jù)庫(kù)訪問基礎(chǔ)類28數(shù)據(jù)庫(kù)數(shù)據(jù)導(dǎo)入導(dǎo)出基礎(chǔ)類庫(kù)數(shù)據(jù)庫(kù)數(shù)據(jù)導(dǎo)入導(dǎo)出基礎(chǔ)類庫(kù)實(shí)現(xiàn)了將Oracle數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)出到不同格式的數(shù)據(jù)文件中將不同格式的數(shù)據(jù)文件中的數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)中數(shù)據(jù)庫(kù)數(shù)據(jù)導(dǎo)入導(dǎo)出基礎(chǔ)類包括Dbf數(shù)據(jù)的導(dǎo)入導(dǎo)出E

15、xcel數(shù)據(jù)的導(dǎo)入導(dǎo)出Oracle數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)出到PDF文件中29數(shù)據(jù)庫(kù)數(shù)據(jù)導(dǎo)入導(dǎo)出基礎(chǔ)類庫(kù)Dbf數(shù)據(jù)的導(dǎo)入導(dǎo)出功能說明將Oracle數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)出到Dbf文件中將Dbf文件中的數(shù)據(jù)導(dǎo)入到Java的數(shù)據(jù)對(duì)象或Oracle數(shù)據(jù)庫(kù)中使用要求目前只支持DBASE III標(biāo)準(zhǔn)的Dbf文件,不支持其他標(biāo)準(zhǔn)(例如DBASE IV)的Dbf文件基礎(chǔ)類只支持對(duì)文件系統(tǒng)中的Dbf文件進(jìn)行導(dǎo)入導(dǎo)出的功能。不支持從數(shù)據(jù)流中導(dǎo)出Dbf數(shù)據(jù),或?qū)bf數(shù)據(jù)導(dǎo)出到數(shù)據(jù)流中Dbf文件導(dǎo)入導(dǎo)出基礎(chǔ)類通過數(shù)據(jù)庫(kù)訪問基礎(chǔ)類訪問Oracle數(shù)據(jù)庫(kù)調(diào)用類org.thcic.data.* 30數(shù)據(jù)庫(kù)數(shù)據(jù)導(dǎo)入導(dǎo)出基礎(chǔ)類庫(kù)Excel數(shù)據(jù)的導(dǎo)入導(dǎo)出功能說明將Oracle數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)出到Excel文件中將Excel文件中的數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論