一·新建项目
注意下图处一定要《none》
二·导入jar包
(1) c3p0是支撑JDBC的;
(2)jfina是支撑jfinal的,jfinal默认使用freemarker作为MVC的View,所以也要导入;
(3)sqlite是支撑Mysql连接的
(4)jetty-all等等
三·编写代码
- 新建项目Smarthome
- 新建项目SmartHomeForPC
- 修改Web.xml
- 基本模式
- 解释说明
- display-name 是项目的名称
- filter 过滤器定义
- <filter-name>jfinal</filter-name>过滤器名称
- <filter-class>com.jfinal.core.JFinalFilter</filter-class>是jfinal 封装好的一个过滤器,
- <filter-mapping> 过滤器的作用域/*是全部路径,名称必须和定义的过滤器名称相同
- 创建JFinal所需的配置类
-
- configConstant常量值配置
- 使用PropKit工具读取文件。PropKit.use(new File(PathKit.getWebRootPath()+"\\WEB-INF\\config\\web.txt"));
- 设置开发模式 setDevMode(PropKit.getBoolean("devMode"));
- 设置视图文件类型 setViewType(ViewType.JSP);
- configRoute(Routes me)配置控制器指定路径
- me.add("访问地址",控制器);(一)通过配置把地址映射到控制器(二)通过地址栏后默认访问控制器下的index方法,或者在访问地址后加上控制器下任一方法也能访问
- configplugin(plugins me)添加插件 ps:C3p0 数据库连接池插件与 ActiveRecord数据库访问插件
- 获取配置文件文件属性值
- 获取jdbc连接池及C3p0Plugin插件 (一)创建C3p0Plugin实例用于创建连接(二)加载驱动 (三)配置连接池插件
- 配置ActiveRecord插件
- 关系映射到model,参数分别表示表名,表中主键名,映射实体类
-
注意:model类不需要set get方法
- configInterceptor(Interceptors me)设置拦截器
- configHandler(Handlers me)接受所有web请求
- configConstant常量值配置
-
4.html编写(安装的时候商家给的)
5.小结
我也是最近在学校实验室学习看到这个项目(学校装的智能家居,硬件控制和后台都写好了,我只是做了把web端搬到了app上,所以web数据的交互就不说了),才知道JFinal框架,所以说的都是最基本的。然后写的也不是很好(PS:毕竟我是菜鸟)很多地方也都是参考网上的,希望多多见谅。
在学习这个项目app的时候,把web端都看了一遍学习了下这个Jfinal框架,感觉这个很轻量,挺好用的样子 。但对于其中的一些内容我也不是很了解。这篇随笔只是作为一个学习的小总结吧。O(∩_∩)O