Java Play Framework运行时生成模板

Java Play Framework运行时生成模板,java,content-management-system,playframework,Java,Content Management System,Playframework,使用Play框架,允许管理员用户创建和编辑模板,然后呈现模板有多容易 所以本质上是类似CMS的功能 我不熟悉Play框架,正在评估它是否可用于个人项目 编辑 另一种方法是只使用像CKEditor这样的编辑器,将html从数据库中保存下来,并通过CSS提供一些重新整理,但更愿意允许了解更多信息的用户编辑模板。这个问题的答案取决于您是否需要可编辑页面中的动态内容 如果没有,则只保存HTML文本。如果您这样做了,并且它确实是有限的(比如替换名称字段),那么您可以简单地对HTML文本进行简单的字符串替换

使用Play框架,允许管理员用户创建和编辑模板,然后呈现模板有多容易

所以本质上是类似CMS的功能

我不熟悉Play框架,正在评估它是否可用于个人项目

编辑

另一种方法是只使用像CKEditor这样的编辑器,将html从数据库中保存下来,并通过CSS提供一些重新整理,但更愿意允许了解更多信息的用户编辑模板。

这个问题的答案取决于您是否需要可编辑页面中的动态内容

如果没有,则只保存HTML文本。如果您这样做了,并且它确实是有限的(比如替换名称字段),那么您可以简单地对HTML文本进行简单的字符串替换

如果您决定要在运行中编辑播放模板(并且出于安全考虑还可以),那么您可以编译模板。请注意,这是在游戏1.2.x中完成的-尽管毫无疑问在游戏2.x中类似。确保缓存模板,因为它们的编译成本很高(查看TemplateLoader.load(VirtualFile文件),了解如何缓存和更新模板)

String name=“mytemplate”;
String source=“hi${name}”;
Template Template=new GroovyTemplateCompiler().compile(new GroovyTemplate(名称,源));
Map args=new HashMap();
args.put(“姓名”、“妈妈”);
String renderedHtml=template.render(args);
看一看。这就是你要找的吗?
String name = "mytemplate";
String source = "hi ${name}";
Template template = new GroovyTemplateCompiler().compile(new GroovyTemplate(name, source)));
Map<String,Object> args = new HashMap<String,Object>();
args.put("name","mom");
String renderedHtml = template.render(args);