快速上手开发——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 ...
随机推荐
- OpenStack 服务心跳机制和状态监控
参考链接: OpenStack服务心跳机制和状态监控 https://blog.csdn.net/qqhappy8/article/details/79304221
- 2020.5.21 第一篇 Scrum冲刺博客
Team:银河超级无敌舰队 Project:招新通 项目冲刺集合贴:链接 目录 一.Alpha 阶段成员任务安排 二.明日任务安排 三.预期的任务量 四.敏捷开发前的感想 五.团队期望 一.Alpha ...
- SQL语句组合查询 UNION
1.使用UNION UNION 可以涉及编写多条SELECT语句,首先看看单条语句 第一条SELECT语句把Illinois,Indiana,Michigan等州的缩写传递给IN子句,检索出这些州的所 ...
- Nuxt.js 踩坑记录(3) Net.connection xxxx
浏览器报的是Net.connection啥的错误 项目运行时报错这个 [HPM] Error occurred while trying to proxy request article from l ...
- windows设置定时执行脚本
如果你写了一些Python程序,想要在特定的时间进行执行,例如你想让一段爬虫程序在每天的上午10点执行一次,那么我们就可以来使用windows自带的定时任务进行设置.由于Windows系统,无法使用L ...
- 期望概率DP
期望概率DP 1419: Red is good Description 桌面上有\(R\)张红牌和\(B\)张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付 ...
- Linux常用命令--不断更新
Linux命令: !. 1.[root@loc8lhost/root]# 表示登陆进去系统,其中#是超级⽤用户也即root⽤用 户的系统提示符 #. 2.reboot命令可以重启系统 $. 3.关闭系 ...
- CodeForces - 505B-Mr. Kitayuta's Colorful Graph(暴力)
Mr. Kitayuta has just bought an undirected graph consisting of n vertices and medges. The vertices o ...
- Prometheus 与 国产 TDengine 的对比
通过对比,能加深对这两个系统的理解,方便后续架构选型时作出正确决定.他们的设计思路有很多值得借鉴的地方,虽然工作中需要用到这些知识的地方不多,但是了解他们的设计细节能极大满足我的好奇心. 1.场景和需 ...
- Maven 仓库镜像设置
<mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>al ...