JFinal学习笔记--官方Demo

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

 

JFinal有如下主要特点:

  • MVC架构,设计精巧,使用简单
  • 遵循COC原则,零配置,无xml
  • 独创Db + Record模式,灵活便利
  • ActiveRecord支持,使数据库开发极致快速
  • 自动加载修改后的java文件,开发过程中无需重启web server
  • AOP支持,拦截器配置灵活,功能强大
  • Plugin体系结构,扩展性强
  • 多视图支持,支持FreeMarker、JSP、Velocity
  • 强大的Validator后端校验功能
  • 功能齐全,拥有struts2的绝大部分功能
  • 体积小仅248K,且无第三方依赖
官方实例:
1、新建工程:
JFinal学习笔记--官方Demo_第1张图片
 
JFinal学习笔记--官方Demo_第2张图片
 
JFinal学习笔记--官方Demo_第3张图片
 
2、导入 jar 文件
JFinal学习笔记--官方Demo_第4张图片
 
3、配置 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_3_0.xsd"
	id="WebApp_ID" version="3.0">
	<display-name>JFinal</display-name>
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>

	<!-- 配置JFinal过滤器 -->
	<filter>
		<filter-name>jfinal</filter-name>
		<filter-class>com.jfinal.core.JFinalFilter</filter-class>

		<!-- 基本配置类 -->
		<init-param>
			<param-name>configClass</param-name>
			<param-value>com.xiaoye.study.jfinal.MyJFinalConfig</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>jfinal</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
</web-app>
4、编写 JFinalConfig继承类
package com.xiaoye.study.jfinal;

import com.jfinal.config.Constants;
import com.jfinal.config.Handlers;
import com.jfinal.config.Interceptors;
import com.jfinal.config.JFinalConfig;
import com.jfinal.config.Plugins;
import com.jfinal.config.Routes;
import com.xiaoye.study.jfinal.controller.HelloController;

public class MyJFinalConfig extends JFinalConfig {

	/**
	 * 设置一些常量
	 */
	@Override
	public void configConstant(Constants me) {
		me.setDevMode(true); // 设置开发模式
	}

	/**
	 * 设置访问路由
	 */
	@Override
	public void configRoute(Routes me) {
		me.add("/hello", HelloController.class);
	}

	@Override
	public void configPlugin(Plugins me) {
		
	}

	@Override
	public void configInterceptor(Interceptors me) {
		
	}

	@Override
	public void configHandler(Handlers me) {
		
	}
}
  5、编写自己的 Controller 类
package com.xiaoye.study.jfinal.controller;

import com.jfinal.core.Controller;

/**
 * Action 类
 */
public class HelloController extends Controller {

	/**
	 * index 为 JFinal 默认执行的方法,类似 Struts2 的 execute 方法
	 * 访问的默认路径为:http://localhost/hello/index 或者 http://localhost/hello
	 */
	public void index() {
		renderText("执行 HelloController 的默认(index)方法");
	}
	
	/**
	 * 如果要执行非默认方法,地址栏需要加上方法名称
	 * eg: http://localhost/hello/hello
	 */
	public void hello() {
		renderText("执行 HelloController 的 hello 方法");
	}
}
6、完整的工程目录
JFinal学习笔记--官方Demo_第5张图片
 
 
7、启动测试
7.1
JFinal学习笔记--官方Demo_第6张图片
 7.2
JFinal学习笔记--官方Demo_第7张图片
 7.3
JFinal学习笔记--官方Demo_第8张图片
 7.4
JFinal学习笔记--官方Demo_第9张图片
 7.5
JFinal学习笔记--官方Demo_第10张图片
7.6
 JFinal学习笔记--官方Demo_第11张图片
JFinal 的 tomcat 部署方式
本人使用解压缩的  apache-tomcat-6.0.8 版本
1、删除 工程中的 jetty-server-8.1.8.jar 包
2、进入 apache-tomcat-6.0.8 解压包的 conf 目录下,修改 server.xml 文件。
在 <Host> 节点下增加如下代码:

<Context docBase="F:\study\JFinalStudy\WebContent" path="" reloadable="true"/>

说明:
1、docBase 的值为你的JFinal工程所在路径,注意到 WebContent 或是 WebRoot目录下
2、path 的值为空
 3、启动
进入 apache-tomcat-6.0.8 解压包的 bin目录下,双击 start.bat 启动tomcat
访问路径什么的都一样
访问:http://localhost:8080/hello/hello。
注意:端口号为tomcat配置的端口号
JFinal学习笔记--官方Demo_第12张图片
 
 JFinal 的tomcat部署完成

你可能感兴趣的:(jFinal)