对于我们正在现有框架上构建的即将推出的应用程序,我有一个关于考虑 AngularJS(当前稳定版本 - 1.3.9)的快速问题。当前框架具有 Java EE MVC 架构,以下是按顺序提到的当前组件,它们被调用的顺序:
查看 - JSP:该层作为响应 Java 对象获取,我们使用 jsp:useBean
访问其属性并在屏幕上显示。 如果在页面上进行了任何修改,它会通过 ControllerServlet,即一个 Java 文件,其中包含访问 HttpRequest 和 HttpSession 相关信息的代码。 Controller 还在 JNDI 中进行查找,以根据 HttpRequest 参数名称查找要调用的 bean 的名称,例如页码 一旦返回 EJBBean 查找, Controller 就会调用 EJB 3.1 “no-interview” View ——这些是用 @Stateless
注释的无状态 Bean。 EJBBean 类然后调用 BusinessObject 类,我们称它们为“BO”,它在内部被 DAO 接口(interface) 引用
DAO 实现类是负责 CRUD 操作的类 我们目前的问题:该 View 与从 DAO 返回的 Java 对象紧密耦合,并且由于响应未转换为 JSON,因此使用了许多 scriptlet 代码来显示它们的值(我知道 scriplet 是 oldskool,但作为一个遗留解决方案,别无选择) jQuery 用于在将 DOM 发送到 Controller 层之前对其进行操作 View 不是屏幕上发生的事情的官方记录,不像 AngularJS 我可以很容易理解 开发人员为不同的浏览器手动编写自定义 CSS 建议解决方案应使用 AngularJS 为新应用程序设计 View
利用 Bootstrap css 类,这些类具有现成的 CSS,可以与 AngularJS 结合使用
每个请求都使用 $http 服务发送到 ControllerServlet,以确保我们使用现有的 MVC 架构,即通过 Controller 路由每个请求
EJB 层为 RESTFul 以返回 JSON 格式的数据 用于响应式网页设计的视口(viewport)特定 css 代码 - 即同一屏幕应在多个设备和平台上呈现 问题 :
提议的解决方案是否可行?有什么缺点? 将 EJB Bean 类引用为 RESTFul 服务是一种好习惯吗? 我们是否可以使用 AngularJS 访问所有 Java EE 对象/接口(interface)?例如HttpRequest、HttpSession等切换到此架构是否有助于提高性能? 来自管理层的问题 - 为什么不坚持使用 jQuery! - 可能是所有问题中最难说服管理层了解 Angular 的好处 希望大家帮忙提点建议
我正在使用 spring 4.0.1
, hibernate 4.3.5
, jackson 1.9.2
, 我正在创建一个 RESTful
返回 JSON
中的数据的 web 服务格式和 angularjs
在与后端松耦合的前端。
关于您的问题;
解决方案当然是可行的,到目前为止没有缺点
除了 session 管理很棘手,因为 Restful ws 是无状态的
. 它提供了一个非常优雅的功能,您可以访问您的所有
通过任何应用程序 Web 客户端、桌面或
移动的。 Angular 应用程序与您可以维护的后端应用程序完全隔离
服务器中的请求和 session ,并以您喜欢的内容进行响应
json 格式转 Angular 同 2 我希望它有帮助