日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 包命名_【Java】包的命名规则

發布時間:2023/12/14 java 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 包命名_【Java】包的命名规则 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

命名規范

包:所有單詞的字母小寫,之后每個單詞用-隔開,如 org.nemo.demo

常量:所有單詞的字母大寫,之后每個單詞用_隔開,如 FLAG

類:所有單詞的首字母大寫,如 TestJava

pascal命名法

屬性:第一個單詞的首字母小寫,之后每個單詞的首字母大寫,如 studentName

camel命名法:駝峰命名法。

方法:第一個單詞的首字母小寫,之后每個單詞的首字母大寫,如 getInfo()

Java包的命名規則

util:對應英文utility(實用工具),一般存放工具類,就像java.lang.util包一樣存放著各種各樣的工具類方便你編程,這里你可以放自己寫好的工具類為自己的程序提供方便。

business:一般存放業務類,處理程序業務的功能類就放在這里。

control:一般存放控制類,后臺控制的一些類就放在這里,例如J2EE里的Servlet。

dao:對應英文Data Access Object,數據訪問對象,一般存放與數據庫(文本、Excel等)打交道的類,只關心數據庫的增刪改查。

用于操作的封裝。

vo:對應英文Value Object,值對象,一般存放實體(Model)。

vo表示value object,主要實現數據的封裝,常與數據庫中一個表或視圖相對應。

該類的實現基本上是一個固定的模板,因此很多建模工具(如rose等)能夠根據數據庫中的表和視圖自動生成該文件,此過程稱為“反向工程”。

driver:一般存放驅動類,一般顯示菜單,調用dao等包中的方法來驅動程序。一般擁有在其中使用方法的主方法。

Object 劃分

PO(persistent object)持久對象

PO 就是對應數據庫中某個表中的一條記錄,多個記錄可以用 PO 的集合。PO 中應該不包含任何對數據庫的操作。

DO (Domain Object)領域對象

就是從現實世界中抽象出來的有形或無形的業務實體。

TO(Transfer Object)數據傳輸對象

不同的應用程序之間傳輸的對象

DTO (Data Transfer Object)數據傳輸對象

這個概念來源于 J2EE 的設計模式,原來的目的是為了 EJB 的分布式應用提供粗粒度的數據實體,以減少分布式調用的次數,從而提高分布式調用的性能和降低網絡負載,但在這里,泛指用于展示層與服務層之間的數據傳輸對象。

VO(Value Object)值對象

通常用于業務層之間的數據傳遞,和 PO 一樣也是僅僅包含數據而已。但應是抽象出的業務對象,可以和表對應,也可以不和表對應,這根據業務的需要。用 new 關鍵宇創建,由 GC 回收的。

View Object:視圖對象;

接受頁面傳遞來的數據,封裝對象

將業務處理完成的對象,封裝成頁面要用的數據

BO(Business Object)業務對象

從業務模型的角度看,見 UML 元件領域模型中的領域對象。封裝業務邏輯的 Java 對象,通過調用 DAO 方法,結合 PO、VO 進行業務操作。Business Object:業務對象主要作用是把業務邏輯封裝為一個對象。這個對象可以包括一個或多個其它的對象。比如一個簡歷,有教育經歷、工作經歷、社會關系等等。我們可以把教育經歷對應一個 PO,工作經歷對應一個 PO,社會關系對應一個 PO。建立一個對應簡歷的 BO 對象處理簡歷,每個 BO 包含這些 PO。這樣處理業務邏輯時,我們就可以針對 BO 去處理。

POJO(Plain Ordinary Java Object)簡單無規則 Java 對象

傳統意義的 Java 對象。就是說在一些 Object/Relation Mapping 工具中,能夠做到維護數據庫表記錄的 Persisent Object 完全是一個符合JavaBean 規范的純 Java 對象,沒有增加別的屬性和方法。我的理解就是最基本的 JavaBean,只有屬性字段及 setter 和 getter 方法!

POJO 是 DO/DTO/BO/VO 的統稱。

DAO(Data Access Object)數據訪問對象

是一個 sun 的一個標準 J2EE 設計模式,這個模式中有個接口就是 DAO,它負持久層的操作。為業務層提供接口。此對象用于訪問數據庫。通常和 PO 結合使用,DAO 中包含了各種數據庫的操作方法。通過它的方法,結合 PO 對數據庫進行相關的操作。夾在業務邏輯與數據庫資源中間。配合 VO,提供數據庫的 CRUD 操作。

SSM框架

pojo:對應英文Plain Ordinary Java Object,簡單的Java對象,實際就是普通JavaBeans,是為了避免和EJB混淆所創造的簡稱。其中寫普通類屬性。

dao:(持久層)xml中寫數據庫操作

service:(業務層)其中寫各種接口還有實現,方法有關操作的可以調用dao中的方法,或 自己寫其他服務(如 分頁)

controller:(表現層)其中設置請求映射地址,ModelAndView 方法中,將存入的參數進行處理,可使用service方法,用ModelAndView傳入頁面,對頁面進行操作(增加數據、跳轉頁面等)

頁面發送請求給控制器,控制器調用業務層處理邏輯,業務層向持久層發送請求,持久層與數據庫交互,后將結果返回給業務層,業務層將處理邏輯發送給控制器,控制器再調用視圖展現數據。

部分代碼示例

vo包中

package vo;

public class Student

{

private String id;

private String name;

private String gender;

private float java;

private float english;

private float math;

private float totalScore;

private float average;

}

driver包中:

package driver;

public class Driver

{

//存放目前集合中的學生信息

public static List list=new ArrayList();

public static void main(String args[])

{

int choice=menuChoice();

while(choice!=7){

switch(choice)

{

case 1:importFromExcel();break;

case 2:importFromTxt();break;

case 3:inputFromKeyboard();break;

case 4:queryStudent();break;

case 5:exportToExecel();break;

case 6:exportToTxt();break;

default:System.out.println("無效的選擇");

}

choice=menuChoice();

}

System.out.println("程序成功退出");

System.exit(0);

}

public static int menuChoice()

{

System.out.println("====學生成績管理系統=====");

System.out.println("1. 從excel中加載數據");

System.out.println("2. 從文本文件加載數據");

System.out.println("3. 鍵盤輸入");

System.out.println("4. 成績查詢");

System.out.println("5. 輸出到excel文件");

System.out.println("6. 輸出到純文本文件");

System.out.println("7. 退出");

System.out.println("請輸入選項:");

Scanner scan=new Scanner(System.in);

int choice=scan.nextInt();

return choice;

}

public static void importFromExcel()

{

/*

* 調用dao中的方法

*/

StudentDAO dao=new StudentDAO();

String fileName="c:/data/student.xls";

List list1=dao.ReadFromExcel(fileName); //dao中的方法

list.addAll(list1); //將list1集合中的數據增加到list集合中

System.out.println("成功從excel中導入"+list1.size()+"個學生");

}

}

dao包中:

package dao;

public class StudentDAO

{

// 實現讀學生文件,將讀出的信息存放于student集合中

public List ReadFromExcel(String fileName)

{

List list = new ArrayList();

File file = new File(fileName);

try

{

InputStream in = new FileInputStream(file);

Workbook wb = Workbook.getWorkbook(in);

Sheet s = wb.getSheet(0);

for(int i = 1; i < s.getRows(); i++) //第一行不要

{

Cell[] row = s.getRow(i);

Student student = new Student(row[0].getContents(), row[1].getContents(), //填充數據

row[2].getContents(), Float.parseFloat(row[3].getContents()),

Float.parseFloat(row[4].getContents()), Float.parseFloat(row[5].getContents()));

//由于讀取的數據全部都是String 類型所以要轉換成Float類型

student.setTotalScore(student.getEnglish()+student.getJava()+student.getMath());

student.setAverage(student.getTotalScore()/3);

list.add(student);

}

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (BiffException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return list;

}

}

總結

以上是生活随笔為你收集整理的java 包命名_【Java】包的命名规则的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。