2008-09-29 23 views

Trả lời

10

Có một số cách.

1) Bạn có thể đặt các giá trị trực tiếp trong ngữ cảnh.

2) Bạn có thể sử dụng FieldMethodizer để làm cho tất cả các trường tĩnh công khai trong một lớp có sẵn.

3) Bạn có thể sử dụng triển khai Uberspect tùy chỉnh bao gồm các trường tĩnh công cộng trong thứ tự tra cứu.

4) Bạn có thể sử dụng FieldTool từ VelocityTools.

Tôi khuyên bạn nên 1 cho một vài giá trị, 2 cho một vài lớp học, 3 cho rất nhiều lớp học và các giá trị, và 4 nếu bạn đang sử dụng VelocityTools và nếu không sẽ sử dụng 1 hoặc 2.

5

Vận tốc chỉ có thể sử dụng bất kỳ thứ gì tìm thấy trong ngữ cảnh của nó, sau đó, ví dụ:

context.put("MaxLong", Long.MAX_VALUE); 

Bạn không thể sử dụng số liệu thống kê hoặc truy cập các thành phần tĩnh trong ngữ cảnh Velocity do cách hoạt động tra cứu của nó (xem Velocity's Property lookup rules). Điều tốt nhất cần làm là thêm giá trị bạn muốn kiểm tra một cách rõ ràng trong ngữ cảnh của bạn.


Sửa 06 Tháng Mười vào cảnh thứ hai, nó có vẻ là có thể truy cập các thành viên tĩnh. Xem vận tốc Developer guide - Support for "Static Classes" để biết thêm thông tin. Tuy nhiên, tôi đã không thử điều này.

+2

Sự hỗ trợ cho các lớp tĩnh , không mở rộng đến các trường tĩnh, chỉ là các phương thức tĩnh. Ngoài ra, nó chỉ có trong phiên bản mới nhất 1.6-beta1. –

Các vấn đề liên quan