繼續更新,前面說了基本功能要求,下面更新代碼等。html
基礎框架用的bootswatch+beetl+jfinal。java
http://git.oschina.net/dim/hotelman.git
jfinal:啵啵搞的高端框架。git
bootswatch下載:http://bootswatch.com/,就是bootstrap的主題,各類選擇,能夠下載和查看。我這用的只是基礎!我就是須要哪一個控件,查看下源文件,而後扣過來,sql
beetl:大牛開發的給各類主流牛逼的框架引擎。和jfinal完美結合,可是須要作一點更改。、數據庫
mysql:數據庫採用mysql,簡單易用bootstrap
新建一個項目。session
將jar包加入:app
beetl.1.2M1.jar:beet核心jar包。最新2.0框架
jfinal-1.1.3-bin.jar:核心jfinal的jar包,如今最新1.8
c3p0-0.9.1.2.jar:數據庫鏈接池。
mysql-connector-java-5.1.20-bin.jar:mysql驅動。
ok
下面是目錄結構:
基本上就是這樣,臨時劃分。
下面貼出代碼,jfinal入口須要繼承一個JFinalConfig的類。
package basic; import any; //基礎類 public class BasicConfig extends JFinalConfig { public void configConstant(Constants me) { loadPropertyFile("config.txt"); me.setMainRenderFactory(new BeetlRenderFactory());//使用beetl me.setDevMode(getPropertyToBoolean("devMode", false)); } public void configHandler(Handlers me) { me.add(new AllHandler(".*\\.html")); } public void configInterceptor(Interceptors me) { me.add(new SessionInViewInterceptor());//能關聯beetl輸出的session } public void configPlugin(Plugins me) { //鏈接池 C3p0Plugin cp=new C3p0Plugin(getProperty("jdbc"), getProperty("user"), getProperty("password"),getProperty("driverClass")); me.add(cp); ActiveRecordPlugin arp=new ActiveRecordPlugin(cp); arp.setDialect(new MysqlDialect()); me.add(arp); arp.addMapping("userinfo","ID", UserInfo.class); arp.addMapping("room","roomID", Room.class); arp.addMapping("roomtype","roomtype",Roomtype.class); arp.addMapping("bussiness","bussinessID", Bussiness.class); arp.addMapping("customer","customerID", Customer.class); arp.addMapping("vip","starLv", Vip.class); arp.addMapping("reservation","reservationID", Reservation.class); } public void configRoute(Routes me) { //設置路徑攔截控制器 me.add("excel",ExcelController.class); me.add("hello",HelloController.class); me.add("login",UserController.class); me.add("reservation",ReservationController.class); me.add("room",RoomController.class); me.add("/",IndexController.class); } }