当前位置: 首页 > 面试题库 >

Java EE 6与Spring 3堆栈

景阳平
2023-03-14
问题内容

我现在开始一个新项目。我必须选择技术。我需要一些东西,所以不需要EJB或Seam。另一方面,我需要带有IceFaces的JPA(hibernate或替代)和JSF。

你是否认为在Spring 3上的Tomcat上部署这样的堆栈是一个不错的选择?还是Java EE 6 Web应用程序可能更好?恐怕Java EE 6是一项新技术,尚未有充分的文档证明。Tomcat似乎比Glassfish 3更易于维护。

你怎么看?你有经验吗?


问题答案:

我需要一些东西,所以不需要EJB或Seam。

你是否愿意解释自EJB3以来使EJB变重的原因?你是否意识到我们已经不在2004年了?我真的很想阅读你对light 的定义和你的论点(并且我会很高兴地更新我的答案,因为我敢肯定我会说几句话)。

另一方面,我需要带有IceFaces的JPA(hibernate或替代)和JSF。

Java EE 6 Web Profile(包括JSF 2.0,JPA 2.0,Bean验证,EJB 3.1 Lite,CDI等)非常适合此操作,你可以使用GlassFish v3 Web Profile来运行使用Java EE 6 Web Profile构建的应用程序。

你认为在Tomcat上部署的Spring 3上的此类堆栈是一个不错的选择吗?还是Java EE 6 Web应用程序可能更好?

好吧,我喜欢在非专有平台(Java EE)而不是专有容器(Spring)上运行代码的想法。而且我认为Java EE 6足够好(这是委婉的说法,EJB 3.1(精简版),JPA 2.0,JSF 2.0,CDI踢屁股)。请注意,我是JSF的怀疑者,但我进行了第二次观察,带有CDI的JSF 2.0是如此不同,以至于我什至无法比较。而且,如果你不看CDI,那么我告诉你它会摇摇欲坠。

恐怕Java EE 6是一项新技术,尚未有充分的文档证明。

对我来说,Java EE看起来不错。这听起来像是免费索取。而且,信不信由你,我开始发现Spring变得越来越复杂,而Java EE变得越来越容易。

Tomcat似乎比Glassfish 3更易于维护。



 类似资料:
  • 问题内容: 每当加载一个类时,什么存储在堆中以及什么存储在堆栈中? 线程也驻留在哪里? 问题答案: 引用类型在堆中。 任何原始类型的数据和对堆上值(方法的参数/局部变量)的引用都在堆栈上。 每个线程都有自己的堆栈。 应用程序中的所有线程共享同一堆。

  • 简介 堆和栈是计算机里面最基本的概念,不过如果一直使用高级语言如 Python/Ruby/PHP/Java 等之类的语言的话,可能对堆和栈并不怎么理解,当然这里的栈(Stack)并不是数据结构里面的概念,而是计算机对内存的一个抽象。相比而言,C/C++/Rust 这些语言就必须对堆和栈的概念非常了解才能写出正确的程序,之所以有这样的区别是因为它们的内存管理方式不同,Python 之类的语言程序运行

  • 请看函数findBisect的接口: int findBisect (const Card& card, const apvector<Card>& deck,int low, int high) { 把三个参数deck,low和high看作指定一个子牌堆的单一参数是可以说得通的。 这种事情很常见,有时我把它当作抽象参数。所谓”抽象“,我指的是在更高层次上描述函数,并非程序代码的字面意思。 例如

  • 我使用的是Glassfish 3.1.2.2,JavaEE6。 我有一个库,其中一个类使用CDI获取一个帮助器类。我希望在一个使用该库的特定项目中,重写该CDI依赖项,并强制该库使用我自己的帮助器类,而不是特定于该项目的帮助器类。我可以随意修改库,但默认情况下它应该使用默认的助手类,这样库的其他用户的行为就不会改变。 这应该是CDI模式的完美应用,我为helper类API做了一个java接口;库中

  • Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。

  • 问题内容: 我当前正在创建一个EJB3数据访问类,以处理Java EE 6应用程序中的所有数据库操作。现在,由于Java EE 6提供了新的注释,所以我想知道EJB应该具有什么状态,或者它应该是无状态的。 让DAO成为会话Bean还是Bean 会更好?那呢 这些与DAO相关的选项之间有什么区别? 编辑: 我在完整的Java EE 6平台上使用Glassfish 3.0.1 问题答案: 最好让DAO

  • 我有一个Spring 3 Web应用程序,它实现了两个拦截器。我正在使用一个带有@Configuration注释的配置类。代码如下: 无论我将拦截器添加到注册表的顺序是什么,allIntericetor的preHandle函数总是在home Intericetor的preHandle之前调用。有人知道如何控制拦截器调用的顺序吗? 谢谢

  • 我的验证器类 当我没有选择任何选项就提交表单时, 无法将类型java.lang.String的属性值转换为属性类别所需的类型com.main.java.category;嵌套异常为java.lang.IllegalStateException:无法将类型[java.lang.String]的值转换为属性类别所需的类型[com.main.java.category]:找不到匹配的编辑器或转换策略 这