小编kms*_*333的帖子

Java循环在循环中执行余数操作会阻塞所有其他线程

以下代码片段执行两个线程,一个是每秒记录一次的简单计时器,第二个是执行余数操作的无限循环:

public class TestBlockingThread {
    private static final Logger LOGGER = LoggerFactory.getLogger(TestBlockingThread.class);

    public static final void main(String[] args) throws InterruptedException {
        Runnable task = () -> {
            int i = 0;
            while (true) {
                i++;
                if (i != 0) {
                    boolean b = 1 % i == 0;
                }
            }
        };

        new Thread(new LogTimer()).start();
        Thread.sleep(2000);
        new Thread(task).start();
    }

    public static class LogTimer implements Runnable {
        @Override
        public void run() {
            while (true) {
                long start = System.currentTimeMillis();
                try {
                    Thread.sleep(1000); …
Run Code Online (Sandbox Code Playgroud)

java multithreading

122
推荐指数
4
解决办法
7954
查看次数

Java - 如何加载同一个类的不同版本?

我已经阅读了很多关于Java类加载器的内容,但到目前为止我还没有找到这个简单问题的答案:

我在jars v1.jarv2.jar中有两个版本的com.abc.Hello.class.我想在我的应用程序中使用它们.这样做最简单的方法是什么?

我不希望那么简单,但沿着这些方向的东西会很棒:

Classloader myClassLoader = [magic that includes v1.jar and ignores v2.jar]
Hello hello = myclassLoader.load[com.abc.Hello]
Run Code Online (Sandbox Code Playgroud)

而在另一个班级:

Classloader myClassLoader = [magic that includes v2.jar and ignores v1.jar]
Hello hello = myclassLoader.load[com.abc.Hello]
Run Code Online (Sandbox Code Playgroud)

我想避免使用OSGi.

java jvm class classloader

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

与Java 11兼容的最低Spring版本

我需要很快将应用程序升级到Java 11,我想知道与Java 11兼容的最小Spring版本是什么.

我目前正在使用Java 8和Spring 4.2.7.

java spring java-8 java-11

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

在Eclipse Helios中安装ShellEd插件时遇到问题

当我尝试为Eclipse安装ShellED插件时:

无法完成安装,因为找不到一个或多个必需的项目.正在安装的软件:ShellEd 2.0.0.201007201532-1--773533H735D97(net.sourceforge.shelled.feature.group 2.0.0.201007201532-1--773533H735D97)缺少要求:ShellEd Core 0.0.0.201007201532(net.sourceforge.shelled.core 0.0. 0.201007201532)需要'bundle org.eclipse.dltk.core [2.0.0,3.0.0)'但无法找到它无法满足依赖性:来自:ShellEd 2.0.0.201007201532-1--773533H735D97(net.sourceforge.shelled. feature.group 2.0.0.201007201532-1--773533H735D97)收件人:net.sourceforge.shelled.core [0.0.0.201007201532]

无法安装org.eclipse.dltk.core?你知道在哪里找到它吗?

eclipse shell eclipse-plugin

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

用Java重构练习

我刚刚阅读了以下论文,发现它非常有用:http: //www.objectmentor.com/resources/articles/Clean_Code_Args.pdf

我正在寻找类似的论文/书籍/教程/等.提供重构和/或更正类设计的逐步练习.我读过福勒的"重构",但我一直在寻找更多实质性的例子.

java refactoring code-cleanup

7
推荐指数
1
解决办法
7035
查看次数

替换GIT中一个目录的内容

想象一下,我有一个目录Dir1和Dir2的存储库,我在branchA.

想象一下,我想摆脱Dir2的内容,并在主分支中用Dir2替换它们,同时保留Dir1的内容.

我不希望这很简单,但理想情况是:

cd Dir2
git [magic that replaces current dir with the contents of master branch]
Run Code Online (Sandbox Code Playgroud)

git

7
推荐指数
1
解决办法
4196
查看次数

如何取消正在进行的Spring Flux?

我正在使用spring flux向服务发送并行请求,这是非常简化的版本:

Flux.fromIterable(customers)
  .flatMap { customer ->
     client.call(customer)
  } ...
Run Code Online (Sandbox Code Playgroud)

我想知道如何取消这种通量,就像在某种程度上获取对通量的引用并告诉它关闭一样.

spring reactive-programming project-reactor spring-webflux

5
推荐指数
2
解决办法
2933
查看次数

如何等待Spring 5 WebClient完成所有请求?

我有一个简单的Java程序,它使用Spring WebClient发送多个请求.每个都返回一个单声道,我使用response.subscribe()来检查结果.

但是,我的主要执行线程在处理所有请求之前完成,除非我添加一个长的Thread.sleep().

使用CompletableFutures,您可以使用:CompletableFuture.allOf(期货).join();

有没有办法等待所有Mono完成?

spring project-reactor spring-webflux

4
推荐指数
1
解决办法
5032
查看次数

无论DAG如何触发,如何获取Airflow之前的执行日期?

当我手动触发DAG时,prev_execution_date和execution_date是相同的。

echo_exec_date = BashOperator(
    task_id='bash_script',
    bash_command='echo "prev_exec_date={{ prev_execution_date }} execution_date={{ execution_date }}"',
    dag=dag)
Run Code Online (Sandbox Code Playgroud)

结果是:

prev_exec_date=2022-06-29T08:50:37.506898+00:00 execution_date=2022-06-29T08:50:37.506898+00:00
Run Code Online (Sandbox Code Playgroud)

如果 DAG 由调度程序自动触发,则它们是不同的。

我希望prev_execution_date无论手动还是自动触发它。

airflow

3
推荐指数
1
解决办法
2336
查看次数

Eclipse - 动态Web项目没有获取jsp或

我在服务器上使用Run As - > Run,在本地tomcat实例上运行我的web项目.

问题是,当我对JSP和其他项目组件进行更改时,有时Eclipse会选择此更改,有时则不会.这似乎有点随意......

eclipse jsp

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

Spring WebFlux没有流媒体响应

我期待这段代码将事件传递给客户端(代码在Kotlin中,但Java非常相似)

@RestController
object CustomerController {
    @GetMapping("/load", produces = arrayOf("application/stream+json"))
    fun load(): Flux<String> {
        var flux = Flux.fromIterable(ResultIterable())
        flux.subscribe({println(it)})
        return flux
    }
}
Run Code Online (Sandbox Code Playgroud)

ResultIterable是一个可定期生成字符串的iterable.基本上是无限流.

我没有看到任何输出,它永远挂起.

我确实看到了定期打印的字符串(println(it)).

我使用以下卷曲:

curl -X GET   http://localhost:8080/load   -H 'accept: application/stream+json'   -H 'cache-control: no-cache'   -H 'content-type: application/stream+json'
Run Code Online (Sandbox Code Playgroud)

spring flux project-reactor reactive spring-webflux

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

Hibernate中级/高级教程

假设我对Hibernate有相当好的理解,但希望对它有更深入的了解,即:

  • hibernate缓存如何工作

  • 对象生命周期

  • 与应用容器等一起使用

你能推荐一个提供这些信息的简短(ish)教程吗?

java orm persistence hibernate

0
推荐指数
1
解决办法
4069
查看次数