SORU
4 Kasım 2011, Cuma


Ne'fark # , % Gergi, işaretler, etiketler arasında $ ler?

Struts2 ile çalışıyorum ve değer değişkenleri yığını giriyorum % # $ kullanılıp kullanılmayacağını bilmiyorum. Doğru insanı bulana kadar hepsini deneyin.

Kimse bunlar arasındaki fark nedir Açıklayabilir misiniz?

CEVAP
23 Temmuz 2012, PAZARTESİ


(Diyez işareti) kullanın#

OGNL şöyle: ActionContext nesneleri ifade etmek için kullanılır

  • objectName: bir Eylem özelliği gibi ValueStack nesne (varsayılan/OGNL bağlamında kök nesne),
  • Bu ValueStack dışında ActionContext ama nesne, özellikle... #objectName:
    • #objectName: oluşturulan nesnenin varsayılan eylemi kapsamında (örneğin, <s:set name="foo" value="'Testing'" />, <s:property value="#foo" /> tarafından başvurulan) ile Struts2 veri etiketleri kullanarak ActionContext
    • #parameters.objectName: istek parametresi
    • #request.objectName: istek kapsamlı bağlıyor
    • #session.objectName: oturum kapsamlı bağlıyor
    • #application.objectName: uygulama kapsamlı bir nitelik
    • #attr.objectName: sayfa, istek, oturum veya uygulama kapsamı (o sırada aradı) özniteliği

Kapsamlı Haritadaki konumu yukarıda (parametreler, istek, oturum ve uygulama) iki şekilde yapılabilir:

  • #scopeName.objectName ya
  • #scopeName['objectName']

% (Yüzde işareti) kullanın

%{ OGNL expression } normalde bir Dize olarak yorumlanır. bir öznitelik OGNL değerlendirme edebi zorlamak için kullanılır.

Örnek: <s:property value="myProperty" default="%{myDynamicDefaultValue}" />

@ (At işareti) kullanın

@ Sembolü statik özellik ve yöntemler için başvurular yapmak için kullanılır. Struts2 Özellikleri Bu etkinleştirmeniz gerekebilir unutmayın: struts.ognl.allowStaticMethodAccess=true

Örnekler:

@my.package.ClassName@MY_STATIC_PROPERTY
@my.package.ClassName@myStaticMethod

(Dolar işareti) $ kullanın

Struts2 OGNL doları özel kullanım işareti yapmaz. Ancak, normal JSTL ifadeler değerlendirmek için kullanılabilir. Örneğin:

Struts2: <h1><s:property value="#pageTitle" /></h1>
(eşdeğerdir...)
JSTL: <h1>${pageTitle}</h1>

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ama Jenna

    Ama Jenna

    29 NİSAN 2011
  • Jared Busch

    Jared Busch

    25 Mayıs 2011
  • paulandstorm

    paulandstorm

    4 EYLÜL 2006