Struts标签库详解

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错
在JSP页面中,使用标记库代替传统的Java代码来实现页面的显示逻辑是大势所趋,然而,由于自定义标记很容易造成重复定义和非标准的实现,于是出现了基于Java Web的JSTL和基于struts的taglib等标签库来解决这些问题。

这些标签库在实现原理上相差无几,学会一种,另一种也就很容易上手,那咱们就从Struts的标签库走起。

常用的strust标签库有、和、和、4种。

使用方法:

1.在strus-config.xml中配置message-resources,注意,这个标签要放在action-mappings标签后面。配置信息如下:

2.在src目录下引入提供国际化资源文件MessageResources.properties

3.在JSP页面中引入taglib

 4.下面是分别是(获取字段值、JavaBean属性值)、和(判断是否为空)、和(判断是否存在)、(迭代取出集合中的数据)分别在Action和JSP页面的配置

(1)–>action

public class BeanWriteAction extends Action {

 @Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  // 普通字符串
  request.setAttribute(“hello”, “quwenzhe”);
  request.setAttribute(“today”, new Date());

  Group group = new Group();
  group.setName(“提高班”);

  User user = new User();
  user.setUsername(“quwenzhe”);
  user.setAge(“24”);
  user.setGroup(group);

  request.setAttribute(“user”, user);

  return mapping.findForward(“success”);
 }
}

–>JSP

姓名:<input type="text" name="username" value="”>

年龄:<input type="text" name="age" value=" “>

所属组:<input type="text" name="group" value=" “>

(2)和、和–>action

public class EmptyPresentAction extends Action {

 @Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {

  request.setAttribute(“attr1”, null);
  request.setAttribute(“attr2”, “”);
  request.setAttribute(“attr3”, new ArrayList());

  return mapping.findForward(“success”);
 }
}

 和、和–>JSP

 
 
   attr1为空
 
 
   attr1为空
 
 
   attr1存在
 
 
   attr1不存在
 
 

 
 

 
   attr2为空
 
 
   attr2为空
 
 
   attr2存在
 
 
   attr2不存在
 
 

 
 

 
   attr3为空
 
 
   attr3为空
 
 
   attr3存在
 
 
   attr3不存在
 
 

  (3)–>action

public class IteratorAction extends Action {

 @Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {

  Group group = new Group();
  group.setName(“提高班”);

  List userList = new ArrayList();

  for (int i = 0; i < 10; i++) {
   User user = new User();
   user.setUsername(“quwenzhe–>” + i);
   user.setAge(“24–>” + i);
   user.setGroup(group);

   userList.add(user);
  }
  request.setAttribute(“userList”, userList);
  return mapping.findForward(“success”);
 }
}

 –>JSP

 

   
   

   

   

   

   
   

     

   

   
   
   
     

     

     

     

     

   
   
 

姓名 年龄 所属组
没有符合条件的数据
       
     
       
     
       
     

这样我们在后台Action中通过request设置的值,在JSP页面中通过标签就能很方便的获取到,大大提高工作效率。

struts2文件上传(保存为BLOB格式) http://www.linuxidc.com/Linux/2014-06/102905.htm

Struts2的入门实例 http://www.linuxidc.com/Linux/2013-05/84618.htm

Struts2实现ModelDriven接口 http://www.linuxidc.com/Linux/2014-04/99466.htm

遇到的Struts2文件下载乱码问题 http://www.linuxidc.com/Linux/2014-03/98990.htm

Struts2整合Spring方法及原理 http://www.linuxidc.com/Linux/2013-12/93692.htm

Struts2 注解模式的几个知识点 http://www.linuxidc.com/Linux/2013-06/85830.htm

Struts 的详细介绍请点这里
Struts 的下载地址请点这

未经允许不得转载:演道网 » Struts标签库详解

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册