小编Ale*_*ndr的帖子

是否可以在Spring Framework中使用注释设置bean名称?

我有这样的豆:

@Bean
public String myBean(){
    return "My bean";
}
Run Code Online (Sandbox Code Playgroud)

我想要自动装配它:

@Autowired
@Qualifier("myBean")
public void setMyBean(String myBean){
    this.myBean=myBean;
}
Run Code Online (Sandbox Code Playgroud)

我需要这样的东西:

@Bean(name="myCustomBean")
Run Code Online (Sandbox Code Playgroud)

是否可以使用开箱即用的bean自定义名称?如果不可能开箱即可,那么如何创建这样的bean呢?

java spring spring-mvc spring-annotations spring-bean

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

如何使用gradle测试将命令行参数传递给测试?

我正在使用gradle来运行JUnit测试.问题是我需要将参数从命令行传递给测试.我尝试传递系统属性但失败了.

gradle test -Darg1=something
Run Code Online (Sandbox Code Playgroud)

这是我的测试:

public class MyTest {
    @Test
    public void someTest() throws Exception {
        assertEquals(System.getProperty("arg1"), "something");
    }
}
Run Code Online (Sandbox Code Playgroud)

它失败了,因为没有arg1争论.有可能以某种方式传递命令行参数吗?

java junit arguments junit4 gradle

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

Gradle插件在Intellij IDEA(计算任务图)中不起作用?

问题是Intellij IDEA中的gradle插件不适用于我的项目.如果我在命令行中使用"gradle build"它可以很好地工作,但是如果我尝试使用Intellij IDEA中的gradle插件构建项目则不起作用.它在任务"计算任务图"上显示一些错误.它是什么? 在此输入图像描述 为什么它不起作用?

这是控制台输出:

6:21:57 PM: Executing external tasks 'gradle build'...

FAILURE: Build failed with an exception.

* What went wrong:
Task 'gradle' not found in root project 'upload-server'.

* Try:
Run gradle tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 3.899 secs
Task 'gradle' not found in root project 'upload-server'.
6:22:01 PM: External …
Run Code Online (Sandbox Code Playgroud)

intellij-idea gradle gradle-plugin

7
推荐指数
2
解决办法
7401
查看次数

是否可以无缝重定向websockets?

我知道可以通过反向代理(如Nginx,HAproxy等)传递请求,但我需要将请求重定向到同一域后缀中的另一个公共服务器.即wss://example.comwss://ws1.example.com.
这是一个例子: 在此输入图像描述

我需要重定向来自Nginx或Java的请求.是否有可能组织?我是否需要在客户端处理重定向或此代码是否足够?

var socket = new WebSocket("wss://example.com");

socket.onopen = function() {
  alert("Connection established.");
};

socket.onclose = function(event) {
  alert('Connection closed');
};

socket.onmessage = function(event) {
  alert("Data: " + event.data);
};

socket.onerror = function(error) {
  alert("Error " + error.message);
};
Run Code Online (Sandbox Code Playgroud)

javascript nginx websocket

7
推荐指数
2
解决办法
4031
查看次数

我们可以通过使用 FFMPEG 来限制最大 fps 吗?

我想在处理视频时限制最大 fps。
例如:设置限制为每秒 30 帧。
如果我以 24 fps 处理视频,则不会更改 fps,但如果以 60 fps 处理视频,则将 fps 更改为 30。
是否可以仅使用 FFmpeg(带有过滤器或其他东西)来完成?
我认为可以通过使用这样的过滤器来完成:

-filter:v "fps=fps='min($CURRENT_FPS,30)'"
Run Code Online (Sandbox Code Playgroud)

但我不知道是否可以从表达式中获取当前的 fps。

ffmpeg frame-rate video-processing video-encoding

6
推荐指数
0
解决办法
663
查看次数

将块加载到html5视频中

在哪里可以阅读信息并查看将块加载到html5视频中的示例?

场景:
1.用户开始播放大型视频。
2.应下载10-20秒的视频。
3.如果用户观看的是前10秒,则应下载下10秒。因此,如果用户仅观看视频的前9秒,则不会有负载。

如果我们使用这种情况,它将减少服务器负载(在某些情况下)。

例如:
尝试在YouTube上观看视频。他们是这样工作的。尝试加载一半的视频(约3分钟),然后从头开始观看。视频的其他部分直到您到达特定点(在我的情况下,在下载点之前约50秒)才会下载。

我在html5视频中找不到任何缓冲控件。我也找不到在流行的基于html5的视频播放器(如VideoJs,JPlayer)中缓冲的任何控件。

有人知道怎么做吗?

javascript video chunks video-streaming html5-video

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

什么是H.264中的VBV(视频缓冲验证器)?

我无法理解什么是VBV(视频缓冲验证器)以及它与maxrate有什么关系.
当我使用此命令时:

ffmpeg -i input.mp4 -crf 21 -maxrate 750k -bufsize 750k -codec:v:0 libx264 -s 640x360 -r 30 output.mp4
Run Code Online (Sandbox Code Playgroud)

output.mp4视频的比特率约为730 kb/s
但是当我使用此命令时(相同的命令但使用-bufsize 5000k):

ffmpeg -i input.mp4 -crf 21 -maxrate 750k -bufsize 5000k -codec:v:0 libx264 -s 640x360 -r 30 output.mp4
Run Code Online (Sandbox Code Playgroud)

output.mp4视频的比特率超过750kb/s(约800-900 kb/s).
为什么会这样?为什么我们需要bufsize?bufsize有什么作用?

ffmpeg video-processing video-encoding h.264

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

是否可以仅从复杂因子为3的Cassandra集群中的单个节点读取数据?

我知道Cassandra具有不同的读取一致性级别但我没有看到一致性级别,它允许仅通过密钥从一个节点读取数据.我的意思是如果我们有一个复制因子为3的集群,那么我们将在读取时始终询问所有节点.即使我们选择一致性级别,我们也会询问所有节点,但是等待来自任何节点的第一个响应.这就是为什么我们在读取时不仅要加载一个节点而是加载3个(带有协调器节点的4个节点).我认为即使我们设置了更大的复制因子,我们也无法真正提高读取性能.

是否可以仅从单个节点读取?

replication consistency cluster-computing database-replication cassandra

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

什么是更快的传递参数或在Java中使用静态变量?

我必须使用一个永远不会在方法中更改的变量,这个变量将在许多线程中经常使用.哪些变体更有效?
变式1:

public class Test {
    private static int myVar;
    public Test(int myVar){
        this.myVar=myVar;
    }

    public void frequentlyUsedMultiThreadMethod(){
        //read myVar
    }
}
Run Code Online (Sandbox Code Playgroud)

变式2:

public class Test {
    public void frequentlyUsedMultiThreadMethod(int myVar){
        //read myVar
    }
}
Run Code Online (Sandbox Code Playgroud)

变式3:

public class Test {
    private final int myVar;
    public Test(int myVar){
        this.myVar=myVar;
    }

    public void frequentlyUsedMultiThreadMethod(){
        //read myVar
    }
}
Run Code Online (Sandbox Code Playgroud)

java performance static multithreading final

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

如何等待直到在 Java 中的另一个线程中释放锁?

我想弄清楚我们如何才能正确地等待另一个线程中的锁被释放。

我认为代码会更好地解释我的意思:

myLock.lock();
sendSomewhereMyLock(myLock); //creates new threads inside
myLock.waitUntilReleasedByAnotherThread(60L, TimeUnit.SECONDS);
//do something after the lock is released
Run Code Online (Sandbox Code Playgroud)

我认为这tryLock(long time, TimeUnit unit)是我需要的方法,但 Java 文档说该方法将立即执行,因为当前线程获取了锁:

如果锁可用,则此方法立即返回 true 值。如果锁不可用,则当前线程将出于线程调度目的而被禁用并处于休眠状态,直到发生以下三种情况之一:

  • 锁被当前线程获取;或者
  • 其他一些线程中断当前线程,支持中断获取锁;或者
  • 经过指定的等待时间

那我应该用什么?

java multithreading locking reentrantlock

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