2016-07-12 8 views
2

モデルの代わりにBeanを使用してチュートリアルコーディングを見ましたが、その理由を説明しませんでした。これを行う理由Spring MVCとHibernateでモデルの代わりにBeanを使用する目的

http://www.dineshonjava.com/2012/12/spring-mvc-with-hibernate-crud-example.html#.V4R1_vl96Un

誰もが知っていますか? Beanクラスを使用するための使用例

コントローラ内のいくつかのコード:

@RequestMapping(value = "/edit", method = RequestMethod.GET) 
public ModelAndView deleteEmployee(@ModelAttribute("command")EmployeeBean employeeBean, 
    BindingResult result) { 
    Map<String, Object> model = new HashMap<String, Object>(); 
    model.put("employee", prepareEmployeeBean(employeeService.getEmployee(employeeBean.getId()))); 
    model.put("employees", prepareListofBean(employeeService.listEmployeess())); 
    return new ModelAndView("addEmployee", model); 
} 

private EmployeeBean prepareEmployeeBean(Employee employee){ 
    EmployeeBean bean = new EmployeeBean(); 
    bean.setAddress(employee.getEmpAddress()); 
    bean.setAge(employee.getEmpAge()); 
    bean.setName(employee.getEmpName()); 
    bean.setSalary(employee.getSalary()); 
    bean.setId(employee.getEmpId()); 
    return bean; 
} 

私はMVCをSPINGする新しいよ、誰が、なぜそうするように説明することができ感謝... 感謝。

+0

プレゼンテーション層をパーシスタンス層から分離することができます。 –

答えて

1

この例を通して、彼はフロントエンドJSP(プレゼンテーション層)に戻るために 'EmployeeBean'クラスを作成したようです。これは、オブジェクトを休止状態にマッピングするために特別に作った休止状態の「Employee」クラスからPOJOを切り離すことです。 JavaBeansの規則について

より:https://en.wikipedia.org/wiki/JavaBeans

-1

著者は、JSPにデータをレンダリングしている間、それは彼のカスタムBeanにモデルクラスを変換し、データを挿入しながら、彼はクラスをモデル化するために、カスタムBeanを変換するような方法でコードを書きました。

これは永続層表現層の間に彼のカスタムコントロール層を導入するために彼のアイデアである可能性があります。その理由は、Springが@InitBinderと他の多くのテクニックを使用して可能ではあるが、カスタムのデフォルト値を追加することによってフローを制御することができるか、またはカスタムの検証である可能性があります。