小编jan*_*ith的帖子

如何在Spring Boot中添加过滤器类?

我想知道,如果Filter在Spring Boot中有一个类(用于Web应用程序)的注释?也许@Filter吧?

我想在我的项目中添加自定义过滤器.

Spring Boot Reference Guide提到了 FilterRegistrationBean,但我不知道如何使用它.

java configuration servlet-filters spring-boot

208
推荐指数
12
解决办法
24万
查看次数

如何运行并发单元测试?

如何使用junit运行并发测试?

假设我有一堂课

public class MessageBoard
{
    public synchronized void postMessage(String message)
    {
        ....
    }

    public void updateMessage(Long id, String message)
    {
        ....
    }
}
Run Code Online (Sandbox Code Playgroud)

我想同时测试对这个postMessage的多次访问.有什么建议吗?我希望针对我的所有setter函数(或任何涉及create/update/delete操作的方法)运行这种并发性测试.

concurrency junit unit-testing

44
推荐指数
5
解决办法
3万
查看次数

我们可以在另一个css类中包含常见的css类吗?

我是CSS新手.我只是想知道,是否有可能将一个共同的类包含在另一个类中?

例如,

.center {align: center};
.content { include .center here};
Run Code Online (Sandbox Code Playgroud)

我遇到了css框架 - 蓝图.我们需要将位置信息放入HTML中,例如

<div class="span-4"><div class="span-24 last">
Run Code Online (Sandbox Code Playgroud)

因此,我们将定位属性放在html中,而不是css中.如果我们改变布局,我们需要更改html而不是css.

这就是我问这个问题的原因.如果我可以将.span-4包含在我自己的CSS中,我将不必在我的html标记中指定它.

css reusability

42
推荐指数
3
解决办法
4万
查看次数

方法org.postgresql.jdbc4.Jdbc4Connection.isValid(int)尚未实现

我正在尝试使用postgres 9.1配置dbcp2

当我运行我的应用程序时,它会抛出异常:

Exception in thread "main" org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: Cannot create PoolableConnectionFactory (Method org.postgresql.jdbc4.Jdbc4Connection.isValid(int) is not yet implemented.)
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
    at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:575)
    at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:639)
    at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:664)
    at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:704)
    at org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate.queryForObject(NamedParameterJdbcTemplate.java:195)
    at com.springinpractice.ch02.service.impl.ContactServiceImpl.getContact(ContactServiceImpl.java:64)
    at com.springinpractice.ch02.ConsoleApp.main(ConsoleApp.java:16)
Caused by: java.sql.SQLException: Cannot create PoolableConnectionFactory (Method org.postgresql.jdbc4.Jdbc4Connection.isValid(int) is not yet implemented.)
    at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:2152)
    at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:1903)
    at org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:1413)
    at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
    ... 7 more
Caused by: org.postgresql.util.PSQLException: Method org.postgresql.jdbc4.Jdbc4Connection.isValid(int) is not yet implemented.
    at org.postgresql.Driver.notImplemented(Driver.java:753)
    at org.postgresql.jdbc4.AbstractJdbc4Connection.isValid(AbstractJdbc4Connection.java:109) …
Run Code Online (Sandbox Code Playgroud)

postgresql jdbc apache-commons-dbcp

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

如何找出renameTo()失败的原因?

我正在使用WinXP.我用java生成一个文件列表.该文件最初将创建为abc.txt.temp,完成生成后,它将重命名为abc.txt.

但是,当我生成文件时,某些文件无法重命名.它是随机发生的.

反正有没有找出失败的原因?

int maxRetries = 60;
logger.debug("retry");
while (maxRetries-- > 0)
{
    if (isSuccess = file.renameTo(file2))
    {
        break;
    }
    try
    {
        logger.debug("retry " + maxRetries);
        Thread.sleep(1000);
    }
    catch (InterruptedException e)
    {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }   
}

//file.renameTo(file2);
Thread.currentThread().getThreadGroup().getParent().list();
Run Code Online (Sandbox Code Playgroud)

结果如下:

[DEBUG][2009-08-25 08:57:52,386] - retry 1
[DEBUG][2009-08-25 08:57:53,386] - retry 0
java.lang.ThreadGroup[name=system,maxpri=10]
    Thread[Reference Handler,10,system]
    Thread[Finalizer,8,system]
    Thread[Signal Dispatcher,9,system]
    Thread[Attach Listener,5,system]
    java.lang.ThreadGroup[name=main,maxpri=10]
        Thread[main,5,main]
        Thread[log4j mail appender,5,main]
[DEBUG][2009-08-25 08:57:54,386] - isSuccess:false
Run Code Online (Sandbox Code Playgroud)

我想知道一种系统的方法来找出原因.谢谢.

java file-io file file-rename

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

如何为电子邮件发送服务设计REST API?

如何使用POST,GET,PUT,DELETE为电子邮件发送服务设计REST API?

send: POST - /email
retrieve: GET - /email/{id}
delete: DELETE - /email/{id}
Run Code Online (Sandbox Code Playgroud)

它是设计REST API的正确方法吗?我觉得将POST映射到动作"发送"是不直观的.

rest

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

如何将实例变量传递给Quartz作业?

我想知道如何在Quartz中外部传递一个实例变量?

下面是我想写的伪代码.如何将externalInstance传递给这个Job?

public class SimpleJob implements Job {
        @Override
        public void execute(JobExecutionContext context)
                throws JobExecutionException {

            float avg = externalInstance.calculateAvg();
        }
}
Run Code Online (Sandbox Code Playgroud)

java quartz-scheduler

25
推荐指数
2
解决办法
4万
查看次数

如何系统地移交项目?

不久前,我们有一个项目从岸上团队移交给我们的团队(离岸).但是,我们在移交过程中遇到了困难.

  1. 在他们的设计演练过程中我们想不出任何问题,因为我们被大量的信息所淹没.我们想问,但我们不知道该问什么.由于他们对我们毫无疑问,管理层认为移交过程已成功完成.

  2. 在参加移交演示之前,我们曾尝试浏览公司维基页面上的所有文档,但文档太多,我们甚至不知道从哪里开始.

我想知道,我们可以遵循任何规则或最佳实践,以确保成功的项目移交,无论是我们还是我们.

谢谢.

project-management project

19
推荐指数
4
解决办法
3万
查看次数

从大表中检索所有记录时如何避免OOM(Out of memory)错误?

我有一个任务是将一个巨大的表转换为自定义XML文件.我将使用Java来完成这项工作.

如果我只是发出"SELECT*FROM customer",它可能会返回最终导致OOM的大量数据.我想知道,有没有办法可以立即处理记录,并在sql检索过程中从记忆中删除记录?

---于2009年7月13日编辑

让我详细说明我的问题.我有1个db服务器和1个应用服务器.当我在应用程序中发出选择查询时,数据将从数据库服务器传输到应用程序服务器.

我相信(如果我错了,请纠正我)ResultSet需要等到接收到查询中的所有记录.即使我们将获取大小设置为4,对于1000记录表,我们仍然最终在应用服务器的堆内存中有1000条记录,这是正确的吗?获取大小仅影响从/到数据库服务器的往返次数.

我的问题是,如何在它到达app服务器后立即开始处理该4个(或任何数字)记录,并将其丢弃以释放应用服务器中的内存?

java sql large-data-volumes out-of-memory

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

面向对象的对象之间交互的样式编程

我正在尝试以面向对象的方式编写程序.编码两个对象之间的交互时,我有一些困惑.

情景:人(约翰)给人(贝蒂)5美元.

可能的解决方案(伪代码):

A)John.pays(Betty,5);
B)Betty.receives(John,5);
C)Bank.transfer(John,Betty,5);
D)
开始交易:
John.decrease(5);
Betty.increase(5);
结束交易:
E)Service.transferMoney(John,Betty,5); // Service是一个通用服务对象

请告诉我哪一个是以OOP方式编码的更合适的方式,以及它背后的原因.我正在寻找一些指导,如"告诉,不要问"规则.

谢谢.

language-agnostic oop

13
推荐指数
2
解决办法
1979
查看次数