我有一個小的vaadin應用程序,它允許用戶在表單中輸入一些數據(員工詳細信息如姓名,地址等),並將每個員工對象存儲在列表中。 這是迄今結構:在哪裏把我的企業登錄到vaadin應用程序
EmployeeForm
src/main/java
com.vaadin.project.EmployeeForm
MyUI.java
employee
Address.java
Employee.java
所以,爲了測試我裏面MyUI.java創建了一個Employee對象直接,就像這樣:
Address address1 = new Address(34, "Flinch Street","KT25AG");
Employee employee1 = new Employee("John","Smith", "Male", 39, address1, "Permanent", 8765);
List<Employee> employee = new ArrayList<Employee>();
employee.add(employee1);
for(Employee currentEmployee : employee){
System.out.println(employee);
}
只是爲了確保一切工作,但它在那裏做這件事似乎是錯誤的,所以我想創建另一個處理所有業務邏輯的類,我想知道最好的方法是什麼。 通過企業登錄我的意思是,我需要確保它發生的是,用戶在MyUI.java文件上填寫表單並單擊提交按鈕後,將創建一個新的Employee對象並將其存儲在列表中。 所以我想,我可以在MyUI.java中調用函數,如createNewEmployee()
,然後在另一個類CreateEmployee.java
中定義該函數,從MyUI.java獲取所需的所有數據(名稱,姓氏,地址等)並在CreateEmployee.java
中構建新的Employee對象?這聽起來合理嗎?在MyUI.java中很容易做到這一點,但我認爲應該只處理GUI,你們覺得怎麼樣?
謝謝你的建議,我創建了一個類的EmployeeService和執行'createNewEmployee(...)'和'clearTextFields(...)'有(均來自MyUI.java調用),它的所有作品。現在還有另一個相關的事情,我該怎麼處理錯誤,意思是說,我應該爲它創建另一個單獨的類還是在MyUI.java中處理它? – antobbo
我喜歡在UI上使用'setErrorHandler'並彈出我自己的自定義錯誤窗口來處理整個板子上的錯誤。如果我需要特殊的錯誤處理,那麼我可以在需要時處理它。每當我不確定如何處理錯誤時,我都會通過包裝在RuntimeExceptions中來解決泡沫錯誤。我通常也會在錯誤處理程序中記錄異常。 – chenson42
你碰巧有一個例子嗎? [Vaadin(https://vaadin.com/docs/-/part/framework/application/application-errors.html)似乎處理它們的UI。在我的特定情況下,我需要處理空輸入域和至少一個NumberFormatException異常的情況下,在文本框的字符串不能轉換成一個int – antobbo