快速上手开发——JFinal配置(全步骤图文解析)
摘要: 因为发现官网上只有Eclipse的配置文档,就写了这篇基于IDEA+maven的配置流程。本文使用安装了maven插件的IDEA进行配置,为了照顾IDEA新手,几乎每个步骤都截了图。
环境说明:
程序版本
JRE1.8
Tomcat7.0
maven3.1.1
Intellij IDEA14.0.3
一、新建一个Project
★ 打开IDEA,Create New Project

★ 通过Maven建立Project,但不使用模板

★ 填写Project相关命名,完成Project的创建。此处将Project命名为「jfinal-demo」


二、把当前Project改为一个POM工程。
该工程作为项目的父工程,用于定义各模块依赖的包的版本、编码方式等。
★ 删掉src目录

★ 编辑根目录下的pom.xml,将打包格式设置为pom。
★ 父工程的pom.xml
4.0.0jfinal-demojfinal-parentpom1.0-SNAPSHOTUTF-82.24.12junitjunit${junit.version}com.jfinaljfinal${jfinal.version}${project.artifactId}org.apache.maven.pluginsmaven-resources-plugin2.7${project.build.sourceEncoding}org.apache.maven.pluginsmaven-compiler-plugin3.21.71.7${project.build.sourceEncoding}org.apache.tomcat.maventomcat7-maven-plugin2.280/
广告是坚持的动力,点一下广告,就是对我最大支持!
三、新建Module(模块)「jfinal-web」
★ 在jfinal-demo目录上单击鼠标右键,新建子Module

★ 创建时选择使用模板



★ 创建完成后,目录结果如下图所示

四、编写测试用代码
★ 在jfinal-web模块的main目录下,新建java目录

★ 把刚建立的java目录标记为Sources Root,这样IDEA才会把该目录下的.java文件当做java源文件来处理

★ 给「jfinal-web」模块添加依赖。版本已经在父工程里定义了,这里不需要填写version。

★ 「jfinal-web」模块的pom.xml
jfinal-parentjfinal-demo1.0-SNAPSHOT4.0.0jfinal-webwarjfinal-web Maven Webapphttp://maven.apache.orgjunitjunittestcom.jfinaljfinaljfinal-web
★ 创建测试用Controller类「HelloController.java」


★ 该类要继承com.jfinal.core.Controller类,并实现index方法

★ com.demo.controller.HelloController
packagecom.demo.controller;importcom.jfinal.core.Controller;publicclassHelloControllerextendsController{publicvoidindex(){ renderText("hello world!"); }}
★ 创建测试用Config类「DemoConfig.java」


★ 该类要继承com.jfinal.config.JFinalConfi类,并重写五个方法。按Alt+Insert快捷键可快速生成代码


★ 注意这里加入了路由“/hello",定义了访问http://localhost/hello时,调用的是哪个controller

★ com.demo.config.DemoConfig
packagecom.demo.config;importcom.demo.controller.HelloController;importcom.jfinal.config.*;publicclassDemoConfigextendsJFinalConfig{@OverridepublicvoidconfigConstant(Constants me){ me.setDevMode(true); }@OverridepublicvoidconfigRoute(Routes me){ me.add("/hello", HelloController.class); }@OverridepublicvoidconfigPlugin(Plugins me){ }@OverridepublicvoidconfigInterceptor(Interceptors me){ }@OverridepublicvoidconfigHandler(Handlers me){ }}
五、配置运行环境
★ 照图操作,先不用理为什么



六、配置web.xml的过滤器,保证所有访问均能被JFinal拦截

★ web.xml
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >jfinal-demojfinalcom.jfinal.core.JFinalFilterconfigClasscom.demo.config.DemoConfigjfinal/*
七、启动应用

★ 启动完成

★ 打开浏览器测试一下

快速上手开发——JFinal配置(全步骤图文解析)的更多相关文章
- [Full-stack] 快速上手开发 - React
故事背景 [1] 博客笔记结合<React快速上手开发>再次系统地.全面地走一遍. [2] React JS Tutorials:包含了JS --> React --> Red ...
- 【java框架】MyBatis-Plus(1)--MyBatis-Plus快速上手开发及核心功能体验
1.MyBatis-Plus入门开发及配置 1.1.MyBatis-Plus简介 MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变, ...
- NHibernate3快速上手教程FluentNHibernate配置与DBHelper
很多学习NHibernate的新手很容易卡在配置文件这一关,正所谓万事开头难,上手后再配合官方文档就比较容易了. 网上关于配置文件的资料非常多,但由于版本的问题,许多老的教程中都没有明确指出类库的版本 ...
- NHibernate3快速上手教程FluentNHibernate配置与DBHelper(已过期,有更好的)
很多学习NHibernate的新手很容易卡在配置文件这一关,正所谓万事开头难,上手后再配合官方文档就比较容易了. 网上关于配置文件的资料非常多,但由于版本的问题,许多老的教程中都没有明确指出类库的版本 ...
- 踏入OpenGL大门 —— VS2015开发环境配置 (详细图文)
转自: https://www.jianshu.com/p/68c314fa9fea?from=groupmessage 眼睛熊 ---------------- 本文 ------------- ...
- Ubuntu下嵌入式Qt开发环境配置全攻略
http://qpcwth.blog.163.com/blog/static/20993024620139151424822/ 在安装的过称中,出现一些问题,注意试想: 1.本次开发环境的配置,是基于 ...
- 手摸手教你使用vue-cli脚手架-详细步骤图文解析[vue入门]
写在前面: 使用 vue-cli 可以快速创建 vue 项目,vue-cli很好用,但是在最初搭建环境安装vue-cli及相关内容的时候,对一些人来说是很头疼的一件事情,本人在搭建vue-cli的项目 ...
- vscode C++开发环境配置教程(教你如何用vscode写C++)
用了一段时间的cb,Devc++,但一直感觉cb的高亮太差,而Devc++使用体验差(尤其是代码补全功能),换过vs2017,但是由于其太大了,卡顿十分明显,所以最终选择了vscode这款轻量级编译器 ...
- [译]:Xamarin.Android开发入门——Hello,Android快速上手
返回索引目录 原文链接:Hello, Android_Quickstart. 译文链接:Xamarin.Android开发入门--Hello,Android快速上手 本部分介绍利用Xamarin开发A ...
随机推荐
- 第2篇 Scrum 冲刺博客
1.站立会议 照骗 进度 成员 昨日完成任务 今日计划任务 遇到的困难 钟智锋 无 确定客户端和服务器通信的形式 各成员的代码难以统一 庄诗楷 无 编写客户端UI 加入图片总是失败 易德康 无 马,车 ...
- 区块链入门到实战(36)之Solidity – 运算符
Solidity – 算术运算符 Solidity 支持的算术运算符,如下表所示: 假设变量A的值为10,变量B的值为20. 序号 运算符与描述 1 + (加)求和例: A + B = 30 2 – ...
- JVM大作业5——指令集
JVM的每一个线程都有一个虚拟机栈,方法调用时,JVM会在虚拟机栈内为该方法创建一个栈帧. 一条线程,只有正在执行的方法对应的栈帧时可活动的,这个栈帧被称为当前栈帧,当前栈帧对应的方法被称为当前方法, ...
- IntelliJ IDEA下git版本回退,版本还原
原文链接:https://blog.csdn.net/hehyyoulan/article/details/80005272
- UnitTest单元测试框架解析【实用篇】
UnitTest是展开自动化测试的基础——这个框架很重要!首先我们先自己写一个测试类: 1.被测试类 Widthget.py: # coding: utf-8class Widthget: def _ ...
- gdb我在我本机上p不了,在别人机子上可以
gdb我在我本机上p不了,在别人机子上可以,不知道什么 (gdb) p EventFlow->devicetypeThere is no member or method named devic ...
- js 原生功底 (一)
欢迎大家一起学习,点击查看
- 剑指 Offer 43. 1~n整数中1出现的次数
题目描述 输入一个整数 n ,求1-n这n个整数的十进制表示中1出现的次数. 例如,输入12,1-12这些整数中包含1 的数字有1.10.11和12,1一共出现了5次. 示例 1: 输入:n = 12 ...
- Agumaster 增加日交易数据列表
- Oracle中真正稳妥的求三甲的方法
坐地铁回家路上忽然想起,三甲排名可能为多个,只取三名岂不荒谬.不信请看下面数据: create table tb_score( id number(4,0) primary key, name nva ...