Spring有两个MockMvc设置:
一般来说,MockMvc用于什么样的测试?单位还是整合?或两者?
我是否正确地说使用独立设置(在Spring的应用程序上下文之外运行)允许您编写单元测试,并且使用WebApplicationContext设置可以编写集成测试?
我在maven有一个java项目,我知道maven把东西常规使用
一切都在测试/通常是单元测试.但是,如果我想引入集成测试和E2E测试呢?我该如何放入正确的文件夹结构?组织这些的正确方法是什么?
可能是这样的:
?
但这样做会假设src/test/java指的是单元测试.我宁愿明确指定
我对在 Apache Tomcat 上的 Spring 框架中使用 JTA 有一些困惑,我希望有人能澄清,因为经过多次研究,我似乎还无法找到正确的答案。
我正在使用 Spring Framework 开发一个在 Apache Tomcat 6 上运行的 Web 应用程序。
我在某处读到 Spring 确实支持 JTA,但它委托给底层 JavaEE 应用程序服务器。现在这就是我感到困惑的地方,因为 Tomcat 不是一个完整的 JavaEE 应用程序服务器 - 它只是一个 servlet 容器,并且我相信它不提供像完整的 JavaEE 应用程序服务器(Glassfish/Wildfly 等...)那样的 JTA 实现做。
但是,当我执行以下操作时,它的事务方面会起作用:
@Transactional
public class ServiceClassImpl implements ServiceInterface {
// code here that involves transactions e.g. calling DAO code
...
}
Run Code Online (Sandbox Code Playgroud)
所以,我很困惑。我希望有人能启发我。
在大多数定义中,POJO(Plain Old Java Object)是具有属性和 getter/setter 的对象。有些人将这些命名为 DTO。所以基本上它们就是我喜欢称之为“数据类”的东西。无论名称是什么,我都知道有这些对象只有 getter/setter。这些通常用于开发多层 MVC Web 应用程序 - 这些对象将通过不同的层传递。
也许我的问题有点自以为是——但这是否是纯粹的面向对象编程?我决心找出这个问题的答案,即什么是对的,什么是错的?
...因为,我从小就了解到 OOP 就是通过交互将现实生活中的场景/情况建模为对象。对象本身封装了数据和作用于这些数据的行为。- 在我看来,只有 getter/setter 的对象不符合这个定义。
此外,数据类很糟糕(代码异味)——这就是我在大学里教过的。
对于 JSR 356 - Java API for WebSocket,我知道参考实现是 Tyrus。
还有其他人吗?
如果没有,那么我猜 Tyrus 是所有应用程序服务器(Glassfish、JBossAS/Wildfly 等...)中的实现
谷歌搜索了很长一段时间,无法找到任何关于此的信息.
我不是100%确定它是否是Java EE平台的一部分,但我的直觉是它不是.虽然,似乎大多数符合Java EE的应用程序容器都使用/或允许使用缓存系统.
它是Java SE的一部分吗?
或者它只是一个独立的规范?
在Eclipse IDE中,您具有"工作空间"的概念,允许您轻松地在一个侧窗格中管理/查看项目,并允许您轻松地在项目之间切换.
因为我收集IntelliJ没有这个功能,因为每当我打开一个新项目时,它总是要求在不同的窗口或同一个窗口打开?在后一个选项中,它会覆盖我现有的开放项目.
人们说静态实用方法在OOP中是不好的,因为它们不遵循OOP的做事方式.
我知道静态实用程序方法来自更传统的程序编程范例.人们说真正的OOP会在物体意义上模拟真实世界,将状态和行为合二为一.
这是真的?
如果是这样,现代OOP中最好不要使用静态实用方法吗?或者使用它们仍然很常见?后一个问题会更多是"依赖"的情况吗?
java ×5
oop ×2
spring ×2
spring-mvc ×2
caching ×1
e2e-testing ×1
eclipse ×1
jakarta-ee ×1
java-ee ×1
java-ee-7 ×1
jcache ×1
jta ×1
maven ×1
object ×1
pojo ×1
spring-test ×1
tomcat ×1
unit-testing ×1
websocket ×1