JFinal 首先要将jar放入web-inf下的lib文件夹内(图中所选的几个jar包,另外几个是ueditor的jar包)
web.xml
项目文件结构
model包结构
可以通过相关JFinal官网,下载相关demo来进行
通过尝试一个简单JFinal项目的部署实现,有一个大致的思路:
在a_little_config.txt文件中存有数据库连接相关配置信息,这些信息在一个继承JFinalConfig的配置类中读取用于连接数据库
这里是将配置文件读取进来
设置数据库连接
同样的,在这个继承JFinalConfig类的配置类中,可以配置许多相关的启动信息,包括基本路由与对应ctrl层的绑定等
路由与controller层绑定;公共页面,可以让前台页面通过#@函数名的方式来直接静态放入页面,已达到组件化
数据库连接池;_MappingKit是一个前端变量名与持久层对象映射(包含主键设置)的设置类
Model 层: 对象映射结构: 对象 ----- 》 Base对象 -------》 Model (model类本身封装了大部分数据库操作的方法,并封装好了dao层,可以进行直接使用,似乎只有在分页的方法和对于缓存操作的方法以及find方法可以进行sql语句执行,不过大部分CRUD的基础方法基本已经有了)
如果要通过get获取url里的参数信息的话,可以通过getPara()方法来进行,这个方法有两种形式:
1、getPara(0 , 0) // 第一个参数是代表第几个/{}/的值,第二个参数是若该值不存在的默认值
2、getPara("xxx", “xxx”) //第一个参数表示?xxx=xxx的对应参数名称,第二个表示缺省值
页面跳转:相对来说它是直接通过调用封装在Controller类中的函数来实现的,默认每个我们自己的Controller对应一个同名前端页面文件夹,而该Controller对应操作该文件夹下的页面文件,每次从前端调用url时,它都会直接进入每个自己的Controller类中的同名方法,然后进行相关数据处理,之后网页不变,除非你进行了重定向或者页面转发。
保存以及更新操作可以直接调用Controller类(基类)中的getModal方法,来进行获取前端页面对应名字的值(news.id),并自动封装成对象,然后调用save等方法进行相关操作。
暂时就这些