最近在做微信开发,于是用到了jfinal。

做一下解释:

JFinal 是基于 Java 语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速、代
码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有 Java 语言所有优势的同时
再拥有 ruby、python、php 等动态语言的开发效率

这些你都可以在百度上找到,我主要是看中了开发快的优点。

1 创建项目
以最常用的 Eclipse 为例,推荐使用 Eclipse IDE for Java EE Developers 版本。
创建 Dynamic Web Project

填入项目基本信息

注意:Target runtime 一定要选择<None>
修改 Default Output Folder,推荐输入 WebRoot\WEB-INF\classes

特别注意:此处的 Default out folder 必须要与 WebRoot\WEB-INF\classes 目录完全一致才可
以使用 JFinal 集成的 Jetty 来启动项目。
修改 Content directory,推荐输入 WebRoot

注意:此处也可以使用默认值 WebContent, 但上一步中的 WebRoot\WEB-INF\classes 则需要
改成 WebContent\WEB-INF\classes 才能对应上。

2 放入 JFinal 库文件

将 jfinal-xxx.jar 与 jetty-server-8.1.8.jar 拷贝至项目 WEB-INF\lib 下即可。注意:
jetty-server-8.1.8.jar 是开发时使用的运行环境,生产环境不需要此文件。

3 修改 web.xml

将如下内容添加至 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>

4 添加 java 文件

在项目 src 目录下创建 demo 包,并在 demo 包下创建 DemoConfig 文件, 内容如下:

package demo;

import com.jfinal.config.*;
import com.jfinal.template.Engine; 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) {}
}

注意:DemoConfig.java 文件所在的包以及自身文件名必须与 web.xml 中的 param-value 标

签内的配置相一致(在本例中该配置为 demo.DemoConfig)。

在 demo 包下创建 HelloController 类文件, 内容如下:

 

package demo;

import com.jfinal.core.Controller;

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

5 启动项目

创建启动项如下图所示:

鼠标右键点击 Java Application 并选择 New 菜单项,新建 Java Application 启动项,如下图
所示:

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

上面的启动配置也可以使用一个任意的 main 方法代替。在任意一个类文件中添加一个
main 启动集成的 jetty 如下图所示:

package demo;

import com.jfinal.core.JFinal;

public class DemoMain {

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

6 开启浏览器看效果

打开浏览器在地址栏中输入: http://localhost/hello,输出内容为 Hello JFinal World 证明项目
框架搭建完成。如需完整 demo 示例可在 JFinal 官方网站下载:http://www.jfinal.com

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

创建一个jFinal项目的更多相关文章

  1. 快速创建一个springboot项目

    创建一个maven项目(springboot.mybatis-plus) 目标:可以访问ftl页面.对象(json字符串),可以进行单元测试 1.新建一个maven项目,选择模板maven-arche ...

  2. eclipes创建一个web项目web.xml不能自动更新的原因(web.xml和@WebServlet的作用)

    在eclipse中创建一个Web项目的时候,虽然有web.xml生成,但是再添加Servlet类文件的时候总是看不见web.xml的更新,所以异常的郁闷!上网查了查,原来我们在创建Web项目的时候,会 ...

  3. 【Android Developers Training】 1. 创建一个Android项目工程

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  4. 创建一个vue项目的过程

    创建一个vue项目: 1.首先从UI手上拿到PSD设计图,然后看设计搞的内容,需要做个大概的页面布局 2.做vue之前不许安装node,因为做vue项目要和node结合使用 3.然后安装vue脚手架: ...

  5. eclipse中创建一个maven项目

    1.什么是Maven Apache Maven 是一个项目管理和整合工具.基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建.报告和文档. Maven工程结构和 ...

  6. Python框架学习之用Flask创建一个简单项目

    在前面一篇讲了如何创建一个虚拟环境,今天这一篇就来说说如何创建一个简单的Flask项目.关于Flask的具体介绍就不详细叙述了,我们只要知道它非常简洁.灵活和扩展性强就够了.它不像Django那样集成 ...

  7. 用maven创建一个web项目

    下面所使用的Eclipse开发工具为Eclipse Java EE IDE 版本. 1.创建一个maven项目,如图所示: 选择“maven-archetype-webapp”,如图所示: 后面几步按 ...

  8. Django之真正创建一个django项目

    真正创建一个django项目 1 创建Django项目     :new-project 2 创建APP :  python manager.py startapp app01 3 setting 配 ...

  9. Vue Create 创建一个新项目 命令行创建和视图创建

    Vue Create 创建一个新项目 命令行创建和视图创建 开始之前 你可以先 >>:cd desktop[将安装目录切换到桌面] >>:vue -V :Vue CLI 3.0 ...

随机推荐

  1. Maximum Likelihood 最大似然估计

    Maximum Likelihood 最大似然估计 这个算法解决的问题是,当我们知道一组变量的密度分布函数与从总体采样的个体的时候,需要估计函数中的某些变量. 假设概率密度函数如下: 一般来说,为了计 ...

  2. 手机连接电脑,使用adb命令

    手机连接电脑使用adb命令,主要是有2种方式,其中最常见的就是第一种,用usb连线使用 1:adb usb - restarts the adbd daemon listening on USB ad ...

  3. vue2创建webpack项目build之后无法正常显示页面的问题

    最近在做vue项目的时候,项目正常运行,但是当我打包上线之后,却出现无法出现页面空白的情况,打开控制台,发现无法加载到css和js文件. 仔细观察发现路径中少了一个dis文件夹,于是我加上dist文件 ...

  4. Day02:变量 / JAVA基本类型

    变量 什么是变量? 变化数值的载体 变量声明.初始化.使用 声明变量  类型 大小(占用空间) int x; 初始化变量 (赋值) 给予占用空间 int x=35; 使用变量 直接使用变量名 注意: ...

  5. USACO2.2 Preface Numbering【思维+打表】

    这道题乍一看没有什么思路,细看还是没有什么思路 嗯,细看还是可以看出些什么端倪. 不能复合嵌套什么的 总结一下就只有这样3种规则: 1.IXCM最多三个同样连续 加起来2.递减:加起来 注意VLD不连 ...

  6. selenium—用NoSuchElementException异常判断页面元素是否存在

    一.知识补充 1.find_element的一种使用方法: find_element(by=方法,value=值) 例如: find_element(by="id",value=& ...

  7. python调用jenkinsapi

    在通过python 调用jenkinsapi的时候,需要对一些作业进行定时对构建 报错: <title>Error 403 No valid crumb was included in t ...

  8. Vue.js官方文档学习笔记(二)组件化应用的构建

    组件化应用的构建 组件化应用允许我们使用小型.独立和通常可复用的组件构建大型应用. Vue注册组件 Vue.component('todo-item',{template:'<li>这是个 ...

  9. CGAL 属性配置

    libgmp-10.lib libmpfr-4.lib boost_system-vc120-mt-gd-1_63.lib D:\dev\CGAL-4.9\include D:\dev\CGAL-4. ...

  10. 编辑器IDE之VSCode

    很多时候面临换项目组,公司内部换等等,需要清除之前的权限,电脑更换等... 确实很烦人,所以记录也是给自己下次更加快速方便的使用 插件安装 个人常用的一些插件,发现好用的会更新 插件名 功能 vsco ...