Java包的命名規則
阿新 • • 發佈:2018-11-28
Java包的命名規則
- util:對應英文utility(實用工具),一般存放工具類,就像java.lang.util包一樣存放著各種各樣的工具類方便你程式設計,這裡你可以放自己寫好的工具類為自己的程式提供方便。
- business:一般存放業務類,處理程式業務的功能類就放在這裡。
- control:一般存放控制類,後臺控制的一些類就放在這裡,例如J2EE裡的Servlet。
- dao:對應英文Data Access Object,資料訪問物件,一般存放與資料庫(文字、Excel等)打交道的類,只關心資料庫的增刪改查。
- vo:對應英文Value Object,值物件,一般存放實體(Model)。
driver:一般存放驅動類,一般顯示選單,呼叫dao等包中的方法來驅動程式。一般擁有在其中使用方法的主方法。
部分程式碼示例
### 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<Student> list=new ArrayList<Student>(); 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<Student> 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<Student> ReadFromExcel(String fileName) { List<Student> list = new ArrayList<Student>(); 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; }