`
xiaoye2013
  • 浏览: 8668 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JFinal 学习笔记 -- 映射路径

 
阅读更多

现在来探讨下 JFinal 的映射路径问题

1、新建工程:如何新建工程请查看我的上篇博客

新建好的工程目录如下: 


 

 工程中的 MyJFinalConfig 代码如下:  

package com.xiaoye.study.jfinal;

import com.jfinal.config.Constants;
import com.jfinal.config.Handlers;
import com.jfinal.config.Interceptors;
import com.jfinal.config.JFinalConfig;
import com.jfinal.config.Plugins;
import com.jfinal.config.Routes;
import com.jfinal.render.ViewType;
import com.xiaoye.study.jfinal.controller.TestController;

public class MyJFinalConfig extends JFinalConfig {

	/**
	 * 设置一些常量
	 */
	@Override
	public void configConstant(Constants me) {
		me.setDevMode(true); // 设置开发模式
		
		/**
		 * 设置视图类型为 JSp
		 * 如果不设置,将不能使用jsp文件作为视图文件
		 */
		me.setViewType(ViewType.JSP);
	}

	@Override
	public void configRoute(Routes me) {
		
	}

	@Override
	public void configPlugin(Plugins me) {
		
	}

	@Override
	public void configInterceptor(Interceptors me) {
		
	}

	@Override
	public void configHandler(Handlers me) {
		
	}
}

 工程中的 TestController 代码如下:

package com.xiaoye.study.jfinal.controller;

import com.jfinal.core.Controller;

public class TestController extends Controller {
	
	public void index() {
		
	}
}

  

2、启动 Debug 模式

3、测试:这里主要通过 MyJFinalConfig 的 configRoute 方法设置访问路由;通过 TestController 的 index 方法设置视图。

访问地址:http://localhost

configRoute 设置访问路由 index 设置视图 结果(index.jsp 位置)
me.add("/", TestController.class);

render("index.jsp"); || 

render("/index.jsp");

WebContent\index.jsp
me.add("/", TestController.class);

render("jsp/index.jsp"); || 

render("/jsp/index.jsp");

WebContent\jsp\index.jsp
me.add("/", TestController.class);

render("jsp/jsp/index.jsp"); || 

render("/jsp/jsp/index.jsp");

WebContent\jsp\jsp\index.jsp
me.add("/", TestController.class);

render("/WEB-INF/jsp/index.jsp"); || 

render("WEB-INF/jsp/index.jsp");

WebContent\WEB-INF\jsp\index.jsp

访问地址:http://localhost

configRoute 设置访问路由 index 设置视图 结果(index.jsp 位置)
me.add("/", TestController.class, "jsp"); render("index.jsp"); WebContent\jsp\index.jsp
me.add("/", TestController.class, "jsp"); render("/index.jsp"); WebContent\index.jsp
me.add("/", TestController.class, "jsp"); 其他路径结果类似  

说明:当设置访问路由时,第三个参数代表视图路径。如果在视图跳转时,在要跳转的视图(index.jsp)前加了“/”,则访问路由中设置的第三个参数与没有设置一样,视图路径为:WebContent + “要跳转的视图”;

如果在要跳转的视图(index.jsp)前没有加“/”,则寻找的视图的路径为 “WebContent\” + 第三个参数 + “要跳转的视图”。 

注:第三个参数可以为“XXX”形式也可以为“/XXX” 形式,效果一样。

 访问网址:http://localhost/test

configRoute 设置访问路由 index 设置视图 结果(index.jsp 位置)
me.add("/test", TestController.class); render("index.jsp"); 找不到路径
me.add("/test", TestController.class); render("/index.jsp"); WebContent\index.jsp
me.add("/test", TestController.class); 前面加了“/”的都能正确找到路径  

说明:

1、访问路由仅为“/”时,视图设置时,视图路径前有“/”无“/”效果一样

2、访问路由仅为“/XXX”时,视图设置时,视图路径前必须加上有“/”,否则找不到路径

3、注:当访问路由为“/XXX”形式时,可以省略“/”不写,即仅写“test”也可以,框架会自动补上“/”。

4、访问路由设置第三参数,如果在视图跳转时,在要跳转的视图(index.jsp)前加了“/”,则访问路由中设置的第三个参数与没有设置一样,视图路径为:WebContent + “要跳转的视图”

如果在要跳转的视图(index.jsp)前没有加“/”,则寻找的视图的路径为 “WebContent\” + 第三个参数 + “要跳转的视图”。

官方文档说明:

 

  • 大小: 9.9 KB
  • 大小: 57.7 KB
分享到:
评论

相关推荐

    Java学习笔记-个人整理的

    {2.11}\ttfamily final}{63}{section.2.11} {2.12}\ttfamily abstract}{63}{section.2.12} {2.13}\ttfamily interface}{64}{section.2.13} {2.14}JavaBean规范}{66}{section.2.14} {3}常用类}{67}{chapter.3} ...

    java私塾学习笔记整理

    ### Java私塾学习笔记整理 #### 第一章:Java入门 **一、Java是什么?** Java是一种广泛使用的高级编程语言,由Sun Microsystems于1995年推出。它旨在为跨平台开发提供一种通用的语言环境,使开发者能够在任何...

    JPA学习笔记(高手笔记录)

    一个实体必须有一个无参构造函数,并且其类和字段不应声明为`final`,以确保实例化和序列化的需求。实体的状态有三种:瞬时态(Transient)、持久态(Persistent)和游离态(Detached),这些状态影响着实体与数据库...

    我的Pro Spring 学习笔记 之一 Say Hello World in Spring Way

    《我的Pro Spring 学习笔记 之一:Say Hello World in Spring Way》 Spring框架是Java开发中的一个核心组件,尤其在企业级应用中占据主导地位。这篇学习笔记将引导我们踏入Spring的世界,通过一个简单的“Hello ...

    C# 学习笔记

    ### C# 学习笔记知识点总结 #### 一、结构与类的区别 1. **存储方式**:结构是值类型,直接存储在栈中,无需堆分配;而类是引用类型,存储在托管堆上,栈中仅保存指向类实例的引用。 2. **变量包含内容**:结构变量...

    java程序员笔记(day1-24)2020.zip

    Java编程语言是软件开发领域广泛使用的工具,尤其对于初学者来说,它提供了良好的学习路径。这份"java程序员笔记(day1-24)2020.zip"文件包含了从基础到进阶的Java学习资料,适合那些希望在IT行业开启职业生涯的新手...

    ibatis 学习小结笔记

    ### ibatis 学习小结笔记 #### 一、ibatis 概述 ibatis 是一个基于 Java 的持久层框架,它提供了一种简便的方式来处理关系型数据库与 Java 对象之间的映射(O/R Mapping)。ibatis 在设计上强调的是 SQL 语句的...

    MyBatis个人笔记

    ### MyBatis个人笔记知识点详解 #### 一、MyBatis基本概念与使用技巧 **1.1 SQL语句中的#与$的区别** 在MyBatis中,#和$符号通常用于参数化SQL语句中的变量。这两种符号的主要区别在于处理方式的不同: - **#号*...

Global site tag (gtag.js) - Google Analytics