环境及工具:maven 3.2.1 、 idea 2016.2、 jdk1.8、tomcat7(可选)
一、配置
1、打开idea新建maven项目
2、选择由maven_archetype-webapp创建项目(需要先勾上项目的create from archetype)
3、输入你自己项目的groupid 以及artifacid。
4、选择项目位置保存项目。
5、修改maven的pom.xml文件,引入jfinal的相关jar包。
4.0.0
com.demo
jfinal_demo_for_maven
war
3.2
jfinal_demo_for_maven Maven Webapp
http://maven.apache.org
UTF-8
UTF-8
ali-maven
http://maven.aliyun.com/nexus/content/groups/public
true
true
always
fail
junit
junit
3.8.1
test
com.jfinal
jfinal
3.3
log4j
log4j
1.2.16
mysql
mysql-connector-java
5.1.44
com.alibaba
druid
1.0.29
com.jfinal
cos
2017.5
jfinal
org.mortbay.jetty
jetty-maven-plugin
8.1.8.v20121106
stop
5599
/
5
80
60000
6、新建初始化配置的代码(新建一个代码文件夹)。
6、将代码文件夹声明为源代码,并创建对应自觉groupid的jar包
7、新建类继承 JFinalConfig 初始化jfinal的配置。
package cn.qcsy.framework.config;
import cn.qcsy.framework.controller.IndexController;
import cn.qcsy.framework.model._MappingKit;
import com.jfinal.config.*;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.druid.DruidPlugin;
import com.jfinal.template.Engine;
public class FrameWorkConfig extends JFinalConfig {
/**
* 配置框架中常用的常量
* @param constants
*/
public void configConstant(Constants constants) {
// 加载少量必要配置,随后可用PropKit.get(...)获取值
PropKit.use("database.properties");
PropKit.use("system_config.properties");
//设置开发模式
constants.setDevMode(PropKit.getBoolean("devMode", true));
}
/**
* 配置路由 ,及请求地址与实际资源的映射关系 ,有点类似于 springmvc 的@RequestMapping注解
* @param routes
*/
public void configRoute(Routes routes) {
routes.add("/", IndexController.class, "/"); // 第三个参数为该Controller的视图存放路径
}
/**
* 配置模板
* @param engine
*/
public void configEngine(Engine engine) {
}
/**
* 配置Jfinal plugin扩展
* @param Plugins
*/
public void configPlugin(Plugins me) {
// 配置 druid 数据库连接池插件
DruidPlugin druidPlugin = new DruidPlugin(PropKit.get("jdbcUrl"), PropKit.get("user"), PropKit.get("password").trim());
me.add(druidPlugin);
// 配置ActiveRecord插件
ActiveRecordPlugin arp = new ActiveRecordPlugin(druidPlugin);
// 所有映射在 MappingKit 中自动化搞定
_MappingKit.mapping(arp);
me.add(arp);
}
public static DruidPlugin createDruidPlugin() {
return new DruidPlugin(PropKit.get("jdbcUrl"), PropKit.get("user"), PropKit.get("password").trim());
}
public void configInterceptor(Interceptors interceptors) {
}
public void configHandler(Handlers handlers) {
}
}
8、在web.xml中配置config的过滤器,初始化jfinal。
jfinal
com.jfinal.core.JFinalFilter
configClass
cn.qcsy.framework.config.FrameWorkConfig
jfinal
/*
二、运行
jfinal的调试运行有两种方式,一种是通过tomcat 一直是通过main方法直接运行即可
1、tomcat的方式,tomcat的方式,需要注掉pom.xml中对jetty-server的引用,以避免冲突。在idea直接为项目添加artifatis ,然后添加tomct即可。
注掉 jetty-server
添加 artifatis
添加tomcat
启动tomcat即可在网页中访问。整个项目搭建完成!
2、采用java类的形式运行
需要引入服务的jar包
随便找个类,写上main方法
public static void main(String[] args) {
JFinal.start("src/main/webapp", 8080, "/");
}
启动之后可以在网页中直接访问
-------------------------------------------------------完--------------------------------------------------------------------------
JFINAL官方社区:http://www.jfinal.com/