实现JSP的继承(动态include)
来源:互联网 发布:企业移动办公软件 编辑:程序博客网 时间:2024/05/17 06:34
通过repid和include,实现javaweb的JSP文件继承(动态include)功能。
引言
有用过Djangog框架的小伙伴应该都使用过extends(继承)功能:
新建一个base.html,搭建起每个页面的框架:
每个页面都一样的(比如导航栏)部分则只需要在base.html文件中进行书写,其他页面因为extends了base.html,所以不需要再写一次。至于每个页面都不一样的部分,base在最开始的时候就通过block将其分为不同的块,比如head block,content block……其他继承于base的页面文件则只需要修改这些block的内容,就能实现所有页面的动态继承了。
这样,既避免了很多完全一样的代码的书写,也能避免一些框架一样,但具体内容不同的代码的书写。
类似的,JAVAWEB也能实现Django的extends功能,不过需要借助一些jar包。
实现步骤
1. 配置jar包
需要以下箭头所指的两个包,具体下载地址搜jar包的名字就有很多。
将以上两个jar包加入工程的lib文件夹中即可。
2. 编写base.jsp
```<%@ taglib uri="http://www.rapid-framework.org.cn/rapid" prefix="rapid" %> <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %><html> <rapid:block name="head">base_head</rapid:block> <!-- 新建一个名为head的block --><body> Hello! <rapid:block name="content">base_content</rapid:block> </body> </html> ```
3. 编写index.jsp
```<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib uri="http://www.rapid-framework.org.cn/rapid" prefix="rapid" %> <rapid:override name="head"> <title>主页</title></rapid:override> <rapid:override name="content"> <div class="container"> <ul class="row"> <h2 class="text-center">Here is the index.</h2><br/> </ul> </div></rapid:override> <%@ include file="base.jsp" %> ```
4. 访问index页面
以上,实现了JSP的继承(动态include)功能。
0 0
- 实现JSP的继承(动态include)
- JSP中include动作标记实现页面的动态切换
- 动态包含(<jsp:include>)
- jsp 静态include和动态jsp:include的区别
- <jsp:include>和<%@include%>的区别,JSP动态include和静态include的区别
- jsp:include 装载动态页面的问题。
- JSP,include,静态和动态的区别
- JSP中动态INCLUDE与静态INCLUDE的区别
- JSP中动态INCLUDE与静态INCLUDE的区别?
- JSP中动态INCLUDE与静态INCLUDE的区别?
- JSP中动态INCLUDE与静态INCLUDE的区别
- JSP中动态INCLUDE与静态INCLUDE的区别
- JSP中动态INCLUDE与静态INCLUDE的区别
- JSP中动态include与静态include的区别
- JSP中动态INCLUDE与静态INCLUDE的区别
- JSP中动态INCLUDE与静态INCLUDE的区别
- JSP中动态INCLUDE与静态INCLUDE的区别
- JSP中动态include与静态include的区别
- 从0开始学习 GitHub 系列之:向GitHub 提交代码
- hduoj 2143 box
- Python 类示例
- 重建二叉树
- Hibernate 关系映射 总结整理
- 实现JSP的继承(动态include)
- 城市的三级列表
- day01 Intent的使用
- Java并发编程之十五:线程间通信中notifyAll造成的早期通知问题(含代码)
- 欢迎使用CSDN-markdown编辑器
- 洛谷 P1038 神经网络
- android:动态设置ImageView,Bitmap的长宽
- Cpp环境【CQ-NOIP2016四校联考模拟题(一)P3】树上的询问
- Java链表实现删除重复结点以及合并链表(非递减)