jfinal框架学习过程
刚刚学习jfinal,通过一天左右的时间大体上理解了这个框架的用法,我对他的理解是JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的。
下面介绍下这个东西的使用方式:
首先声明下我是用的工具(eclipse),之前我一直使用的IDEA,这是新公司的需求,第一步我们需要创建一个 Web 下面的 Dynamic Web Project类型项目,点击下一步填上基本信息,注意!!!Target runtime这个选项一定要选择<None>,点击下一步,修改Default Ouput Folder选项栏,推荐输入WebRoot\WEB-INF\classes,需要注意的是此处的Default out folder 必须要与 WebRoot\WEB-INF\classes 目录完全一致才可以使用JFinal 集成的 Jetty 来启动项目(也就是说jfinal框架写出的程序可以不需要Tomcat这样的服务器,本身的服务器就可以运行),点击下一步 修改Content directory ,推荐输入WebRoot,这里输入的值就是上一部中的根目录( WebRoot\WEB-INF\classes),之后点击Finish,这样项目就建成了。
接下来需要下载jfinal的文件,(下载地址:https://download.csdn.net/download/angelic111/9711201),下载完成后,将 jfinal-xxx.jar 与 jetty-server-8.1.8.jar拷贝至刚建好的项目目录WEB-INF\lib下即可。这里要注意jetty-server-8.1.8.jar是开发时使用的运行环境,生产环境不需要此文件。
接下来找到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>
之后找到项目中src目录下创建demo包,在demo包下创建DemoConfig文件(主要文件),内容如下:
package demo;
import com.jfinal.config.*;
public class DemoConfig extends JFinalConfig {
public void configConstant(Constants me) {
me.setDevMode(ture);
}
public void configRoute(Routes me) {
me.add("/hello", HelloController.class);
}
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.");
}
}
这样简单的首页就配置好了,下面启用项目:
找到运行键,在Eclipse中是一个绿色的三角形的符号,右击它找到ebug Configurations... 这个选项,点击他会弹出一个框,找到java Application这个选项右击并选择New新建启动项,在右侧的窗口中的Main class输入框中填写:com.jfinal.core.JFinal并点击Debug按钮启动项目(或者版本不一样的点击run)
运行成功后可以打开浏览器在地址栏中输入:http://localhost/hello
就可以在页面中查看输出内容Hello JFinal World 证明项目框架搭建完成。
是不是很简单呢,只需要不到两个小时就可以学会了。
jfinal框架学习过程的更多相关文章
- jfinal框架教程-学习笔记(二)
上一节介绍了jfinal框架的简单搭建,这节通过一个小例子了解jfinal的结构和特点 先上图 1.建数据库(我用的是oracle数据库,其他的相对也差不多) -- Create table crea ...
- jfinal框架教程-学习笔记
jfinal框架教程-学习笔记 JFinal 是基于 Java 语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restfu ...
- 使用JFinal框架中Validator
Validator是JFinal框架中的校验组件,在Validator类中提供了我们经常使用的校验方法,而Validator本身实现了Interceptor接口,所以Validator也相当于一个拦截 ...
- jfinal框架新手使用之路及开发心得
从接触jfinal这个框架到现在差不多也有一个的时间了,因为之前接触的都是像spring ,springMVC,mybatis,struts2,hibernate这种传统,大多数公司都在用的这种框架. ...
- Jfinal框架是什么框架?适用于什么项目呢?
Jfinal框架是什么框架?适用于什么项目呢? jfinal 基于spring MVC研发的框架,操作简单.节省代码,适用于所有web项目.适合中小型项目开发.10分钟写出一个页面的增删改查.目前所在 ...
- jfinal框架的初级学习
1.同strust2,使用jfinal框架首先需要在web.xml配置自己的过滤器(com.jfinal.core.JFinalFilter),并初始化JFinalConfig类. <filte ...
- 使用JFinal框架连接数据库,实现注册、登录功能
使用JFinal框架连接数据库,实现注册.登录功能 1.在Eclipse中新建Dynamic Web project项目 2.导入jfinal-2.2-bin-with-src.jar.c3p0-0. ...
- jfinal框架教程
jfinal框架教程 下面通过一个小例子了解jfinal的结构和特点 1.建数据库(我用的是oracle数据库,其他的相对也差不多) -- Create table create table CLAS ...
- 搭建jfinal框架时报 Could not load driverClass com.mysql.jdbc.Driver
搭建jfinal框架时报 Could not load driverClass com.mysql.jdbc.Driver 没有加载MySQL的驱动,你有没有把mysql的驱动包放到你项目的WEB-I ...
随机推荐
- Java 多线程之自旋锁
一.什么是自旋锁? 自旋锁(spinlock):是指当一个线程在获取锁的时候,如果锁已经被其它线程获取,那么该线程将循环等待,然后不断的判断锁是否能够被成功获取,直到获取到锁才会退出循环. 获取锁的线 ...
- 巧用这19条MySQL优化,效率至少提高3倍
阅读本文大概需要 3.8 分钟. 作者丨喜欢拿铁的人 https://zhuanlan.zhihu.com/p/49888088 本文我们来谈谈项目中常用的MySQL优化方法,共19条,具体如下: 1 ...
- 第88节:Java中的Ajax和ASP.NET和TCP/IP 教程和JSON
第88节:Java中的Ajax和Jquery ajax是什么?有什么用?原理,怎么用? ajax是asynchronous javascript and xml(异步javascript和xml),是 ...
- 第86节:Java中的JQuery基础
第86节:Java中的JQuery 前言复习 定时器: setInterval clearInterval setTimeout clearTimeout 显示: img.style.display ...
- mongoose的save无效的问题
概述 今天朋友遇到了使用mongoose中的save无效的问题,我通过查找资料帮他解决了,把心得记录下来,供以后开发时参考,相信对其他人也有用. 参考资料: Mongoose学习参考文档--基础篇 M ...
- [Postman]历史(8)
邮递员将您发送的所有请求存储在左侧边栏的“历史记录”视图中.您可以使用历史记录快速尝试各种请求,而不必浪费时间从头开始构建请求.您还可以通过单击请求名称来加载先前的请求. 如果您创建了一个帐户并登录P ...
- chrome强制刷新,非ctrl+f5
开发时,经常有ctrl+f5无法做到真正的强制刷新,以下可以帮到你 Ctrl+Shift+Del 清除Google浏览器缓存的快捷键 Ctrl+Shift+R 重新加载当前网页而不使用缓存内容
- C++版 - Leetcode 69. Sqrt(x) 解题报告【C库函数sqrt(x)模拟-求平方根】
69. Sqrt(x) Total Accepted: 93296 Total Submissions: 368340 Difficulty: Medium 提交网址: https://leetcod ...
- php5.5+apache2.4+mysql5.7在windows下的配置
apache2.4下载和安装 下载apache2.4 https://www.apachelounge.com/download/VC11/ 提取解压目录Apache24到d:/dev/Apache2 ...
- Java 代理模式
熟悉设计模式的人对于代理模式可能都不陌生.那什么事代理呢,例如我们要买一件国外的商品,但是自己买不到只能去找代购,这个代购就是我们的代理.我们来了解下java中的代理 静态代理 我们来举一个开车的例子 ...