Struts2 主题和模版设置(四十)

本文详细介绍了Struts2框架中的主题设置方法及其内置的四种主题(simple、xhtml、css_html、Ajax)。同时,文章还介绍了Struts2支持的三种模板引擎(ftl、vm、jsp)以及如何指定模板路径。
----------------Struts2 主题---------------

1.Struts2主题有如下几种设置方式

1.通过指定UI标签的theme属性来设置主题
2.通过指定form标签的theme属性来这是主题
3.通过page回话范围内的theme属性来设置主题
4.通过取得request会话范围theme属性来设置主题
5.通过取得session会话范围内的theme属性来设置主题
6.通过获取application会话范围内的theme属性来设置主题
7.在struts.properties 或 struts.xml中 通过设置struts.ui.theme 常量来设置主题
8.Struts2主题默认为 xhtml。


2.Struts内置了4个主题,simple xhtml  css_html ajax  主题


1.simple主题: 这是最简单的主题,是底层的结构。使用giant主题时,每个UI标签只生成一个html元素,不会额外的生成其他内容

2.xhtml主题:
  这是Strure2的默认主题,对于simple主题进行了扩展,在simple主题的基础上增加了一些特性,提供了附加的功能和行为。该主题增加的特性如下:
  A:针对htmle中与表单相关的标签,使用标签的两列(或两行)表格布局
  B:每个html标签的lablel即可以出现 在html元素的左边,也可以出现在顶部
这取决与表单标签的 labelpostition属性的设置。
  C:在浏览器中使用100%纯javaScript进行客户端校验

3.css_html主题
  该主题和xhtml主题类似。它也使用包装技术,包装了simple主题,并扩展了xhtml,不过css_html 主题不是采用表格对表单元素进行布局,而是采用css和<div> 对表单元素进行布局。css_xhtml主题增加了下面的特性
  A:针对html中与表单相关标签的使用标准的两列基于CSS和<div>的布局
  B:对于每个Html标签的lable 依照CSS样式表的设置来决定位置
  C:自动输出校验错误
  D:在浏览器中使用100%纯javascript进行客户端验证

4.Ajax主题
   该主题是对xhtml主题的扩展,在xhtml主题的基础上为UI标签提供了Ajax支持,例如:支持AJax方式的客户端校验,支持表单异步提交等。


----------------主题和模版的使用-------------
1.login.jsp

 <body>
<!--如果不指定 theme 默认为xhtml,label属性将有用,否则 设置为simple后需要手动写上标签名-->
    <s:form action="#" method="post" theme="simple">
    	用户名:<s:textfield name="userName" label="用户名"/><br/>
    	密码:<s:textfield name="password" label="密码"/>
    	<s:submit/>
    </s:form>
  </body>


----------------Struts2支持的模版引擎-----------
1.Struts2支持的3中模版引擎

   1 ftl: 基于FreeMarker技术,是Struts2的默认模版
   2.vm:基于Veloctiy模版技术
   3.jsp 基于JSP的模版技术
可以通过struts.properties.文件中额struts.ui.templateSuffix属性来配置Struts2 默认使用的模版引擎。


2.Struts2提供了多种方式来指定模版路径

1.通过UI标签的templateDir属性来指定模版路径
2.通过page范围的名为templateDir属性来指定模版路径
3.通过request范围的名为templateDir属性来指定模版路径
4.通过session范围的名为templateDir属性来指定模版路径
5.通过appolication范围的名为template属性来指定模版路径
6.通过struts.properties 文件中的 struts.ui.templateDir 属性来指定模版路径(默认值为 template)

7.上面的模版中 排列越靠前的 优先级越高.前面的模版路径会覆盖后面的模版路径



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值