freemarker的相关问题

我想问问用freemarker是不是仅仅只作为呈现作用?如何使用他达到与后台交互的?谢谢
[b]问题补充:[/b]
我明白了,他只能作为表示层使用,展现数据而已,如果直接将他所格式的数据传回到后台是不可能的?

5个回答

模板技术,用于显示,与后台的交互还是靠STRUTS,如果你是结合STRUTS用的话。建议LZ结合STRUTS用。

它只是一个模板技术而已,自然是用于表示层显示界面使用,
你要的与后台交互是什么程度?

它本身就是需要后台解析才能用于展示,

如果直接将他所格式的数据传回到后台?

为什么要用它做这个事,

[quote]如果直接将他所格式的数据传回到后台是不可能的? [/quote]
俺看不明白,他本来就在后台啊,怎么数据传回到后台是不可能的???
你用它可以生成html,jsp,php等等,

没有懂LZ问题的意思,它确实仅仅是个模版技术,所以使用的方式就可以不仅仅是表现层,也可以用它来做其他的管理。
比如说它可以管理sql语句:将sql语句的内容放到里面,将要处理的参数传给模版,让它生成实际使用的sql语句。比如常见的简单查询模块,一般都是在java代码中判断是否有查询条件,有则给处理sql的StringBuffer增加内容,没有则不添加。这样的sql可以放到freemarker里面,用<#if>处理查询条件,这样整个sql就不是分散的放在java代码中,而是集中在一个ftl文件里。如果有需要,可以直接把ftl里面的sql语句拿出来,替换掉freemarker标记,就可以直接使用,而且很容易读懂。

如果有必要,你可以使用freemarker使你同时持有你的参数和你的生成的内容,可以对你生成的内容作后续的处理,从这点上来说比jsp要方便多了,例如,如果你用freemarker做页面渲染,可以再渲染完成后,依据你的参数,再用正则式对渲染的结果做替换。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问