分享

Struts第5天

 liuyang_inf 2014-08-26

 今天是Struts的最后一天了,主要讲解了2个内容,第一个是tiles标签和AJAX的一个框架JQuery,好了,就这俩个知识点,我来做一下总结:

Struts的tiles标签

下面开始讲解tiles标签,那么先引用2个问题,什么是tiles标签,tiles标签有什么用?

什么是tiles标签:tiles标签是建立在JSP的include的基础之上的一组标签。

tiles标签的作用:tiles标签为创建Web页面提供了一种模板机制,使网页的布局和网页的内容相分离。

实现tiles标签有两种方式,第一种tiles模板方式,第二种tiles组件方式。

tiles模板应用

首先,新建一个templet.jsp页面,我们需要先定义一个模板,然后需要导入struts的tiles标签库。示例:

  1. <%@ page language="java"  pageEncoding="gbk"%>  
  2. <%@taglib prefix="tiles" uri="/WEB-INF/struts-tiles.tld" %> <!--导入tiles标签库-->  
  3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  4. <html>  
  5.   <head>  
  6.     <base href="<%=basePath%>">      
  7.     <title>My JSP 'templet.jsp' starting page</title>  
  8.   </head>  
  9.      
  10.   <body>  
  11.     <div id="all" style="height:500;background:green;">  
  12.         <div id="top" style="height:100px;background:blue;">  
  13.             <tiles:insert attribute="top"></tiles:insert><!--定义模板-->  
  14.         </div>  
  15.         <div id="left" style="height:50px;background:red;">  
  16.             <tiles:insert attribute="left"></tiles:insert>  
  17.         </div>  
  18.         <div id="main" style="height:400px;background:yellow;">  
  19.             <tiles:insert attribute="mian"></tiles:insert>  
  20.         </div>  
  21.         <div id="foot" style="height:100px;background:gray;">  
  22.             <tiles:insert attribute="foot"></tiles:insert>  
  23.         </div>  
  24.     </div>  
  25.   </body>  
  26. </html>  

上面,我们定义了一个网页的模板,并对模板的布局做了定义,用tiles的insert标签来定义模板,attribute这个是定义一个属性,到时候会根据这个属性值来放置不同的网页, 好了这一步做好了。

然后,我们就可以定义index页面了,也就是根据我们定义的这个模板来显示页面了,示例代码:

  1. <body>  
  2.     <tiles:insert page="templet.jsp" flush="true">  
  3.         <tiles:put name="top" value="jsp/top.jsp"></tiles:put>  
  4.         <tiles:put name="left" value="jsp/left.jsp"></tiles:put>  
  5.         <tiles:put name="main" value="jsp/main.jsp"></tiles:put>  
  6.         <tiles:put name="foot" value="jsp/foot.jsp"></tiles:put>  
  7.     </tiles:insert>  
  8.   </body>  

这里是主页面,还是用tiles的insert标签来构建主页面,page属性是指引用的哪个模板,这里就是我们刚刚定义的templet.jsp这个模板页面,flush这里的意思是指先生成模板再生成页面,接着用tiles的put标签来放置不同的页面,这里的name就刚好对应了模板中的attribute值,value的值是我们要放置哪些页面进去,这个就是使用模板的方式,我们可以浏览下index这个页面就可以看到效果了。

tiles组件应用

tiles组件是用xml配置的方式来放置页面,更为灵活!

使用tiles组件的话,需要在struts-config.xml里面导入tiles插件,示例:

  1. <message-resources parameter="com.lovo.struts.ApplicationResources" />  
  2.    <plug-in className="org.apache.struts.tiles.TilesPlugin">  
  3.     <set-property property="definitions-config" value="/WEB-INF/tiles.xml" />  
  4.     <set-property property="definitions-parser-validate" value="true" />  
  5.   </plug-in>  

注意加到message后面哦, <set-property property="definitions-config" value="/WEB-INF/tiles.xml" /> 这里定义配置文件的位置和名字,这里我们在WEB-INF下面新建一个tiles.xml文件,并用tiles1.0的dtd来约束,示例:

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN" "tiles-config_1_1.dtd" >  
  3. <tiles-definitions>  
  4.   <definition name="index-definition" path="/templet.jsp">  
  5.     <put name="top" value="jsp/top.jsp"></put>  
  6.     <put name="left" value="jsp/left.jsp"></put>  
  7.     <put name="main" value="jsp/main.jsp"></put>  
  8.     <put name="foot" value="jsp/foot.jsp"></put>  
  9.   </definition>  
  10. </tiles-definitions> 

这里,跟刚才的模板方式基本上一样,path是模板的路径,name是引用的名字,其他的跟刚才的index的主页面是一样的,好了,我们最后来看看怎么引用到这个配置文件。

这里的引用就很简单了,示例:

  1. <body>  
  2.         <tiles:insert definition="index-definition"></tiles:insert>  
  3.   </body>  

这一句话就搞定了,引用的名称是配置文件的name属性,就能显示出跟刚才一样的效果了!

JQuery

这里,主要讲很简单的几个API,因为,学了这些也是JQuery的入门知识,因为是AJAX的框架,那么就来使用JQuery来进行异步的数据提交吧!

主要使用的方法是$.post和$.get,具体的使用:

  1. $(document).ready(function(){   
  2.         $("#tj").click(ss);   给tj这个按钮加一个事件,具体操作调用下面的ss函数
  3.     });   
  4.     function ss(){   
  5.         var url="look.do";   定义url提交路径
  6.         var date={"name":$("#name").val()};    josn数据提交方式
  7.         $.post(url,date,show);   提交show是指回调函数具体操作下面的show函数
  8.     }   
  9.        
  10.     function show(dates){   
  11.         alert(dates);   打印服务器返回的结果
  12.      

具体页面

  1. <body>  
  2.   <input type="button" id="tj" value="提交" />  
  3. </body>  

好了,今天就先讲到这!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多