小编Vla*_*mir的帖子

13
推荐指数
1
解决办法
4835
查看次数

通过Maven从内部类运行测试

我有以下测试结构:

public class WorkerServiceTest {

    public class RaiseErrorTest extends AbstractDbUnitTest{
        @Test
        public void testSomething(){
        } 

        ...
    }

    ...
}
Run Code Online (Sandbox Code Playgroud)

这样做是因为我不想为每个扩展的测试用例创建一个单独的类文件AbstractDbUnitTest.

问题是mvn test没有从我的内部类运行测试.有没有办法如何配置Maven来运行这样的测试?当然我可以在父类中创建调用内部类方法的方法,但我想要一种更清晰的方法.

java junit maven-2 unit-testing

11
推荐指数
2
解决办法
1886
查看次数

休眠,插入或更新而不选择

我有一个产品对象属于某些类别,即经典的多对一关系.

@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或直接查询.

select hibernate insert

10
推荐指数
1
解决办法
1万
查看次数

如何使用java转换特殊字符?

我有一些字符串:

Avery® Laser & Inkjet Self-Adhesive
Run Code Online (Sandbox Code Playgroud)

我需要将它们转换为

Avery Laser & Inkjet Self-Adhesive.
Run Code Online (Sandbox Code Playgroud)

即删除特殊字符并将html特殊字符转换为常规字符.

java special-characters htmlspecialchars

8
推荐指数
2
解决办法
3万
查看次数

使用Grails时,我是否应该关心Open View in View?

根据我将spring MVC与hibernate结合使用的经验,我知道在渲染视图时寻址到lazy-fetched集合时发生的惰性异常问题.它通过引入OpenSessionInViewInterceptorOpenSessionInViewFilter因此为每个请求启用一个hibernate会话来修复纯粹的spring + hibernate世界.

所以问题是:我是否应该关心grails中的这个问题,或者默认情况下启用这样的一个会话每个请求的行为.

如果这不是grails默认值,请提供一些代码来实现此行为.

谢谢.

model-view-controller session grails spring

6
推荐指数
1
解决办法
1464
查看次数

如何比较两个json忽略数组属性中元素的顺序?

我需要比较两个表示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,但是也欢迎使用其他方法。

javascript json compare equals jsonassert

6
推荐指数
2
解决办法
5733
查看次数

如何使用maven资源过滤过滤特定文件

我的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文件?

resources spring filtering maven

6
推荐指数
1
解决办法
2万
查看次数

在调试中保存对象,而不是在测试中将其用作存根

我的应用程序连接到db并从此处获取类别树.在调试方案中,我可以看到这个大树对象,我只想到能够将这个对象保存在磁盘上的某个地方,以便在测试存根中使用.像这样:

mockedDao = mock(MyDao.class);
when(mockedDao.getCategoryTree()).thenReturn(mySavedObject);
Run Code Online (Sandbox Code Playgroud)

假设mySavedObject- 足够大,所以我不想手动生成它或编写特殊代代码.我只是希望能够在调试会话期间将其序列化并保存在某处,然后对其进行反序列化并传递给thenReturn测试.是否有标准的方法可以这样做?如果不是如何更好地实施这种方法?

java unit-testing mocking stub-data-generation

5
推荐指数
1
解决办法
499
查看次数

Java 序列化库,无需无参数构造函数和 Serialized 实现

java世界中是否有任何方法可以在不需要无参数构造函数和Serialized实现的情况下进行序列化?

java serialization constructor serializable

5
推荐指数
1
解决办法
3093
查看次数

如何通过包含点的键访问groovy中的地图值?

我有这样的地图:

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'属性?

groovy map

5
推荐指数
1
解决办法
4078
查看次数