Java学习之Idea使用Maven配置Jetty插件运行JFinal框架

xiaoxiao2021-02-28  18

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() 方法。

 具体页面如下:

转载请注明原文地址: https://www.6miu.com/read-2050179.html

最新回复(0)