框架(一)布局

sitemesh +DWR+JSTL
sitemesh 简化网页布局

**1.定义模板文件default.jsp**
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<%@ taglib prefix="sitemesh" uri="http://www.opensymphony.com/sitemesh/decorator" %>
<!DOCTYPE html>
<html>
<head>  
<title><sitemesh:title/></title>
<%@include file="/WEB-INF/views/include/head.jsp" %>        
<sitemesh:head/>
</head>
<body>
    <sitemesh:body/>
</body>
</html>
**2.编写装饰器文件decorators.xml**
<?xml version="1.0" encoding="UTF-8"?>
<decorators defaultdir="/WEB-INF/views">        
<!-- 默认装饰页面, 在需要装饰的页面增加
<meta name="decorator" content="default"/> -->  
<decorator name="blank" page="layouts/blank.jsp" /> 
<decorator name="default" page="layouts/default.jsp" />         
</decorators>
**3.web.xml中开启sitemesh过滤器**
<filter>        
<filter-name>sitemeshFilter</filter-name>       
<filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>    
</filter>   
<filter-mapping>        
<filter-name>sitemeshFilter</filter-name>       
<url-pattern>/a/*</url-pattern> 
</filter-mapping>

DWR:javascript远程调用Java代码。
是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样。

1.web.xml 配置listener DwrListener  servlet DwrListener
2.dwr.xml 
<dwr>
  <allow>
    <create creator="new">
      <param name="class" value="org.konghao.dwr.model.MyDwr"/>
    </create>
  </allow>
</dwr>
3.编写MyDwr.Java类。
4.jsp文件
<script type="text/javascript" src="<%=request.getContextPath()%>/dwr/engine.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/dwr/util.js"></script>
<script type="text/javascript" src="<%=request.getContextPath()%>/dwr/interface/MyDwr.js"></script>
<script type="text/javascript">
    MyDwr.hello("世界",function(data){
        alert(data);
    });
</script>

JSTL

tld配置
**1.非自动加载方式**
(1)拷贝tld文件  将tld文件拷到WEB-INF的tld文件夹下
(2)web.xml
<jsp-config>
  <taglib>
  <taglib>
   <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
   <taglib-location>/WEB-INF/tld/fmt.tld</taglib-location>
  </taglib>
  </taglib>
 </jsp-config>
(3)jsp中引用taglib
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
**2.自动加载方式**
Servlet2.4规范提供了对tld文件的自动加载,tld文件在standard.jar的META-INF文件夹中。
如:c.tld文件提供了对核心jstl标签的描述
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
    version="2.0">
  <description>JSTL 1.1 core library</description>
  <display-name>JSTL core</display-name>
  <tlib-version>1.1</tlib-version>
  <short-name>c</short-name>
  <uri>http://java.sun.com/jsp/jstl/core</uri>
可以看到其引用的uri为http://java.sun.com/jsp/jstl/core
则在jsp中引用taglib为: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

一、struts2标签定义文件在struts2-core-2.0.11.1\META-INF 下面,文件名为struts-tags.tld
二、如果工程使用了servlet2.3规范,要做两件事,就能在工程中使用struts2标签了
1: 在web.xml中增加标签库的定义
<taglib>
   <taglib-uri>/struts-tags</taglib-uri>
   <taglib-location>/WEB-INF/lib/struts2-core-2.0.11.1.jar</taglib-location>
  </taglib>
/struts-tags 是struts2标签库默认的URI,建议使用这个名称
2 在JSP中使用taglib编译指令导入标签库 <%@ taglib prefix="s" uri="/struts-tags" %>

JAVA在网络传输中使用的编码是”ISO-8859-1”,故在输出时需要进行转化.
JSON Vs XML
1.JSON和XML的数据可读性基本相同。
2.JSON和XML同样拥有丰富的解析手段。
3.JSON相对于XML来讲,数据的体积小。
4.JSON与JavaScript的交互更加方便。
5.JSON对数据的描述性比XML较差。
6.JSON的速度要远远快于XML。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值