freemarker与struts配置实例和dwr实例
Freemarker、Struts2和DWR是Java Web开发中常用的三个组件,它们分别负责不同的职责,协同工作可以构建出高效、动态的Web应用程序。在这个实例中,我们将深入理解这三个技术,并通过具体配置来了解它们如何协同工作。 **FreeMarker** 是一个模板引擎,它允许开发者将业务逻辑与视图层分离,使页面呈现更加灵活。FreeMarker模板语言(FTL)是一种简单的文本格式,用于描述如何在HTML或其他文档类型中动态生成内容。在Struts2框架中,FreeMarker常作为视图层的渲染工具,接收Action传递的数据并生成动态网页。 **Struts2** 是基于MVC设计模式的Java Web框架,它的核心是Action类,负责处理用户的请求并调用业务逻辑。Struts2提供了丰富的拦截器、结果类型以及插件机制,使得开发更易于维护和扩展。在这个实例中,你将会看到如何配置Struts2以连接FreeMarker模板,以及如何在Action中设置数据供模板使用。 **Direct Web Remoting (DWR)** 是一个允许JavaScript在浏览器端直接调用服务器端Java方法的库,实现Ajax无刷新交互。DWR通过动态生成JavaScript库,使得前端开发者可以像操作本地对象一样调用远程Java方法,增强了用户体验。在这里,你将学习到如何配置DWR,创建Java端的Remote Interface,以及在客户端JavaScript中调用这些接口。 配置过程通常包括以下步骤: 1. **添加依赖**:在项目中引入FreeMarker、Struts2和DWR的相关依赖库,这通常通过Maven或Gradle等构建工具完成。 2. **配置Struts2**:在`struts.xml`配置文件中,定义Action类和对应的Result,指定使用FreeMarker模板进行渲染。例如: ```xml <action name="yourAction" class="com.example.YourAction"> <result type="freemarker">/path/to/your/template.ftl</result> </action> ``` 3. **配置FreeMarker**:在`web.xml`中配置FreeMarker的Servlet,指定模板目录等参数。同时,需要在Struts2的配置中声明FreeMarker为默认的结果类型。 4. **创建FreeMarker模板**:根据Action提供的数据,编写`.ftl`模板文件,使用FTL语法来动态生成HTML内容。 5. **配置DWR**:在`dwr.xml`中定义允许暴露给JavaScript的Java接口,如: ```xml <allow> <create class="com.example.YourService" javascript="YourService"> <method name="yourMethod" /> </create> </allow> ``` 6. **编写Java接口**:在Java后端实现DWR的Remote Interface,提供需要被调用的方法。 7. **客户端调用**:在前端JavaScript中,通过DWR生成的JavaScript库,可以直接调用后端的Java方法,如: ```javascript YourService.yourMethod(param, function(response) { // 处理返回的数据 }); ``` 这个实例是一个基础的学习资源,适合初学者理解这三个技术的集成和使用。在实际开发中,你可能需要进一步学习如何处理更复杂的业务逻辑、错误处理、安全性和性能优化等方面的知识。通过不断实践和学习,你可以熟练掌握这些工具,构建出功能强大的Web应用。
- 1
- 大数据分析BDA2013-10-28适合参考的例子
- 「已注销」2012-12-14非常感谢楼主的分享,最近也正常去学习这门技术。
- crubeecitlefix2012-08-14例子不错~参考了一部分~感谢分享
- 粉丝: 16
- 资源: 27
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助