最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SSH框架網(wǎng)上商城項目第3戰(zhàn)之使用EasyUI搭建后臺頁面框架

 更新時間:2016年05月26日 10:45:10   作者:eson_15  
SSH框架網(wǎng)上商城項目第3戰(zhàn)之使用EasyUI搭建后臺頁面框架,討論兩種搭建方式:基于frameset和基于easyUI,感興趣的小伙伴們可以參考一下

前面兩篇,我們整合了SSH并且抽取了service和action部分的接口,可以說基本開發(fā)環(huán)境已經(jīng)搭建好了,這一節(jié)我們搭建一下后臺的頁面。我們討論一下兩種搭建方式:基于frameset和基于easyUI。最后我們會使用easyUI來開發(fā)。
1. 抽取公共JSP頁面
我們先來看一下當(dāng)前的jsp頁面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
 <head> 
 
 </head> 
 
 <body> 
 <!-- 省略…… --> 
 </c:forEach> 
 </body> 
</html></span> 

        先撇開body部分的內(nèi)容不看,因為這都是之前測試用的,抽取JSP頁面是指將一些共有部分抽取出來到一個新的JSP頁面,然后在當(dāng)前JSP頁面中包含進(jìn)來。因為后期項目中肯定會引入js、css等文件,如果在每個jsp頁面都寫的話,會很冗余,所以我們得抽取一個共有的jsp來引入這些文件以及其他東西。我們在WebRoot目錄下新建一個public文件夾,在里面新建一個head.jspf(jspf表示JSP片段,供其他JSP頁面包含的)。

<%@ page language="java" pageEncoding="UTF-8"%> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<c:set value="${pageContext.request.contextPath }" var="shop" /> 
<title>易購商城</title> 
<!-- 
<script type="text/javascript" src=""></script> 
<style type="text/css"></style> 
 --></span> 

注釋部分主要是包含js和css,因為目前還沒用到,只是搭建一個框架,等用到了再去掉。<c:set>標(biāo)簽將${pageContext.request.contextPath }用${shop}來代替,方便書寫。這樣以后新的JSP只要包含這個head.jspf即可。我們看一下修改后的index.jsp:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
 <head> 
 <%@ include file="/public/head.jspf" %> 
 </head> 
 
 <body> 
 <!-- 省略…… --> 
 </body> 
</html> 
</span> 

是不是有種面向?qū)ο蟮乃枷雫

2. 基于frameset搭建后臺頁面
2.1 發(fā)現(xiàn)問題
模板抽取好了,現(xiàn)在我們開始搭建后臺頁面框架了,首先我們使用frameset來做。在WEB-INF目錄下新建一個文件夾main用來保存后臺的主要頁面,在main中新建四個jsp文件:aindex.jsp、top.jsp、left.jsp和right.jsp。我們的frameset寫在aindex.jsp中,其他三個只是簡單寫一句話用來測試,我們來看看aindex.jsp:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
 <%@ include file="/public/head.jspf" %> 
</head> 
<!-- 框架體,里面包含了3+1個頁面 --> 
<frameset border="5" rows="150,*"> 
 <frame src="top.jsp" /> 
 <frameset border="5" cols="150,*"> 
 <frame src="left.jsp" /> 
 <frame src="right.jsp" /> 
 </frameset> 
</frameset> 
 
</html></span> 

        結(jié)構(gòu)很明顯,將頁面分為3塊,上左右。每個模塊包含相應(yīng)的jsp頁面,然后我們在index.jsp的body中寫入<a href="/WEN-INF/main/aindex.jsp">測試到后臺</a>,啟動tomcat,發(fā)現(xiàn)點(diǎn)擊鏈接是無法訪問到后臺的。原因在于WEB-INF目錄下的jsp不能直接跳轉(zhuǎn),需要通過Servlet或者Action來跳轉(zhuǎn)。那沒辦法,只能新寫一個跳轉(zhuǎn)的Action了。
2.2 編寫頁面跳轉(zhuǎn)的Action
        我們首先寫一個Action來完成頁面的跳轉(zhuǎn),該Action只是單純的實(shí)現(xiàn)頁面跳轉(zhuǎn),不處理任何業(yè)務(wù)邏輯。

/** 
 * @Description: TODO(此Action用來完成WEB-INF中JSP與JSP請求轉(zhuǎn)發(fā)功能,此Action不處理任何的邏輯) 
 * @author eson_15 
 * 
 */ 
public class SendAction extends ActionSupport { 
 
 public String execute() { 
 return "send"; 
 } 
} 

        我們可以看出,SendAction沒有繼承我們之前抽取的BaseAction,只是單純的繼承了ActionSupport。然后我們在struts.xml文件中配置一下:

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE struts PUBLIC 
 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" 
 "http://struts.apache.org/dtds/struts-2.3.dtd"> 
 
<struts> 
 <package name="shop" extends="struts-default"> 
 
 <!-- 全局result,對這個package中的所有action有效 --></span> 
 <global-results> 
 <result name="aindex">/WEB-INF/main/aindex.jsp</result> 
 </global-results> 
 
 <!-- 省略其他action的配置……</span> --> 
 
 <!-- 用來完成系統(tǒng) 請求轉(zhuǎn)發(fā)的action,所有的請求都交給execute--> 
 <action name="send_*_*" class="sendAction"> 
 <result name="send">/WEB-INF/{1}/{2}.jsp</result> 
 </action> 
 </package> 
 
</struts> 

別忘了在beans.xml中配置:<bean id="sendAction" class="cn.it.shop.action.SendAction" />。
這個action中之所以配兩個*號是為了便于訪問WEB-INF/*/*.jsp,這需要在jsp中約定好地址的寫法了。下面我們看一下aindex.jsp中的寫法:

<span style="font-family:Microsoft YaHei;">
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
 <%@ include file="/public/head.jspf" %> 
</head> 
<!-- 框架體,里面包含了3+1個頁面 --> 
<frameset border="5" rows="150,*"> 
 <frame src="send_main_top.action" /> 
 <frameset border="5" cols="150,*"> 
 <frame src="send_main_left.action" /> 
 <frame src="send_main_right.action" /> 
 </frameset> 
</frameset> 
 
</html></span> 

        從修改后的aindex.jsp中可以看出,我們不直接訪問WEB-INF/下的jsp(我們也訪問不了),我們通過Action去跳轉(zhuǎn),這樣我們在index.jsp的body中寫入<a href="send_main_aindex.action">測試到后臺</a>,然后啟動tomcat,就可以點(diǎn)開鏈接正常訪問后臺主頁面了。
        從上面使用frameset搭建后臺頁面的過程來看,還是挺麻煩的,它是一個個頁面包含進(jìn)來的,開發(fā)中也不會用frameset,而easyUI只有一個頁面,所有的請求都是AJAX請求,接下來我們看一下如何使用easyUI來搭建后臺頁面。

3. 基于EasyUI搭建后臺頁面
        jQuery EasyUI是一組基于jQuery的UI插件集合體,而jQuery EasyUI的目標(biāo)就是幫助web開發(fā)者更輕松的打造出功能豐富并且美觀的UI界面。開發(fā)者不需要編寫復(fù)雜的javascript,也不需要對css樣式有深入的了解,開發(fā)者需要了解的只有一些簡單的html標(biāo)簽。
3.1 導(dǎo)入EasyUI相關(guān)組件
        我們先在工程中的WebRoot目錄下導(dǎo)入EasyUI所需要的組件,網(wǎng)上都有下載,我用的是jquery-easyui-1.3.5,去掉一些不需要的東西,最后的結(jié)果如下:

3.2 搭建EasyUI的環(huán)境
        我們打開剛剛抽取出來的head.jspf文件,在這里導(dǎo)入EasyUI所依賴的css和js,其他頁面引入該jspf文件即可間接引入了EasyUI所依賴的css和js了:

<%@ page language="java" pageEncoding="UTF-8"%> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<c:set value="${pageContext.request.contextPath }" var="shop" /> 
<title>易購商城</title> 
 
<!-- 下面是easyui的環(huán)境 --> 
<link rel="stylesheet" href="${shop }/jquery-easyui-1.3.5/themes/icon.css" type="text/css"></link> 
<link rel="stylesheet" href="${shop }/jquery-easyui-1.3.5/themes/default/easyui.css" type="text/css"></link> 
<script type="text/javascript" src="${shop }/jquery-easyui-1.3.5/jquery.min.js"></script> 
<script type="text/javascript" src="${shop }/jquery-easyui-1.3.5/jquery.easyui.min.js"></script> 
<script type="text/javascript" src="${shop }/jquery-easyui-1.3.5/locale/easyui-lang-zh_CN.js"></script> 

3.3 搭建后臺的框架
        將WEB-INF/main/目錄下的top.jsp、left.jsp和right.jsp都刪掉,因為現(xiàn)在用不上了,然后修改aindex.jsp頁面,現(xiàn)在可以使用EasyUI來做了:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
 <%@ include file="/public/head.jspf" %> 
</head> 
 
 <body class="easyui-layout"> 
 <div data-options="region:'north',title:'North Title',split:true" style="height:100px;"></div> 
 <div data-options="region:'west',title:'West',split:true" style="width:200px;"> 
 <!-- 此處顯示的是系統(tǒng)菜單 --> 
 <div id="aa" class="easyui-accordion" style="width:300px;height:200px;"> 
 <div title="Title1" data-options="iconCls:'icon-save'" style="overflow:auto;padding:10px;"> 
 <h3 style="color:#0099FF;">Accordion for jQuery</h3> 
 <p>Accordion is a part of easyui framework for jQuery. 
 It lets you define your accordion component on web page more easily.</p> 
 </div> 
 <div title="Title2" data-options="iconCls:'icon-reload',selected:true" style="padding:10px;">content2</div> 
 <div title="Title3">content3</div> 
 </div> 
 </div> 
 <div data-options="region:'center',title:'center title'" style="padding:5px;background:#eee;"></div> 
 </body> 
 
</html> 

這里的這么多<div>都是參照上面那個EasyUI的說明文檔,我在下面貼出來。先進(jìn)行整個layout布局,去掉我們不需要的,我們只要north、west和center三部分:

        再在west部分的div中加上accordon分類的布局,將代碼添加到head.jspf中:

        這樣我們就簡單搭建好了后臺的頁面框架了,后期只要往里面填入東西就行了。我們在index.jsp中測試一下:<a href="send_main_aindex.action">直接到后臺EasyUI版</a>,這樣jsp就會找我們剛剛寫好的SendAction然后跳轉(zhuǎn)到EWB-INF/main/aindex.jsp,就能正確顯示后臺框架了,如下:


 至此,我們使用EasyUI成功搭建好了后臺頁面的框架。

(注:到最后我會提供整個項目的源碼下載!歡迎大家收藏或分享)

整個項目的源碼下載地址:http://m.fzitv.net/article/86099.htm

原文地址:http://blog.csdn.net/eson_15/article/details/51312490

以上就是本文的全部內(nèi)容,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring Security 在 Spring Boot 中的使用詳解【集中式】

    Spring Security 在 Spring Boot 中的使用詳解【集中式】

    這篇文章主要介紹了Spring Security 在 Spring Boot 中的使用【集中式】,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 詳解Java利用同步塊synchronized()保證并發(fā)安全

    詳解Java利用同步塊synchronized()保證并發(fā)安全

    這篇文章主要介紹了Java利用同步塊synchronized()保證并發(fā)安全,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Maven將Jar包打入本地倉庫的實(shí)現(xiàn)

    Maven將Jar包打入本地倉庫的實(shí)現(xiàn)

    項目需要用到一個Jar包,不能從遠(yuǎn)程倉庫拉取,只有一個Jar包,所以需要將Jar包打入到本地倉庫才能引入項目,本文主要介紹了Maven將Jar包打入本地倉庫的實(shí)現(xiàn),感興趣的可以了解一下
    2023-12-12
  • IDEA下Maven的pom文件導(dǎo)入依賴出現(xiàn)Auto build completed with errors的問題

    IDEA下Maven的pom文件導(dǎo)入依賴出現(xiàn)Auto build completed with errors的問題

    這篇文章主要介紹了IDEA下Maven的pom文件導(dǎo)入依賴出現(xiàn)Auto build completed with errors,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Spring Boot中的 6 種API請求參數(shù)讀取方式示例詳解

    Spring Boot中的 6 種API請求參數(shù)讀取方式示例詳解

    使用Spring Boot開發(fā)API的時候,讀取請求參數(shù)是服務(wù)端編碼中最基本的一項操作,Spring Boot中也提供了多種機(jī)制來滿足不同的API設(shè)計要求,這篇文章主要介紹了Spring Boot中的 6 種API請求參數(shù)讀取方式示例詳解,需要的朋友可以參考下
    2024-05-05
  • Java實(shí)戰(zhàn)之客戶信息管理系統(tǒng)

    Java實(shí)戰(zhàn)之客戶信息管理系統(tǒng)

    這篇文章主要介紹了Java實(shí)戰(zhàn)之客戶信息管理系統(tǒng),文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • 深入理解LinkedHashSet集合的底層機(jī)制

    深入理解LinkedHashSet集合的底層機(jī)制

    這篇文章主要介紹了LinkedHashSet的底層機(jī)制詳解,LinkedHashSet根據(jù)元素的hashCode值來決定元素的存儲位置,同時使用鏈表維護(hù)元素的次序,?這使得元素看起來是以插入順序保存的,需要的朋友可以參考下
    2023-10-10
  • Java基礎(chǔ)語法:邏輯控制

    Java基礎(chǔ)語法:邏輯控制

    下面小編就為大家?guī)硪黄狫ava邏輯控制的基礎(chǔ)文章。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-08-08
  • 一文教會你使用jmap和MAT進(jìn)行堆內(nèi)存溢出分析

    一文教會你使用jmap和MAT進(jìn)行堆內(nèi)存溢出分析

    本文介紹關(guān)于jmap和MAT的使用來進(jìn)行堆內(nèi)存溢出分析,因為這個內(nèi)存溢出是我們手動構(gòu)造出來的,查找比較簡單,真的到了生產(chǎn)上面需要我們仔細(xì)排除
    2021-09-09
  • java中final修飾符實(shí)例分析

    java中final修飾符實(shí)例分析

    本文通過實(shí)例向我們展示了java中final修飾符的概念,final修飾的基本變量和引用類型變量的區(qū)別。有需要的小伙伴可以參考下
    2014-11-11

最新評論

旌德县| 略阳县| 新郑市| 通渭县| 丹东市| 沂源县| 惠来县| 台江县| 北辰区| 广州市| 太保市| 双辽市| 大城县| 比如县| 涟源市| 海南省| 英超| 石嘴山市| 绥中县| 临沧市| 启东市| 正阳县| 天柱县| 历史| 元氏县| 铁岭县| 巴中市| 堆龙德庆县| 科技| 礼泉县| 定日县| 苏尼特左旗| 晋中市| 温泉县| 东乌| 青岛市| 珲春市| 衢州市| 加查县| 内丘县| 伊川县|