JFinal快速开发框架(一)——Hello JFinal

一位小大佬自己闲来搭的博客,现已被github收做模板,博客清新简洁,个性有趣味,特此引流一下:尹队的博客

官方JFinal 极速开发框架

1、JFinal简介

JFinal是国产基于java语言的极速WEB MVC+ORM框架,由Handler、Interceptor、Controller、Render、Plugin五大部分组成。其核心设计目的就是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有 Java语言所有优势的同时 再拥有 ruby、python、php等动态语言的开发效率!

JFinal 有如下主要特点:

  1. MVC 架构,设计精巧,使用简单
  2. 遵循 COC 原则,零配置,无 xml(Convention over Configuration,惯例优于配置原则

    简单点说,就是将一些公认的配置方式和信息作为内部缺省的规则来使用。例如,Hibernate的映射文件,如果约定字段名和类属性一致的话,基本上就可以不要这个配置文件了。你的应用只需要指定不convention的信息即可,从而减少了大量convention而又不得不花时间和精力啰里啰嗦的东西,配置文件很多时候相当的影响开发效率。

    Rails 中很少有配置文件(但不是没有,数据库连接就是一个配置文件),Rails 的fans号称期开发效率是 java 开发的 10倍,估计就是这个原因。Maven也使用了CoC原则,当你执行mvn -compile命令的时候,不需要指源文件放在什么地方,而编译以后的class文件放置在什么地方也没有指定,这就是CoC原则。

  3. 独创 Db + Record 模式,灵活便利
  4. ActiveRecord 支持,使数据库开发极致快速
  5. 自动加载修改后的 java 文件,开发过程中无需重启 web server
  6. AOP 支持,拦截器配置灵活,功能强大
  7. Plugin 体系结构,扩展性强
  8. 多视图支持,支持 FreeMarker、JSP、Velocity
  9. 强大的 Validator 后端校验功能
  10. 功能齐全,拥有 struts2 绝大部分核心功能
  11. 体积小仅 303K,且无第三方依赖

 2、 创建demo运行

项目源码地址:Jfinal-demo

(1)使用eclipse创建Dynamic Web Project, 注意:Target runtime选择< None>:

(2)next-->此处的 Default out folder 必须要与 WebRoot\WEB-INF\classes 目录完全一致才可以使用 JFinal 集成的 Jetty 来启动项目。

next:

注意:此处也可以使用默认值 WebContent, 但上一步中的 WebRoot\WEB-INF\classes 则需要 改成 WebContent\WEB-INF\classes 才能对应上(这一步有问题后续启动项目会有问题)。之后,Finish。

(3)添加jar包

将jfinal-xxx-xxx.jar 与jetty-server-xxx.jar 拷贝至项目 WEB-INFlib下即可。下载地址jfinal-download

注意:jetty-server-xxx.jar是开发时使用的运行环境,生产环境不需要此文件。

(4)修改web.xml文件

<?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_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>Jfinal-demo</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <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>
  
</web-app>

(5)编写DemoConfig类

新建demo包及DemoConfig类,并集成JFinalConfig:

注意:DemoConfig.java 文件所在的包以及自身文件名必须与 web.xml 中的 param-value 标签内的配置相一致(在本例中该配置为 demo.DemoConfig)

(6)HelloController

在 demo 包下创建 HelloController 类文件并继承Controller:

package demo;

import com.jfinal.core.Controller;

public class HelloController extends Controller {
    public void index() {
        renderText("Hello JFinal~~");
    }
}

(7)启动项目

在右侧窗口中的 Main class 输入框中填入: com.jfinal.core.JFinal 并点击 Debug 按钮启动项目

启动成功截图:

(8)浏览器输入http://localhost/hello 进行访问

注意:在 tomcat 下开发或运行项目时,需要先删除 jetty-server-xxx.jar 这个包,否则会引起冲突。 Tomcat启动项目不能使用上面介绍的启动方式,因为上面的启动方式需要用到jetty-server-xxx.jar。

(9)另一种启动方式

在demo包下创建JFinalStart,类名无所谓,书写main方法如下:

package demo;

import com.jfinal.core.JFinal;

public class JFinalStrat {
    public static void main(String[] args) {
        JFinal.start("WebRoot", 80, "/", 5);
    }
}

 之后运行main方法:

ok,访问成功,简单的JFinal第一个入门程序完成~

3、第一种启动方式修改JFinal启动端口

点击第一种启动方式后,点击Arguments:输入WebRoot 801 / 5-->debug

修改成功!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值