华南俳烁实业有限公司

java

當(dāng)前位置:中華考試網(wǎng) >> java >> java教程 >> 文章內(nèi)容

jsp:userbean的用法

來源:中華考試網(wǎng)  [2020年10月19日]  【

  jsp:userbean的用法一直是大家所關(guān)心的一個(gè)點(diǎn),大家看完下面的內(nèi)容可以去試一試這個(gè)的用法,希望能對(duì)大家有所幫助。

  需要兩個(gè)頁面一個(gè)bean,一個(gè)action(應(yīng)為我用struts做的所以是action,這里當(dāng)然可以換成servlet);

  第一個(gè)頁面中userbean.jsp中什么都沒有只有一個(gè)form。

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

  然后是一個(gè)簡單的bean,

  package vo;

  public class Person {

  private String name;

  private String age;

  public String getAge() {

  return age;

  }

  public void setAge(String age) {

  this.age = age;

  }

  public String getName() {

  return name;

  }

  public void setName(String name) {

  this.name = name;

  }

  }

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

  接著是action

  public ActionForward execute(ActionMapping mapping, ActionForm form,

  HttpServletRequest request, HttpServletResponse response) {

  UserbeanForm userbeanForm = (UserbeanForm) form;// TODO Auto-generated method stub

  Person person = new Person();

  person.setAge("21");

  person.setName("hp");

  request.setAttribute("person", person);

  return mapping.findForward("success");

  }

  我這里采用findForward是轉(zhuǎn)發(fā)(當(dāng)使用重定向時(shí)就因該使用session.setAttribute)

  最后是接受頁面success.jsp

  需要注意:對(duì)于接受頁面的scope參數(shù)因該與前面的action中的設(shè)置的參數(shù)一樣,這里接受是request,而前面action中也是用request.setAttribute來做的所以可以取到,如果換成了不一樣的就不可能去不到了,因?yàn)槭遣煌膶?duì)象。

  所以:action或servlet中使用什么范圍,jsp中就使用什么范圍。

  另外jsp有四個(gè)范圍page,request,session,application,要搞清楚他們之間的區(qū)別。

  現(xiàn)在要介紹如果在strut-config.xml中將標(biāo)簽中的屬性redirect="true"會(huì)怎樣?答案是在success.jsp中取到的是空,為什么?

  應(yīng)為request的范圍只有在一次請(qǐng)求中才有效,這次請(qǐng)求的發(fā)起者是userbean.jsp中的form:

  沒有redirect或者redirect="false"的UserbeanAction處理完業(yè)務(wù)后就轉(zhuǎn)發(fā)了這次請(qǐng)求,所以這次請(qǐng)求的發(fā)起者仍然是userbean.jsp,于是在success.jsp中可以接到數(shù)據(jù)。

  但是用了redirect="true"后,當(dāng)UserbeanAction處理完業(yè)務(wù)后就從新定向到success.jsp這時(shí)就相當(dāng)于這個(gè) action執(zhí)行了一次請(qǐng)求(request),而request.setAttribute("person",person)的這個(gè)request是 第一個(gè)頁面userbean.jsp的,所以第二個(gè)頁面沒有得到。

  

責(zé)編:fushihao
  • 會(huì)計(jì)考試
  • 建筑工程
  • 職業(yè)資格
  • 醫(yī)藥考試
  • 外語考試
  • 學(xué)歷考試
普兰县| 东宁县| 泾川县| 赞皇县| 马鞍山市| 保靖县| 宜宾市| 长岛县| 普兰店市| 新密市| 图们市| 阿拉善盟| 中阳县| 高雄县| 荣昌县| 樟树市| 平凉市| 怀远县| 永顺县| 桓仁| 综艺| 巴楚县| 彭阳县| 满洲里市| 新蔡县| 浏阳市| 织金县| 高要市| 厦门市| 德兴市| 宁波市| 西青区| 金昌市| 封丘县| 商都县| 台湾省| 临沧市| 嫩江县| 泰和县| 筠连县| 沧州市|