Idea如何使用Maven配置Jetty插件请参考:
http://blog.csdn.net/m0_37949305/article/details/79243860
配置完Jetty插件后,我们要来配置Jfinal
(1)使用maven配置Jfinal所需的包
打开pom.xml文件
在dependencys里添加如下配置信息并保存
<dependency> <groupId>com.jfinal</groupId> <artifactId>jfinal</artifactId> <version>3.3</version> </dependency> <dependency> <groupId>com.jfinal</groupId> <artifactId>jetty-server</artifactId> <version>8.1.8</version> <scope>provided</scope> </dependency>(2)创建存放源文件的java文件夹跟包路径com.study右键main,依次选择New-Directory创建java文件夹
创建完毕后,右键创建出来的java文件夹,
依次选择Mark Directory as - Sources Root (意思是将java文件夹设置成源文件夹/根目录)
具体操作如下
设置完毕后新建包路径,com.study
右键java文件夹,依次选择 New - Package
填写包路径为com.study
之后文件结构如下图所示
(3)在com.study路径下创建config跟controller包并创建控制器类 HelloController和配置类 HelloConfig
在controller包里创建控制器类 HelloController ,HelloController 继承 Controller
具体代码如下:
package com.study.controller; import com.jfinal.core.Controller; public class HelloController extends Controller { /** * 默认路径 */ public void index() { render("/index.jsp"); } /** * 指定路径,route里的url+/hello */ public void HelloJFinal() { renderText("Hello JFinal World......"); } } 注意:package是包路径,如果不一致,记得改为自己的。在config包里创建配置类 HelloConfig ,HelloConflg 继承 JFinalConfig 并重写JFinalConfig 里的六个方法
使用configRoute(...)配置访问路由, 如下代码配置了将 "/hello" 映射到HelloController这个控制器, 通过以下的配置,http://localhost:8090/hello 将访问 HelloController.index() 方法, 而 http://localhost:8090/hello/HelloJFinal 将访问到 HelloController.HelloJFinal() 方法。
具体代码如下:
package com.study.config; import com.jfinal.config.*; import com.jfinal.template.Engine; import com.study.controller.HelloController; public class HelloConfig extends JFinalConfig { @Override public void configConstant(Constants constants) { constants.setDevMode(true); } @Override public void configRoute(Routes routes) { routes.add("/hello", HelloController.class); } @Override public void configEngine(Engine engine) { } @Override public void configPlugin(Plugins plugins) { } @Override public void configInterceptor(Interceptors interceptors) { } @Override public void configHandler(Handlers handlers) { } }(4)配置web.xml;文件
具体配置如下:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>Archetype Created Web Application</display-name> <filter> <filter-name>jfinal</filter-name> <filter-class>com.jfinal.core.JFinalFilter</filter-class> <init-param> <param-name>configClass</param-name> <param-value>com.study.config.HelloConfig</param-value> </init-param> </filter> <filter-mapping> <param-value>com.study.config.HelloConfig</param-value>是设置配置类的路径,这里我们的配置类路径为:com.study.config.HelloConfig
(如有不同记得根据自己的进行修改)
(5)运行
保存所有文件后,使用Jetty 运行Maven web项目
运行完毕后在地址栏上输入http://localhost:8090/hello 将访问 HelloController.index() 方法
具体页面如下:
输入http://localhost:8090/hello/HelloJFinal 将访问到 HelloController.HelloJFinal() 方法。
具体页面如下: