我有以下测试结构:
public class WorkerServiceTest {
public class RaiseErrorTest extends AbstractDbUnitTest{
@Test
public void testSomething(){
}
...
}
...
}
Run Code Online (Sandbox Code Playgroud)
这样做是因为我不想为每个扩展的测试用例创建一个单独的类文件AbstractDbUnitTest
.
问题是mvn test
没有从我的内部类运行测试.有没有办法如何配置Maven来运行这样的测试?当然我可以在父类中创建调用内部类方法的方法,但我想要一种更清晰的方法.
我有一个产品对象属于某些类别,即经典的多对一关系.
@Entity
public class Product{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
Long id;
String name;
Double price;
@ManyToOne(fetch = FetchType.LAZY)
Category category;
...
}
@Entity
public class Category implements Identifiable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
...
}
Run Code Online (Sandbox Code Playgroud)
我想在不预先选择类别的情况下插入和更新产品.像这样:
Product product = dao.get(productId);
Category category = dao.get(categoryId);
product.setCategory(category);
dao.update(product);
Run Code Online (Sandbox Code Playgroud)
要么
Product product = new Product(somename);
Category category = dao.get(categoryId);
product.setCategory(category);
dao.insert(product);
Run Code Online (Sandbox Code Playgroud)
是否可以在没有类别选择的情况下更新和插入?我不想使用HQL或直接查询.
我有一些字符串:
Avery® Laser & Inkjet Self-Adhesive
Run Code Online (Sandbox Code Playgroud)
我需要将它们转换为
Avery Laser & Inkjet Self-Adhesive.
Run Code Online (Sandbox Code Playgroud)
即删除特殊字符并将html特殊字符转换为常规字符.
根据我将spring MVC与hibernate结合使用的经验,我知道在渲染视图时寻址到lazy-fetched集合时发生的惰性异常问题.它通过引入OpenSessionInViewInterceptor
或OpenSessionInViewFilter
因此为每个请求启用一个hibernate会话来修复纯粹的spring + hibernate世界.
所以问题是:我是否应该关心grails中的这个问题,或者默认情况下启用这样的一个会话每个请求的行为.
如果这不是grails默认值,请提供一些代码来实现此行为.
谢谢.
我需要比较两个表示json对象的字符串。为了进行测试,我需要一种比较这些字符串的方法,不仅要忽略子元素的顺序(这很常见),而且要忽略jsons数组属性中的元素顺序。即:
group: {
id: 123,
users: [
{id: 234, name: John},
{id: 345, name: Mike}
]
}
Run Code Online (Sandbox Code Playgroud)
应该等于:
group: {
id: 123,
users: [
{id: 345, name: Mike},
{id: 234, name: John}
]
}
Run Code Online (Sandbox Code Playgroud)
理想情况下,我需要一些javascript lib,但是也欢迎使用其他方法。
我的spring + maven项目有.properties和.xml资源文件.我想为.properties设置过滤,只排除所有spring xml配置.这是非常简单的事情:
<resource>
<filtering>true</filtering>
<directory>${basedir}/src/main/resources</directory>
<excludes>
<exclude>**/*.properties</exclude>
</excludes>
</resource>
<resource>
<filtering>false</filtering>
<directory>${basedir}/src/main/resources</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
Run Code Online (Sandbox Code Playgroud)
但现在我想将过滤器应用于一个具体的xml文件,比如env-config.xml.所以问题是如何将过滤器应用于所有.properties文件和仅一个特定的xml文件?
我的应用程序连接到db并从此处获取类别树.在调试方案中,我可以看到这个大树对象,我只想到能够将这个对象保存在磁盘上的某个地方,以便在测试存根中使用.像这样:
mockedDao = mock(MyDao.class);
when(mockedDao.getCategoryTree()).thenReturn(mySavedObject);
Run Code Online (Sandbox Code Playgroud)
假设mySavedObject
- 足够大,所以我不想手动生成它或编写特殊代代码.我只是希望能够在调试会话期间将其序列化并保存在某处,然后对其进行反序列化并传递给thenReturn
测试.是否有标准的方法可以这样做?如果不是如何更好地实施这种方法?
java世界中是否有任何方法可以在不需要无参数构造函数和Serialized实现的情况下进行序列化?
我有这样的地图:
data = {user.name: "John",
user.surname: "Doe",
city: "NY"}
Run Code Online (Sandbox Code Playgroud)
我可以这样访问attiribute'city':
data.city
Run Code Online (Sandbox Code Playgroud)
是否有类似的方法来访问'user.name'属性?
java ×4
hibernate ×2
spring ×2
unit-testing ×2
compare ×1
constructor ×1
equals ×1
filtering ×1
grails ×1
groovy ×1
insert ×1
javascript ×1
json ×1
jsonassert ×1
junit ×1
map ×1
maven ×1
maven-2 ×1
mocking ×1
resources ×1
select ×1
serializable ×1
session ×1