`
Gavin.Chen
  • 浏览: 322874 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

关于Struts2 theme的一点认识

阅读更多

       之前在做Struts2的一些实例,在排版上遇到了一些问题。请看以下代码

Logon.jsp

===========================================================

<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
    <head>
        <title>
            登录页面
        </title>
    </head>
    <body>
        <s:form action="Logon">
            <s:textfield label="%{getText('username')}" name="username" />
            <s:password label="%{getText('password')}" name="password" />
            <s:submit />
        </s:form>
    </body>
</html>

 

 

配置好其它相关的设置后,打开Logon.jsp,可以看到网页上输出了以下的HTML代码

<html>
    <head>
        <title>
            登录页面
        </title>
    </head>
    <body>
        <form id="Logon" name="Logon" onsubmit="return true;" action="/aidress/Logon.action" method="post">
            <table class="wwFormTable">
                <tr errorFor="Logon_username">
                    <td align="center" valign="top" colspan="2">
                        <span class="errorMessage">
                            User Name is required.
                        </span>
                     </td>
                </tr>
                <tr>
                    <td class="tdLabel">
                        <label for="Logon_username" class="errorLabel">
                            User Name:
                        </label>
                    </td>
                    <td>
                        <input type="text" name="username" value="" id="Logon_username"/>
                    </td>
                </tr>
                <tr errorFor="Logon_password">
                    <td align="center" valign="top" colspan="2">
                        <span class="errorMessage">
                            Password is required.
                        </span>
                    </td>
                </tr>
                <tr>
                    <td class="tdLabel">
                        <label for="Logon_password" class="errorLabel">
                            Password:
                        </label>
                    </td>
                    <td>
                        <input type="password" name="password" id="Logon_password"/>
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <div align="right">
                            <input type="submit" id="Logon_0" value="Submit"/>
                        </div>
                    </td>
                </tr>
            </table>
        </form>
    </body>
</html>

 

 

细心的话就可以注意到,像下面这几行代码是它自动帮你加上去的

<span class="errorMessage">
     Password is required.
</span>

真自动啊,这种事都帮我做了!

可我不想要它啊,我想把它放到别的地方去,或者干脆说,我只想用Struts的action处理机制,不想用struts的默认布局,又或者你想做。。。。。。总之就不要默认的,怎么办?

这就涉及到struts2的theme(主题)了,换不同的主题,可以让struts的代码输出不同的html代码,你也就相应得到不同的布局效果,我就是这么理解theme的,并且换theme也非常简单,这样你可以设定N个不同的主题,每五分钟换一个都行啊(你喜欢的话)

问题一:Struts2有哪些主题?

Struts2提供了三种主题,ajax, simple, xhtml,它默认的是xhtml主题,当然你可以写任意个你自己的主题,我们称之为自定义主题

问题二:Struts2怎么改?

比如现在你想用simple主题,在Struts.xml中,加上下一行代码就可以了

<constant name="struts.ui.theme" value="simple" />

 

如果能用好主题,可以更精确地控制Struts的布局,当然这样的话你得了解很多东西,因为Struts2的主题是由一堆模版构成,它默认的模版是用FreeMarket编写的,文件名后缀是ftl,在它的jar包里的templete目录可以找到任一主题相应的ftl文件,大家有兴趣可以研究一下它是怎么写的,当然它也支持其它的模版,怎么用就自己研究一下吧,我也不太清楚

分享到:
评论

相关推荐

    struts1和struts2的区别

    struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别...

    关于struts2的资料关于struts2的资料

    关于struts2的资料关于struts2的资料关于struts2的资料关于struts2的资料

    struts2讲义 struts2讲义struts2讲义struts2讲义struts2讲义

    一个很好的关于Struts2的讲义!struts2讲义struts2讲义struts2讲义struts2讲义struts2讲义struts2讲义

    struts2 总结工程大全

    struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全...

    struts2 资料struts2 资料struts2 资料struts2 资料

    struts2 资料struts2 资料struts2 资料struts2 资料

    struts2-core.jar

    struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...

    Struts2视频教程

    Struts2是一套非常优秀的Java WEB应用框架,实现优雅、功能强大、使用简洁。目前已有大量的企业项目采用Struts2来作为Web框架进行开发,掌握Struts2是每个进行Web开发的Java程序员的一项必备技能。 本视频对Struts2...

    struts2 theme主题

    NULL 博文链接:https://cdxs2.iteye.com/blog/1926847

    struts2案例 struts2 struts2源码

    struts2源码 struts2案例 struts2使用包

    Struts2 Struts2 超好的Struts2 pdf 文档

    Struts2 Struts2 超好的Struts2 pdf 文档 Struts2 Struts2 超好的Struts2 pdf 文档 Struts2.pdf文档

    struts2帮助文档

    struts2的概述struts2下的HelloWord struts2基础 struts2做好准备 struts2的标志 struts2的Action讲解 struts2中的国际化 struts2转化器 struts2实现表单数据校验 struts2的基石-拦截器 struts2中实现IOC struts2中...

    struts2环境搭建+struts2 新闻发布系统+struts2 留言板

    struts2环境搭建+struts2 新闻发布系统+struts2 留言板 struts2环境搭建:基础框架搭建,简单易上手,适合新手,比你看书强多了,实践源于理论而高于理论,贵在实践 朋友。 struts2 新闻发布系统:struts2+jsp 功能不...

    struts2例子struts2例子

    struts2例子struts2例子struts2例子struts2例子struts2例子struts2例子struts2例子struts2例子

    struts2(1-7)源码 struts2学习入门 源码学习

    struts 初步认识Struts2并部署验证 struts2 将要进行自定义类型转换的点数据从1个增加到3个 struts3 进行全局的类型转换 struts4 使用Struts2中内部类中的方法进行自定义类型转换,用到的类StrutsTypeConverter ...

    Struts2_s2-016&017&ognl2.6.11_patch漏洞补丁

    -- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper --&gt; &lt;bean type="org.apache.struts2.dispatcher.mapper.ActionMapper" name="myDefaultActionMapper" class=...

    Struts2Struts2Struts2Struts2

    Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2Struts2...

    struts2技术内幕+struts2权威指南

    《Struts2技术内幕:深入解析Struts2架构设计与实现原理》以Struts2的源代码为依托,通过对Struts2的源代码的全面剖析深入探讨了Struts2的架构设计、实现原理、设计理念与设计哲学,对从宏观上和微观上去了解Struts2...

    struts2-scan_struts2-scan_struts2scan_scan_struts2漏洞_

    struts2-scan 检测struts2漏洞,认证检测struts2漏洞

Global site tag (gtag.js) - Google Analytics