Struts2学习笔记⑥

在微信读书上在看一本李刚写的Struts 2.X权威指南 (好像叫这个)的书,可以看得出来作者的开发经验还是很充足的,但是觉得他的尺度和顺序没有把握好,他自己说拦截器是数据校验、国际化的基础…完了还把拦截器放在大后面讲…应该讲完Action就讲拦截器啊,这样才有前置知识你后面的知识才好说啊,而且拦截器很重要的好伐…数据校验基本上讲得是Pattern,你还不仔细将Pattern,这是个啥意思….好了,不吐槽了,人家能出书还是水平在哪里的,希望下一版本能注意吧。

今天来看一看struts2的标签库吧。

Struts 2 标签库

就是为了方便开发者获取数值和传递数值而定义的一套前端标签。

使用:首先在使用的Struts2标签库的jsp页面中引入标签库:

<%@ taglib prefix=”s” uri=”/struts-tags”%>

这样就可以使用了,看到了prefix是s,所以看到s:的都是struts的标签。这让我想到了Codeigniter,在文件上传的时候直接一个标签就行了,没有需要在写上multiply-form 云云。有时候还是挺方便的。但是我对这个标签的态度比较陌生,觉得不像手写的靠谱 who konws。

其实和HTML差不多,struts的标签库也都很简单,来写个例子:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <body>
  <center>
  <h2>注册用户</h2>
    <s:form action="register" method="post">
        <s:textfield name="username" label="姓名"></s:textfield>
        <s:password name="password" label="密码"></s:password>
        <s:select name="degree" label="学历" list="{'高中及以下','大学','研究生'}"></s:select>
        <s:radio name="sex" label="性别" list="{'男','女'}"></s:radio>
        <s:textarea name="protocol" label="注册协议" value="asjdflkajfljasfkljaskldfjlk;asfj;ldsf"></s:textarea>
           <s:checkbox name="ok" label="同意注册协议"></s:checkbox>
        <s:submit value="提交"></s:submit>
        <s:reset value="重置"></s:reset>s
    </s:form>
    </center>
  </body>
</html>

真的简单了很多!之前顾虑怎么设置css啊,每个标签还有一个属性,cssClass和cssStyle 就行了,比较喜欢的是select里面的list属性,非常方便,节省了很多代码量。

具体的表单标签用到了查书就可以了,这里想写一个级联操作的例子:

<s:form name="selectCity">
      <s:doubleselect label="请选择城市" name="city"
          list="{'北京市','上海市'}"
          doubleList = "top=='北京市'?{'西城区','东城区','海淀区','朝阳区'}:{'闸北区','普陀区','杨浦区','闵行区'}"
          doubleName="cityZ" />
  </s:form>

这个特别简单了就,我觉得要比原生的js简单,而且很实用。需要注意的是使用doubleselect必须制定form的name属性。

除了上面的标签之外,还有<s:file accept=”接收文件的类型” name=””>

<s:token />防止重复提交的标签。

除了表单标签外,其他的非表单标签和jsp的几乎一致,不做赘述。

转载于:https://www.cnblogs.com/youngs/p/6474750.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值