JF inal学习 笔记(一)
最近公司的几个项目使用了jfinal框架,以前没了解过这个东西.闲来无事把资料整理一下发给大家 帮助大家快速入门
jfinal在线文档 http://www.jfinal.com/doc
使用Eclipse开发
一创建wed项目
二完成项目基本信息runtime要设置成None之前没有注意首先关联了tomcat 结果tomcat跑不起来/main方法也跑不起来
三修改Default Output Folder,推荐输入WebRoot\WEB-INF\classes
此处的 Default out folder必须要与 WebRoot\WEB-INF\classes 目录完全一致才可以使用 JFinal 集成的 Jetty 来启动项目。
(jetty可以让jfinal不需要tomcat也可以跑起来 这就是前面为什么选none的原因 如果要在tomcat下运行 要把jetty相关jar或者依赖删除!!!)
四修改Content directory,推荐输入WebRoot 注意上图:此处也可以使用默认值WebContent, 但上一步中的WebRoot\WEB-INF\classes则需要改成WebContent\WEB-INF\classes才能对应上。
五jar包放入lib文件下
https://pan.baidu.com/s/1Zg-ApQItHdZ3PYd1liWprw
六将如下内容添加至web.xml
<filter>
<filter-name>jfinal</filter-name>
<filter-class>com.jfinal.core.JFinalFilter</filter-class>
<init-param>
<param-name>configClass</param-name>
<param-value>demo.DemoConfig</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>jfinal</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
七创建基础文件
在项目src目录下创建demo包,并在demo包下创建DemoConfig文件, 内容如下:
(这是jfinal的配置类 相当于xml文件的作用 里面配置了 运行时的条件)
注意:DemoConfig.java文件所在的包以及自身文件名必须与web.xml中的param-value标签内的配置相一致(在本例中该配置为demo.DemoConfig).
package demo;
import com.jfinal.config.*;
public class DemoConfig extends JFinalConfig {
public void configConstant(Constants me) {
me.setDevMode(true);
}
public void configRoute(Routes me) {
me.add("/hello", HelloController.class);
}
public void configEngine(Engine me) {}
public void configPlugin(Plugins me) {}
public void configInterceptor(Interceptors me) {}
public void configHandler(Handlers me) {}
}
在demo包下创建HelloController类文件, 内容如下:
这是jfinal的控制器 前端流程会走到改控制器 然后改控制器转发请求或者返回结果
package demo;
import com.jfinal.core.Controller;
public class HelloController extends Controller {
public void index() {
renderText("Hello JFinal World.");
}
public static void main(String[] args) {
// eclipse 下的启动方式
JFinal.start("WebRoot", 80, "/", 5);
}
}
8、启动项目 右键项目debug运行/或者main方法跑起来
浏览器http://localhost/hello 即可看到效果
9 maven开发比较简单
(一)引入依赖
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>jfinal</artifactId>
<version>3.5</version>
</dependency>
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>jetty-server</artifactId>
<version>2018.11</version>
<scope>provided</scope>
</dependency>
(二)修改启动方法
public static void main(String[] args) {
// eclipse 下的启动方式
JFinal.start("src/main/webapp", 80, "/", 5);
}
以上就是基于eclipse搭建的jfinal框架 感觉还是蛮简单的哈
注意 一:jfinal框架的url是关联到controller方法名上去的 (index是默认 所以不需要输入)
注意二 :jfinal想在tomcat下运行 要先删除jetty相关依赖/jar包