2010-04-10 36 views
6

Tôi đang tìm kiếm một công cụ tạo mẫu. Yêu cầu:Đề xuất công cụ mẫu

  • Chạy trên JVM. Java là tốt; Jython, JRuby và những thứ tương tự, quá ...
  • Có thể được sử dụng bên ngoài các servlet (không giống như JSP)
  • Là wrt linh hoạt. đến nơi các mẫu được lưu trữ (JSP và rất nhiều người yêu cầu các mẫu được lưu trữ trong FS). Nó sẽ cung cấp một giao diện mẫu bốc mà người ta có thể thực hiện hoặc một cái gì đó như thế
  • dễ dàng bao gồm các tham số Templates Tôi thực sự thích những mảnh JSP của thẻ
  • docs Tốt, mã đẹp, vv, nghi phạm thông thường

Tôi đã xem xét JSP- nó gần như hoàn hảo ngoại trừ sự kết hợp giữa servlet và hệ thống tập tin, Stringtemplate- Tôi thích cú pháp mẫu, nhưng nó không thành công trong việc ghép nối hệ thống tập tin, tài liệu thiếu và các nhóm mẫu và các công cụ khó hiểu, GXP, TAL , v.v.

Ý tưởng, suy nghĩ?

+0

có thể trùng lặp với [Đề xuất cho một công cụ tạo khuôn mẫu dựa trên Java?] (Http://stackoverflow.com/questions/174204/suggestions-for-a-java-based-templating-engine) – ripper234

Trả lời

2

Làm thế nào về Velocity?

  • đầy đủ Java
  • không đòi hỏi servlets
  • nó có tập tin, jar, classpath & bộ tải tài nguyên URL (và có thể nhiều hơn)
  • mẫu có thể bao gồm các mẫu khác (nếu đây là những gì bạn có ý nghĩa)
  • có hướng dẫn tốt, cho đến nay tôi có thể nhận được những gì tôi cần từ các tài liệu
2

Nếu bộ nhớ của tôi phục vụ, FreeMaker là phong nha - Giả sử là một số loại "Vận tốc, thế hệ tiếp theo".

0

có thể kiểm tra "JSTP", http://jstp.sourceforge.net/manual.html

cú pháp của nó là tập hợp con của JSP, do đó hỗ trợ IDE là tuyệt vời.

mẫu "jstp" được dịch sang một lớp java đơn giản vào thời gian xây dựng. không có phụ thuộc thời gian chạy.

"tham số" cho mẫu phải được chuyển bởi các trường thành viên. gõ tĩnh tất cả các cách.

Bar.jstp

<%!           
    public String name;      
%> 

Hello <%= name %> 

build chuyển nó thành Bar.java

public class Bar           
{              
    public String name;         
    public void render(java.io.PrintWriter out)   
    {             
     out.print("Hello ");        
     out.print(String.valueOf(name));     
     ...            
    }             
} 

và bạn gọi mẫu bởi

Bar bar = new Bar();        
bar.name = "John";        
bar.render(..);  

với điển hình "hotswap" bạn không nên phải khởi động lại phục vụ khi chỉnh sửa mẫu.

0

Điều gì về Snippetory?

  • Đó là đầy đủ java, (thậm chí logic của bạn được viết bằng java!)
  • Templates được nạp bởi UriResolver, với việc triển khai cho calsspath, hệ thống tập tin và URL.
  • Nó có thể được sử dụng bên ngoài Servlets, ví dụ như mẫu ad hoc như String.format.
  • Nó hoàn toàn dựa trên sự bao gồm tham số của các mẫu.
  • Các tài liệu là ok và nó đơn giản hơn nhiều so với các công cụ dựa trên kịch bản, vì vậy bạn thực sự không cần nhiều.
  • Và một phiên bản mới với great new freatures đang đến sớm, tôi nghĩ
0

Hãy thử Mixer2. http://mixer2.org/ Mixer2 không phụ thuộc vào servlet-API. Bạn có thể lưu mẫu trên String, java.io.File và java.io.InputStream.

0

Đoạn mã, công cụ tạo mẫu không vô nghĩa của tôi cho Java, sẽ là một lựa chọn tốt.

  • Trọng lượng nhẹ.
  • Tài liệu tuyệt vời với các ví dụ và công thức nấu ăn: http://www.x5software.com/chunk
  • Độc lập - không cần servlet.
  • Mẫu từ hệ thống tệp, đường dẫn lớp, chuỗi, webserver, or write your own template provider.
  • Dựa trên các mẫu đơn giản với {$ tags}.
  • Mẫu có thể bao gồm các mẫu khác hoặc thậm chí thực thi chúng dưới dạng macro với từ điển được định dạng theo thẻ giá trị thẻ.
  • Looping, conditionals, filters, all goodies điển hình.
0

Tôi là tác giả của Pebble phù hợp với tiêu chí của bạn khá tốt.

+0

Tôi đề xuất xây dựng lý do tại sao thư viện này sẽ làm việc cho người dùng, tại thời điểm này về cơ bản đây là câu trả lời chỉ có liên kết được coi là chất lượng thấp. – Taryn

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