Struts Html标签和标准的HTML标签功能相同,这里提倡在Struts应用中使用Struts标签,这是因为这些标签可以和Struts框架的其他组件紧密的联系起来,如比标签用来定义HTML表单,Struts能够把这个表单中的数据自动映射到对应的ActionForm中.下面对具体的标签进行深度研究.首先研讨一些基本的东东,我个人认为不是很常用的,生成基本HTML元素的标签,这些标签和HTML元素对应,主要包括:
1)生成元素,这个标签有一个lang属性,用于显示用户使用的语言,设置卫true的时候,标签将先根据存储当前HttpSession中的Locale对象来输出网页数用的语言,如果没有HttpSession或者里面没有Locale对象,就根据HTTP请求头的属性来输出语言,如果HTTP请求头中没有,就根据默认的Locale来输出语言.
2)生成元素,这个用于生成当前网页的绝对URL路径.如果使用了这个标签,当该网页引用同一个应用的其他网页的时候,只需要给出相对于当前网页的相对URL路径即可.
3)生成Anchor元素,这个是超连接标签,感觉有一些好处可言,比如允许在RUL中以多种方法包含请求参数.当用户浏览器关闭Cookie的时候,会自动重写URL,把SessionID作为请求参数包含在URL中,用于跟踪用户的Session状态.它的主要属性有三种,分别是forward指定全局转发连接.href指定完整的URL连接.page指定相对于当前网页的RUL.
4)生成用户请求URI,用于输出超连接中的URL部分,但它并不生成HTML
元素.URI指的是URL中的协议,主机和端口以后的内容.
5)生成HTML元素,用于在HTML页中嵌入图片.page属性指定当前的URI.
根据我个人的一些看法,感觉Struts确实很好,但是在好的东西也有一些不实用的地方,JAVA也是如此,以上方法我比较推荐标签,感觉这个标签有十分不错的功效,下面阐述一下具体的使用方法:
1) 创建全局转发连接:首先在Struts配置文件中配置
在JSP页面中引用:index
2) 创建完整URL的连接,也就是说可以连接到其他的站点
Action
3) 从一个网页连接到同一个应用的另外一个网页
Action
4) 在URL或者RUI中包含请求参数的方法
Action
5) 在URL或者URI中包含单个请求变量的方法
pagemProperty>Action
paramId属性指定请求参数名,paramName属性指定变量名称,paramProperty指定变量卫JavaBean的属性.
研讨完了StrutsHtml标签库的基本标签,下面开始研究一个重要的东东,Struts的表单标签以及它的子标签,单选按钮,复选框,下拉列表等等,下面是详细介绍:
1)表单标签的action属性来指定当用户提交表单后,处理用户请求的组件,就是说在form里action属性比如设置了一个in.do的,那么在配置文件中action元素的path属性如果是/in,这就说明是这个action来接收form提交过来的数据.这个感觉挺简单,此外还需要知道name是设置表单名字,method是来设置请求方法,比如Get或Post.
2)文本标签的property属性指定字段的名字,它和ActionForm中的一个属性匹配,这个属于表单标签的一个子标签,可以把用户填写的值提交到具体的ActionForm中
3)标签在表单中生成取消按钮,当用户按下取消按钮的时候,产生一个取消事件,这个时间由Action来捕获,至于如何处理在Action类中的execute()方法编程实现,主要用途是在用户按了提交按钮,请求没发送过去又不想提交的时候,起到一个反悔作用.
4)标签用来生成复位按钮,类似以上的取消按钮这些实现复位,取代了HTML代码.
5)标签生成提交按钮.使用方法和取消,复位一样都是这样写代码的:
提交.
6)标签在表单上生成隐藏字段,用于在表单上存放不希望让用户看到或者不允许修改的信息,它的属性类似文本标签,property和ActionForm中的具体属性对应.如果想要在表单想显示某个值,而且不希望用户修改,可以用这个方法.
7)标签在表单上生成标准的HTML检查框,比如ActionForm中的属性是boolean类型只能有2个值,就可以在表单中使用这个标签来表示.主要通过property属性来设置对应的ActionForm属性,还有一个value属性,用来设置用户选中检查框的值,默认值是true,就是说当用value=false的时候如果用户没选择这个检查框,就把ActionForm的属性设置卫true,为了检查框能够正常工作,必须在ActionForm的reset()方法中对其复位,在value属性为true的时候,必须在reset()方法中把对应的属性设置为false.
8)标签和差不多,区别就在于它可以生成复选框.它的性能比更加灵活,可以动态的决定被选中复选框的数目,只要property属性相同,而value属性不一样,就可以和ActionBean的同一个数组对应.此外checkbox只能和blooean类型的属性对应,而multibox则没有限制.
9)标签表示单选按钮,多个标签可以组合使用.
10)标签生成下拉列表或多选列表,重要的属性是size属性指定每次网页上显示的可选的项目数量.multiple属性指定是否支持多项选择,如果设置为true表示多选列表,默认为false.property属性于ActionForm中的某个属性对应,这个属性用来存储用户在列表上选中的值.在单选的情况下,ActionForm的对应属性定义为简单类型,不能是数组.在多选的情况下类型是数组.
以上是对StrutsHtml标签库的Form系列标签以及子标签的简单阐述,这些标签不一定都常用,所以了解即可,能掌握常用的几个标签就OK了.下面研究一下文件上传,是指通过用户浏览把用户本地的文件传到Web服务器标签提供了从Html表单中上传文件的功能.这个标签也是Form标签的子标签所以必须嵌套在中,而且的method属性必须设置为Post.enctype编码属性必须设置为multipart/form-data.而且它的property属性必须设置和ActionForm中的Flie类型的属性对应.如果property=”file”则ActionForm中必须要设置private File file;属性,而且提供相应的get/set方法.然后通过Action来完成接收上传文件的功能,首先创建一个读取用户上传文件的InputStream流对象,然后创建一个把上传数据写到目标文件中的OutputStream对象,接下来通过一个驯化把数据从源文件写到目标文件中,上传就实现了.
标签用于输出错误消息,在request和session范围寻找ActionMessages或者其子类ActionErrors集合对象.在从ActionMessages集合对象中读取ActionMessage对象,把ActionMessage对象包含的错误消息文本显示在网页上.至于具体的错误文本消息存放在ResourceBundle中,而且标签能识别错误文本中的HTML元素,例如等等.标签可以存放在网页的任何地方,也可以在表单内.因为它输出错误和它在网页的位置无关.它的具体属性是.1)name:指定ActionMessages对象的属性key,标签处理类根据这个key来家查request或session范围的ActionMessages集合对象.2)property:指定消息属性,如果不设置会显示ActionMessages集合对象中所有的消息对象ActionMessage.3)bundle:指定ResourceBundle如果这个没设置,将从应用中默认的ResourceBundle中获取消息.
标签和标签有些类似,也能够在网页中输出消息,具体的属性是:1)name:指定ActionMessages对象的属性key,标签处理根据这个key来检索request或者session范围内的ActionMessages对象.2)message:指定消息的来源,如果是true则从request或者session范围内检索出属性key为Globals.MESSAGE_KEY的具体的ActionMessages对象.3)id:用来命名从消息集合中检索出每个ActionMessages对象,它和标签的name属性匹配.
Struts的标签库固然很好,但是有些是需要用的,有些也是不用也罢的,所以可以根据实际情况进行研究,不过感觉还是都了解一下的好,不一定都要会用,但是起码都能看懂就OK了呵呵^_^ (网友们的支持,是我继续写技术文章的动力!)
分享到:
相关推荐
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,...
标签:apache、struts2、plugin、struts、json、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,...
在Struts中,HTML标签库是一个非常重要的部分,它提供了简化和增强HTML表单处理的能力。这些自定义标签帮助开发者更好地与Struts控制器层交互,减少代码量,并提高代码的可读性和可维护性。 1. **HTML标签库概述** ...
struts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jarstruts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jar
struts2-config-browser-plugin-2.3.24.jar, struts2-core-2.3.24.jar, struts2-jasperreports-plugin-2.3.24.jar, struts2-jfreechart-plugin-2.3.24.jar, struts2-pell-multipart-plugin-2.3.24.jar, struts2-...
struts2-struts1-plugin-2.1.6.jar
struts2-ssl-plugin-1.2.1.jar
struts2-json-plugin,Struts JSON插件
最新struts2-struts1-plugin-2.1.8.1.jar
struts2-core-2.5.18.jar包下载,支持struts2的类库下载
Struts2-dojo-plugin-2.2.1.jar 是一个针对Apache Struts2框架的扩展插件,主要用于增强Struts2应用的用户界面交互性,特别是通过集成Dojo JavaScript库来提供丰富的AJAX功能和用户体验。这个插件是Struts2与Dojo ...
`struts2-json-plugin-2.1.8.1.jar` 则是Struts 2框架的一个插件,主要用于增强Struts 2对JSON的支持。Struts 2是一款非常流行的MVC(Model-View-Controller)框架,用于构建企业级的Java Web应用程序。这个插件允许...
struts2-dojo 跨域时解决拒绝访问的问题
在Struts2框架中,标签库是其重要组成部分,它提供了丰富的标签来帮助开发者更方便地构建用户界面。`struts2-tags-API`就是这样一个资源,它包含了Struts2标签API的详细文档,帮助开发者理解和使用这些标签。 一、...
struts2-convention-plugin-2.3.24.1
struts2-convention-plugin-2.3.15.1.jar
默认的struts2-config-browser-plugin包中的ftl文件include标签路径用的相对路径,会找到包内的include文件,将包内ftl里include的路径改成的/开头的全路径。
2. **struts-html标签**:这些标签主要用于处理HTML表单元素和用户交互。例如,`<html:text>`用于创建一个文本输入字段,`<html:submit>`用于创建提交按钮,`<html:errors>`则可以显示所有验证错误。 3. **struts-...
struts2-jfreechart-plugin-2.1.8.1.jar
Struts2 JSON Plugin是针对Apache Struts2框架的一个重要组件,版本为2.3.8。这个插件主要的功能是让Struts2应用程序能够轻松地处理JSON(JavaScript Object Notation)数据格式,使得Web应用可以方便地进行JSON序列...