把JFinal整合到Actframework是一种什么样的体验
2017-07-14 11:36
615 查看
摘要: actframework的路由解析真的是太过强大,说比spring强大完全不为过,jfinal的确是极速开发的神器,activerecord template engine极简到新手都能分分钟上手使用。两者结合起来是不是更加完美呢?
使用jfinal也有五六年了吧,见证了jfinal从零到有再到现在的火热,jfinal的功能越来越强大,但框架并没有变得越来越臃肿,对于新手老手来讲,代码依然简洁。
下面,让我们来看看jfinal的简单demo:
到此,一个完整的jfinal流程结束了,然后打包成war,在servlet容器运行即可。
我们再看看actframework整合jfinal的demo:
actframework类似play1,不是基于servelt的mvc框架,因此可以直接运行jar包。
本文只是做了一个简单介绍,actframework的特性真的很多,在此就不一一介绍了。
@JFinal @罗格林 欢迎批评指正。
https://github.com/piaohao/act-jfinal(插件地址)
https://github.com/piaohao/act-jfinal-demo(demo地址)
http://git.oschina.net/463168428/act-jfinal-demo http://git.oschina.net/463168428/act-jfinal
使用jfinal也有五六年了吧,见证了jfinal从零到有再到现在的火热,jfinal的功能越来越强大,但框架并没有变得越来越臃肿,对于新手老手来讲,代码依然简洁。
下面,让我们来看看jfinal的简单demo:
<!--配置jfinal filter,所有请求由jfinal接管--> <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <filter> <filter-name>jfinal</filter-name> <filter-class>com.jfinal.core.JFinalFilter</filter-class> <init-param> <param-name>configClass</param-name> <param-value>com.github.piaohao.config.MainConfig</param-value> </init-param> </filter> <filter-mapping> <filter-name>jfinal</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
//配置全局配置类,注册路由,模板引擎,数据库插件,各种第三方插件,拦截器等 public class MainConfig extends JFinalConfig { @Override public void configConstant(Constants me) { PropKit.use("common.properties");//加载全局属性 } @Override public void configRoute(Routes me) { me.add("/",IndexController.class); } @Override public void configEngine(Engine me) { } @Override public void configPlugin(Plugins me) { DruidPlugin dp = new DruidPlugin(PropKit.get("jdbc.master.url"), PropKit.get( "jdbc.master.username"), PropKit.get("jdbc.master.password")); dp.setTestOnBorrow(true); dp.setTestWhileIdle(true); dp.setTestOnReturn(true); dp.addFilter(new StatFilter()); WallFilter wall = new WallFilter(); wall.setDbType("mysql"); dp.addFilter(wall); ActiveRecordPlugin arp = new ActiveRecordPlugin(dp); arp.setShowSql(PropKit.getBoolean("devMode", true)); arp.addMapping("account", "id", Account.class); me.add(arp); } @Override public void configInterceptor(Interceptors me) { } @Override public void configHandler(Handlers me) { } }
//路由Controller public class IndexController extends Controller { public void list() { renderJson(Account.dao.find("select * from account")); } }
到此,一个完整的jfinal流程结束了,然后打包成war,在servlet容器运行即可。
我们再看看actframework整合jfinal的demo:
//jfinal的active record插件,用于数据库操作 public class MyConfig { @OnAppStart public static void init() { PropKit.use("common.properties"); DruidPlugin dp = new DruidPlugin(PropKit.get("jdbc.master.url"), PropKit.get( "jdbc.master.username"), PropKit.get("jdbc.master.password")); dp.setTestOnBorrow(true); dp.setTestWhileIdle(true); dp.setTestOnReturn(true); dp.addFilter(new StatFilter()); WallFilter wall = new WallFilter(); wall.setDbType("mysql"); dp.addFilter(wall); ActiveRecordPlugin arp = new ActiveRecordPlugin(dp); arp.setShowSql(PropKit.getBoolean("devMode", true)); // 所有配置在 MappingKit 中搞定 arp.addMapping("account", "id", Account.class); dp.start(); arp.start(); } }
//主程序,act相当灵活,Controller定义在哪里都行,可以类集成,可以只是类中的部分方法 public class Todo { @GetAction("/list") public void list() { List<Account> accounts = Account.dao.find("select * from account"); render(accounts); } public static void main(String[] args) throws Exception { Act.start("TODO-JFinal"); } }
actframework类似play1,不是基于servelt的mvc框架,因此可以直接运行jar包。
本文只是做了一个简单介绍,actframework的特性真的很多,在此就不一一介绍了。
@JFinal @罗格林 欢迎批评指正。
https://github.com/piaohao/act-jfinal(插件地址)
https://github.com/piaohao/act-jfinal-demo(demo地址)
http://git.oschina.net/463168428/act-jfinal-demo http://git.oschina.net/463168428/act-jfinal
相关文章推荐
- 互联网项目经理工作到底是一种什么样的体验?
- 国庆加班是一种什么样的体验?
- 用C语言写面向的对象是一种什么样的体验
- 在 2016 年做 PHP 开发是一种什么样的体验?
- 在 2016 年学 JavaScript 是一种什么样的体验?(转)
- 眼睛好看是一种什么样的体验?
- 穷得只剩下创意是一种什么样的体验?
- 喝液氮是一种什么样的体验
- 在2016年学JavaScript 是一种什么样的体验?
- 没有喜欢的人是一种什么样的体验?
- 在阿里AI实验室做NLP高级算法工程师是一种什么样的体验?
- 在 2016 年学 JavaScript 是一种什么样的体验?
- 程序员年少成名,是一种什么样的体验
- 2016年 学习JavaScript是一种什么样的体验?
- 年收入12万,是一种什么样的体验?
- 北漂离开北京后是一种什么样的体验
- 用C语言写面向的对象是一种什么样的体验
- 在 2016 年学 JavaScript 是一种什么样的体验?
- 北漂离开北京后是一种什么样的体验
- 在 2016 年学 JavaScript 是一种什么样的体验?(转)