jfinal的配置文件详解
1、去官网下载最新的jar包(我这是JFinal-lib-2.2)
tomcat+mysql 所需要的jar
2、配置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>com.test.config.TestConfig</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>jfinal</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
此处遇到的问题:由于第一次使用/test路径部署,后来改成/ROOT,没有删除原来的部署包,web.xml中的config路径修改后,总是不加载,debug 这个JFinalFilter类,不能部署两个jfinal,否则配置文件会混淆的
注意:configClass 这个是不能随便修改的
3、配置TestConfig.java
public class TestConfig extends JFinalConfig {
/**
* 配置常量
*/
@Override
public void configConstant(Constants me) {
PropKit.use("jdbc.txt"); // 数据库配置文件,发觉不管放到哪里都可以,没有路径
me.setViewType(ViewType.JSP);// 默认是freemark
me.setDevMode(PropKit.getBoolean("devMode", false));
} /**
* 配置处理器
*/
@Override
public void configHandler(Handlers me) {
// TODO Auto-generated method stub
} /**
* 配置拦截器
*/
@Override
public void configInterceptor(Interceptors me) {
// TODO Auto-generated method stub
} /**
* 配置插件
*/
@Override
public void configPlugin(Plugins me) {
// 配置C3p0数据库连接池插件,注意需要两个jar,mchange-commons.jar,c3p.jar
C3p0Plugin C3p0Plugin = new C3p0Plugin(PropKit.get("jdbcUrl"), PropKit
.get("username"), PropKit.get("password").trim());
me.add(C3p0Plugin); // 配置ActiveRecord插件
ActiveRecordPlugin arp = new ActiveRecordPlugin(C3p0Plugin);
me.add(arp); // 方式一: 直接配置数据表映射
arp.addMapping("user", "id", User.class); // 方式二:配置数据表映射写到一个文件中
// DbMappingKit.mapping(arp);
} /**
* 配置路由
*/
@Override
public void configRoute(Routes me) {
// 方式一:直接配置文件
// http://localhost/user 将 访 问 UserController.index() 方 法
me.add("/user", UserController.class, "/WEB-INF/page/user"); // 第三个参数为该Controller的视图存放路径
// http://localhost/user/addUser 将 访 问 UserController.addUser() 方 法
me.add("/user/addUser", UserController.class); // 第三个参数省略时默认与第一个参数值相同
me.add("/user/saveUser", UserController.class); // 方式二:使用中间路由
//me.add(new FrontRoutes()); // 前端路由
// me.add(new AdminRoutes()); // 后端路由
}
3.1、数据库映射的第二种方式:映射表的文件DbMappingKit
public class DbMappingKit {
public static void mapping(ActiveRecordPlugin arp) {
arp.addMapping("user", "id", User.class);
}
}
同意将映射文件放到一个文件中,方便管理
3.2、数据库使用druidPlugin 插件
public void configPlugin(Plugins me) {
//shiro插件 // 配置C3p0数据库连接池插件
DruidPlugin druidPlugin = new DruidPlugin(getProperty("jdbcUrl"), getProperty("user"), getProperty("password"));
druidPlugin.setFilters("stat,log4j"); me.add(druidPlugin);
me.add(new EhCachePlugin());
// 配置ActiveRecord插件
AutoTableBindPlugin arp = new AutoTableBindPlugin(druidPlugin,TableNameStyle.LOWER);//table是实体的小写
me.add(arp);
arp.setShowSql(true);
SqlReporter.setLogger(true); // ShiroPlugin sh=new ShiroPlugin();
// me.add(sh);
}
3.3、路由的第二种配置方式,中间路由
public class AdminRoutes extends Routes {
@Override
public void config() {
add("/user/addUser", UserController.class);
add("/user/saveUser", UserController.class);
}
}
4.UserController.java
public class UserController extends Controller {
public void index() {
renderTest("hello word !");
}
}
此时访问/user,即可看到页面上打印:hello word !
jfinal的配置文件详解的更多相关文章
- quartz配置文件详解
quartz配置文件详解(转载) quartz学习总结: 一.关于job: 用Quartz的行话讲,作业是一个执行任务的简单Java类.任务可以是任何Java代码.只需你实现org.qu ...
- WebConfig配置文件详解
今天看到博客园一位朋友整理的一个WebConfig配置文件详解,觉得不错,转载一下: <?xml version="1.0"?> <!--注意: 除了手动编辑此文 ...
- tomcat配置文件详解
Tomcat系列之服务器的安装与配置以及各组件详解 tomcat 配置文件详解
- ubuntu nginx 安装以及配置文件详解
1.到nginx官网下载源码包.最好下载稳定版本,nginx官网http://www.nginx.org/ 2.安装nginx依赖包运行命令: sudo apt-get install libssl- ...
- Spring配置文件详解 – applicationContext.xml文件路径
Spring配置文件详解 – applicationContext.xml文件路径 Java编程 spring的配置文件applicationContext.xml的默 ...
- spring配置文件详解--真的蛮详细
spring配置文件详解--真的蛮详细 转自: http://book.51cto.com/art/201004/193743.htm 此处详细的为我们讲解了spring2.5的实现原理,感觉非常 ...
- net-snmp配置文件详解
net-snmp配置文件详解 net-snmp的配置文件是有一定的层次结构的,配置起来也很方便.网上找了很多资料,大概把这个配置文件的各个信息搞懂了一点.其实在net-snmp的EXAMPLE.con ...
- Rsyslog配置文件详解
Rsyslog配置文件详解https://my.oschina.net/0757/blog/198329 # Save boot messages also to boot.log 启动的相关信息lo ...
- (原创)LAMP搭建之二:apache配置文件详解(中英文对照版)
LAMP搭建之二:apache配置文件详解(中英文对照版) # This is the main Apache server configuration file. It contains the # ...
随机推荐
- [UE4]Montage动画设置Slot
最后一张图看下,配合官网motage教程,容易理解push anim具体用法 http://aigo.iteye.com/blog/2277545 如何新建一个Montage的步骤这里省略了,网上很多 ...
- unreal4特性介绍
原文地址: https://www.unrealengine.com/products/unreal-engine-4 unreal enginer介绍 我的UE4学习(一) 你曾想过用连 ...
- 洛谷P3004 [USACO10DEC]宝箱Treasure Chest
P3004 [USACO10DEC]宝箱Treasure Chest 题目描述 Bessie and Bonnie have found a treasure chest full of marvel ...
- 洛谷P1074 靶形数独(跳舞链)
传送门 坑着,等联赛之后再填(联赛挂了就不填了233) //minamoto #include<iostream> #include<cstdio> #include<c ...
- SAP中对于获取订单的状态
在SAP中对于如何获取订单的状态,提供了至少两个函数,分别是 STATUS_READ 和 STATUS_TEXT_EDIT.下面简单介绍这两个函数 1.STATUS_READ 改函数的实现原理大 ...
- mySQL多表查询与事务
一.范式 1. 什么是范式 1.1 什么是范式 范式:设置一个科学的.规范的数据库,需要满足的一些规则 1.2 有哪些范式 共有:6大范式 第1范式:1NF 满足最基本的要求 第2范式:2NF 在1N ...
- Spring JdbcTemplate详解及项目中的运用
1.Spring对不同的持久化支持: Spring为各种支持的持久化技术,都提供了简单操作的模板和回调 ORM持久化技术 模板类 JDBC org.springframework.jdbc.core. ...
- 从零开始学Docker
在写这篇博客之前,听说过Docker技术,但是一直没有主动去深入了解.用这篇博客来记录自己学习Docker的个人总结,会一直补充完善. 我这边先随便写,后期再做总结!! Docker官网: https ...
- 在github上下载子文件夹(svn命令)
Q: 平时都是用git clone这个命令从github中克隆出完整的文件,但有时我们仅需要其中某个文件夹时,该如何下载? A: 可以使用svn命令来完成. 具体用法:(以视觉slam14讲的gith ...
- 用Java创建JMeter变量 - 终极指南
了解如何在Java中创建不同类型的JMeter变量,不同变量类型的详细信息以及如何避免错误. 在Apache JMeter™中编写负载或功能测试涉及使用不同类型的变量.变量有多种用途,例如,在以下情况 ...