Mayaa框架语法及项目常用--模板(1-5)

180 阅读1分钟

Mayaa框架语法及项目常用

0、模板

// xx.html
<html>
    <body>
        <input type="text" value="dd" name="aa" id="button1" size="11"/>
    </body>
</html>


// xx.mayaa
<?xml version="1.0" encoding="UTF-8"?>
<m:mayaa xmlns:m="http://mayaa.seasar.org">
    <m:echo m:id="button1">
        <m:attribute name="type" value="button"/>  // 此处会替换xx.html中input的type属性的值
        <m:attribute name="value" value="逃之夭夭灼灼其华"/>
        <m:attribute name="size" value="${null}"/> // 此处会删除xx.html中input的size属性
        <m:attribute name="value" value="${getValue().toStr()}"/> // 如果需要js方法,需要${js方法}这样操作,如果需要变量也如此操作
    </m:echo>
</m:mayaa>


// 执行结果
<html>
    <body>
        <input type="button" value="dd" name="逃之夭夭灼灼其华" id="button1"/>
    </body>
</html>

1、 常用语法

1.1、 write: 替换内容 (常用)

// xx.html
<div>
    <span id="name"></span>
</div>

// xx.mayaa
<m:write m:id="name" value="陈龙"/>

// 执行结果
<div>
    陈龙  //会替换掉span标签
</div>



/如果不想替换dom标签,则:添加 replace="false"
// xx.mayaa
<m:write m:id="name" value="陈龙" replace="false"/>
// 执行结果
<div>
    <span id="name">陈龙</span>
</div>



/另外如果你不想取代模板的值而是使用模板的值,可用:
// xx.mayaa
<m:write m:id="name" value="${bodyText}" default="默认值"/> 
// 在value属性的脚本中,有个变量是“bodyText”,它里面存储了原html模板中标记体的内容,没有标记体的时候,在value属性中可以使用这个变量。mayaa中默认有个变量bodyText存储模板原内容,当然,如果有替换值,还是替换值优先,另外default可设置默认值,但是无法设置bodyText

1.2、 formatNumber: 输出数字

value:要输出的值

pattern:输出格式,以java.text.SimpleDateFormate为准

default:Value为null的时候的默认值

// xx.html
<span id="num"></span>


// xx.mayaa
<fmt:formatNumber m:id="num" value="123" default="456"/>


// 执行结果
123

1.3、 formatDate: 输出日期

value:要输出的值

pattern:输出格式,以java.text.SimpleDateFormate为准

default:Value为null的时候的默认值

// xx.html
<span id="date"></span>


// xx.mayaa
<fmt:formatDater m:id="date" value="2008/06/09" default="2008/06/06"/>


// 执行结果
2008/06/09

1.4 、获取数据

// xx.html
<span id="name"></span>


// xx.mayaa
<m:beforeRender>
    Request.setAttribute(‘bean’, new Packages.example.MyBean()); 
    // 假定bean.getName="豆豆"。另外读取的bean字段并非bean字段的名字,而是get方法中的get后面的字段,比如bean中的get方法为"getName",那么获取时就是bean.name,而非bean.getName或者bean.Name之类。
</m:beforeRender>
<m:write m:id="name" value="${bean.name}"/>


// 执行结果
豆豆


元数据获取及使用还可以更加简单:
<m:write m:id="name" value="${request.getAttribute(‘属性名’) }"/>
或者:(这种用的比较多)
<m:write m:id="name" value="${属性名} "/>

另外元数据的取值方式和jsp类似,但jsp是request和session,mayaa是优先顺序为:page,request,session,application,都找不到就抛异常,另外获取客户端传值可用${param.xx}

1.5、 if (常用)

// if.html
<html>
    <body>
        <span id="visible">
            <span id="message">dummy message</span>
        </span>
    </body>
</html>


// if.mayaa	
<?xml version="1.0" encoding="UTF-8"?>
<m:mayaa xmlns:m="http://mayaa.seasar.org">
    <m:if m:id="visible" test="${ 1 == 1 }" />
    	<m:write m:id="message" value="Hello Mayaa!" />
    </m:if>
</m:mayaa>

/逻辑判断符:(< → &lt;      > → &gt;      & → &amp;)
    

//显示页面
<html>
    <body>
        <span>
            Hello Mayaa!
        </span>
    </body>
</html>