不光要考慮開發的簡單,還要考慮日后的升級;
甚至足夠充分的文檔資料支持;還有現有團隊的技術能力;以及項目時間等;
MVC:第一要素我個人覺得是要簡單,因為在這個部分的中的代碼量,通常相對后端是很多的;一個容易上手,并且大家都熟悉并且不討厭;
SpringMVC,我個人覺得是很完備的mvc,有著很強的靈活性,但正是這種靈活性,讓很多人無所適從;
Struts 1 標簽很糟糕;form對象很別扭,繁瑣的配置;
Struts2 沒有用過,如果他還有form我就不打算用;
學習springside(以前)使用Spring 的MultiActionController,減少了很多沒有必要的配置;在一個controller里面可以寫多個Action;MultiActionController還可以很靈活的從request中綁定Domain對象,非常的方便;
MultiActionController 加 Controller可以滿足全部的需要;
JSP部分使用spring form tag;
Tiles 和 sitemesh; 考慮到使用Ajax,而sitemesh是利用filter來修飾;選擇Tiles;
ORM用ibatis,當前最實用,簡單的ORM;而且可以自動生成,又容易理解;何樂而不為;
FullTextSearch: compass + lucene;
Others:ActiveMQ + ApacheCXF
Form/Ajax Request > Controller > Manager/Service > GenericDao
其他輔助工具:
EMS for mysql;
SVN as version control;
DB/web server:mysql/resin