Sử dụng #
OGNL được sử dụng để chỉ các đối tượng trong ActionContext như sau:
objectName: Đối tượng trong ValueStack (mặc định / đối tượng gốc trong ngữ cảnh OGNL), chẳng hạn như một Action property
- #objectName: Đối tượng trong ActionContext nhưng bên ngoài của ValueStack, cụ thể ...
- #objectName: Đối tượng ActionContext đã được tạo ra bằng cách sử dụng các thẻ dữ liệu Struts2 với phạm vi hành động mặc định (ví dụ <s:set name="foo" value="'Testing'" />, tham chiếu bởi <s:property value="#foo" />)
- #parameters.objectName: Tham số yêu cầu
- #request.objectName: Thuộc tính yêu cầu phạm vi
- #session.objectName: Thuộc tính session-scoped
- #application.objectName: Thuộc tính ứng dụng
- #attr.objectName: Thuộc tính trong trang, yêu cầu, phiên hoặc phạm vi áp dụng (tìm theo thứ tự đó)
- Các tham chiếu Map giới hạn ở trên (thông số, yêu cầu, phiên và ứng dụng) có thể được thực hiện theo một trong hai cách sau:
- #scopeName.objectName hoặc là
- #scopeName['objectName']
Sử dụng %
%{ OGNL expression } Được sử dụng để buộc đánh giá OGNL của một thuộc tính thường được hiểu như là một ký tự String.
Thí dụ: <s:property value="myProperty" default="%{myDynamicDefaultValue}" /> <s:url id="urlAtt" action="urlTag.action"> <s:a href="%{urlAtt}">Call Action</s:a>
Sử dụng @
- Ký hiệu @ được sử dụng để tạo các tham chiếu đến các thuộc tính và phương pháp tĩnh. Lưu ý rằng bạn có thể cần bật tính năng này trong thuộc tính Struts2 của mình:struts.ognl.allowStaticMethodAccess=true
- Ví dụ:
- @my.package.ClassName@MY_STATIC_PROPERTY
- @my.package.ClassName@myStaticMethod
Sử dụng $
- Struts2 OGNL không sử dụng đặc biệt dấu đô la. Tuy nhiên, nó có thể được sử dụng để đánh giá các biểu thức JSTL bình thường. Ví dụ:
- Struts2: <h1><s:property value="#pageTitle" /></h1>
- (tương đương với ...)
- JSTL:<h1>${pageTitle}</h1>
0 nhận xét:
Post a Comment