`
Luob.
  • 浏览: 1584260 次
  • 来自: 上海
社区版块
存档分类
最新评论

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

阅读更多
----------------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.上面的模版中 排列越靠前的 优先级越高.前面的模版路径会覆盖后面的模版路径



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics