七、jsp:include

一、问题引入

增加新闻信息页面和新闻列表显示页面的左侧和上半部分完全一样,要把页面代码全部重写一遍或者复制一遍吗?


image.png

这个页面是一个上中下结构,其中中间又分为左右两部分,点右半部分右上角的增加按钮的时候,只有中间的右半部分会发生变化,其他部分不用变,那在做增加功能的时候怎么办?

可以用面向对象的思想来解决这个问题。

二、<jsp:include>

把指定的文件插入正在生成的页面中
语法:

<jsp:include page="URL">

URL:要引用的页面的地址


image.png

admin.jsp页面:

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>无标题文档</title>
<!-- 让超链接后的页面在页面的右下部分显示 -->
<base target="rightFrame"/>
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath() %>/css/common.css"/>
<style type="text/css">
<!--

-->
</style>
</head>

<body>
<!--页面顶部-->
<jsp:include page="adminTop.jsp"></jsp:include>
<!--页面中部-->
<div id="content" class="main-content clearfix">
    <jsp:include page="adminSidebar.jsp"></jsp:include>
    <jsp:include page="adminRightbar.jsp"></jsp:include>
</div>
<!--页面底部-->
<jsp:include page="adminBottom.jsp"></jsp:include>
</body>
</html>

adminTop.jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<div id="header">
    <div class="main-top">
        <div class="logo"><a href=""><span>新闻大视野</span></a></div>
        <div class="nav">
            <ul class="clearfix">
                <li><a href="<%=request.getContextPath()%>/index.jsp" target="_parent">首页</a></li>
                <li><a href="#">国内</a></li>
                <li><a href="#">国际</a></li>
                <li><a href="#">娱乐</a></li>
                <li><a href="#">军事</a></li>
            </ul>
        </div>
    </div>
    <!--banner-->
    <div class="main-banner"><img src="<%=request.getContextPath()%>/images/banner.png" />
    </div>
    <!--管理工具栏-->
    <div class="admin-bar"><span class="fr">退出账户</span>管理员:admin 2012-06-19
    </div>
</div>

adminSidebar.jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<div class="main-content-left">
    <!--新闻管理-->
    <div class="class-box">
        <div class="class-box-header">
            <h3>新闻管理</h3>
        </div>
        <div class="class-box-content">
            <ul>
                <li><a href="newsDetailList.jsp">新闻管理</a></li>
                <li class="clear-bottom-line"><a href="javascript:void(0);">最新新闻</a></li>
            </ul>
        </div>
    </div>
    <!--主题管理-->
    <div class="class-box">
        <div class="class-box-header">
            <h3>分类管理</h3>
        </div>
        <div class="class-box-content">
            <ul>
                <li><a href="javascript:void(0);">分类管理</a></li>
                <li class="clear-bottom-line"><a href="javascript:void(0);">删除主题</a></li>
            </ul>
        </div>
    </div>
    <!--账户管理-->
    <div class="class-box">
        <div class="class-box-header">
            <h3>用户管理</h3>
        </div>
        <div class="class-box-content">
            <ul>
                <li><a href="javascript:void(0);">用户管理</a></li>
                <li class="clear-bottom-line"><a href="javascript:void(0);">付费服务</a></li>
            </ul>
        </div>
    </div>
        <!--//-->
    </div>

adminRightbar.jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<link type="text/css" rel="stylesheet" href="<%=request.getContextPath() %>/css/common.css"/>
   <div class="main-content-right">
    <iframe  name="rightFrame" style="WIDTH: 100%; HEIGHT: 800px" src="newsDetailList.jsp" 
      frameborder=0>
     </iframe>
</div>

adminBottom.jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<div class="main-footer-box">
    24小时客户服务热线:010-68988888 常见问题解答 新闻热线:010-627488888<br />
    文明办网文明上网举报电话:010-627488888 举报邮箱:jubao@bj-aptech.com.cn<br />
    Coyright&copy;1999-2007 News China gov,All Right Reserved.<br />
    新闻中心版权所有
</div>

newsDetailList.jsp页面:

<%@page import="com.kgc.pojo.News"%>
<%@page import="java.util.List"%>
<%@page import="com.kgc.service.impl.NewsServiceImpl"%>
<%@page import="com.kgc.service.NewsService"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%--动态包含无法使用,页面报错,newsService无法使用 <jsp:include page="../common/common.jsp" /> --%>
<%@include file="../common/common.jsp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>无标题文档</title>
<style type="text/css">
<!--

-->
</style>
<script>
    function addNews(){
        window.location="newsDetailCreateSimple.jsp";
    }
</script>
</head>

<body>

<!--主体-->
    <div class="main-content-right">
        <!--即时新闻-->
        <div class="main-text-box">
            <div class="main-text-box-tbg">
                <div class="main-text-box-bbg">
                    <form name ="searchForm" id="searchForm" action="/news/jsp/admin/newsDetailList.jsp" method="post">
                      <div>
                        新闻分类:
                            <select name="categoryId">
                                <option value="0">全部</option>
                                
                                    <option value='1' >国内</option>
                                
                                    <option value='2' >国际</option>
                                
                                    <option value='3' >娱乐</option>
                                
                                    <option value='4' >军事</option>
                                
                                    <option value='5' >财经</option>
                                
                                    <option value='6' >天气</option>
                                
                            </select>
                        新闻标题<input type="text" name="title" id="title" value=''/>
                            <button type="submit" class="page-btn">GO</button>
                            <button type="button" onclick="addNews();" class="page-btn">增加</button>
                            <input type="hidden" name="currentPageNo" value="1"/>
                            <input type="hidden" name="pageSize" value="10"/>
                            <input type="hidden" name="totalPageCount" value="2"/>
            </div>
            </form>
            <table cellpadding="1" cellspacing="1" class="admin-list">
                <thead >
                    <tr class="admin-list-head">
                        <th>新闻标题</th>
                        <th>作者</th>
                        <th>时间</th>
                        <th>操作</th>
                    </tr>
                </thead>
                <tbody>
                    <%
                        List<News> newsList = newsService.getNewsList();
                        int i= 0;
                        for(News news:newsList){
                            i++;
                     %>
                    <tr <%if(i%2==0){ %>class="admin-list-td-h2"<%} %>>
                        <td><a href='newsDetailView.jsp?id=<%=news.getId()%>'><%=news.getTitle() %></a></td>
                        <td><%=news.getAuthor() %></td>
                        <td><%=news.getCreateDate() %></td>
                        <td><a href='adminNewsCreate.jsp?id=2'>修改</a>
                            <a href="javascript:if(confirm('确认是否删除此新闻?')) location='adminNewsDel.jsp?id=2'">删除</a>
                        </td>
                    </tr> 
                    <%} %>
                </tbody>
            </table>
           <div class="page-bar">
            <ul class="page-num-ul clearfix">
                <li>共7条记录&nbsp;&nbsp; 1/2页</li>
                <a href="javascript:page_nav(document.forms[0],2);">下一页</a>
                <a href="javascript:page_nav(document.forms[0],2);">最后一页</a>&nbsp;&nbsp;
            </ul>
         <span class="page-go-form"><label>跳转至</label>
         <input type="text" name="inputPage" id="inputPage" class="page-key" />页
         <button type="button" class="page-btn" onClick='jump_to(document.forms[0],document.getElementById("inputPage").value)'>GO</button>
        </span>
        </div> 
        </div>
       </div>
   </div>
   </div>
</body></html>

分析:
1、在左侧页面中的新闻管理的连接页面也是newsDetailList.jsp,所以点击这个超链接页面还是跟之前的相同。
2、当点击右侧的增加新闻按钮的时候,可以看到是要跳转到newsDetailCreateSimple.jsp页面。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<html>
    <head>
        <link href="<%=request.getContextPath() %>/css/common.css" rel="stylesheet" type="text/css" />
        <script type="text/javascript" src="<%=request.getContextPath() %>/ckeditor/ckeditor.js"> </script>
    </head>
<body>
<form name ="dataFrm" id="dataFrm" action="doAdd.jsp" method="post"  enctype="multipart/form-data">
    <table  width="100%" border="0" cellspacing="5" cellpadding="0">
        <thead>
            <tr><td align="center" colspan="2" class="text_tabledetail2">增加新闻</td></tr>
        </thead>
        <tbody>
            <tr>
                <td style="text-align:right;" class="text_tabledetail2">分类</td>
                <td style="text-align:left;"> 
                <!-- 列出所有的新闻分类 -->
                    <select name="categoryId">
                        <option value="1">国内</option>
                        <option value="2">国际</option>
                        <option value="3">娱乐</option>
                        <option value="4">军事</option>
                        <option value="5">财经</option>
                        <option value="6">天气</option>
                    </select>
                </td>
            </tr>
            <tr>
                <td style="text-align:right;" class="text_tabledetail2">标题</td>
                <td style="text-align:left;"><input type="text" name="title" value=""/></td>
            </tr>
            <tr>
                <td style="text-align:right;" class="text_tabledetail2">作者</td>
                <td style="text-align:left;"><input type="text" name="author" value=""/></td>
            </tr>
            
            <tr>
                <td style="text-align:right;" class="text_tabledetail2">摘要</td>
                <td style="text-align:left;"><textarea id="summary" name="summary" rows="8" cols="50"></textarea></td>
            </tr>
            <tr>
                <td style="text-align:right;" class="text_tabledetail2">内容</td>
                <td style="text-align:left;">
                <div id="xToolbar"></div>
                <textarea id="newscontent" name="newscontent" rows="8" cols="30" class="ckeditor"></textarea></td>
            </tr>
            <tr>
                <td style="text-align:right;" class="text_tabledetail2">上传图片 </td>
                <td style="text-align:left;"><input type="file" name="picPath" value=""/></td>
            </tr>
            <tr>
                <td style="text-align:center;" colspan="2">
                    <button type="submit" class="page-btn" name="save">保存</button>
                    <button type="button" class="page-btn" name="return" onclick="javascript:location.href='newsDetailList.jsp'">返回</button>
                </td>
            </tr>
        </tbody>
    </table>
</form>
</body>
</html>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,382评论 25 707
  • 第十三章 将“没有输家方法”付诸实践 六个独立步骤 1发现和定义冲突 2产生可能的备选解决方案 3 评估备选解决方...
    海上明月明阅读 165评论 0 0
  • Zen先生阅读 265评论 0 0
  • 人生是一次艰苦的旅行,充满欢乐和悲伤,山重水复又柳岸花明。我们是红尘里匆匆的过客,看着沿途的风景同时也是别人的风景...
    庄生的蝶梦阅读 233评论 0 1
  • 作者:熊子龙 导师:袁文魁 作品讲解: 1、原文 鹿柴 王维 空山不见人,但闻人语响。 返景入深林,复照青苔上。 ...
    熊子龙阅读 1,128评论 0 0