2013-10-01 38 views
7

bir JSTL değişken OKPF bu JSP dahil gelen bu değişken erişilen bir JSPjstl içinde requestScope ne zaman kullanılır?

<c:set var="name" value="Tiger" scope="request" /> 

istek kapsamında yer almaktadır. Şimdi, bu iki yolla değişkene erişmede herhangi bir fark var mı?

1) <c:out value="${name}" /> 
2) <c:out value="${requestScope.name}" /> 

RequestScope ne zaman kullanılır?

cevap

20

Nesnenin istemeden, sayfadan, oturumdan veya uygulama kapsamından gelmesini istemediğinizde requestScope'u kullanırsınız. Inded, ${name} kullanarak, sayfadaki bir name özniteliğini arayacaktır, daha sonra istekte, ardından oturumda, daha sonra uygulamada.

JSP'deki diğer bazı kodların sayfa kapsamına name özniteliği koyduğunu varsayalım. Ancak istekte isme erişmek istersiniz: requestScope'u kullanmak zorundasınız.

Seansın name özniteliğine sahip olabileceğini varsayalım. JSP, istek kapsamı içinde name özniteliğini belirlemeyi unuttuysa, requestScope.name kullanılmıyorsa oturum kapsamlı adı döndürür.

JSP fragmanının amacı, kapsayıcı JSP'de ayarlanan bir öğeye erişmekse, bu JSP parçasının bir JSP etiketi olması gerekir ve bu adı, bu etikete argüman olarak iletmeniz gerekir. Araştırmalarım içinde

1

(Ben de JSTL için yeni biriyim), örneğin yanıt sayfasından sayfayı istemek için değerleri ayarlayabilirsiniz istek kapsamı biz index.jsp ve eylem sayfası adlı bir sayfa olduğunu varsayalım

index_action.jsp biz, aksiyon sayfasına set değerleri

<c:set var="nme" scope="request" value="Janaka aravinda"/> 
<% request.getRequestDispatcher("index.jsp").forward(request, response); %> 

(// Ben değişken nme oluşturulan veolarak değerini ayarlarsanız. talep değerini izleyin olarak ve geri istek sayfası (index.jsp))

Şimdi index.jspnme değişkeninde nme arayabilir yeniden

<c:out value="${nme}"/> 
İlgili konular