小编Rum*_*mid的帖子

使用IntelliJ来区分两个任意文件

我真的很喜欢IntelliJ diff工具.我想知道是否可以使用此工具来区分两个任意文件.即不在IntelliJ项目中的文件.只需在文件系统中选择两个文件并区分它们?如果我想要区分两个字符串呢?在我的文本编辑器中,我只创建了两个新文档,粘贴文本并对其进行区分,然后在完成后不保存文件.这可能吗?

谢谢

diff intellij-idea

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

设计模式为Web服务建模请求和响应对象

我有大约7个REST Web服务要实现.其中一些Web服务具有标准(相同)响应,而一些响应不同.

对这些Web服务的请求是不同的,但是一些请求和一些响应具有相同的底层数据对象.

我不确定是否必须为每个Web服务构建单独的请求/响应类或重用标准服务.我想知道是否有一个设计模式来为这些Web服务建模请求对象和响应对象.

好吧,说帐户和书籍是我的网络服务将要处理的两个休息资源.

class Account {
    String username;
    String id;
}


class Book {
    String title;
    String isbn;
}
Run Code Online (Sandbox Code Playgroud)

所以我的网络服务看起来像这样:

MYAPI/CreateAccountandBook
MYAPI/Account/Create
MYAPI/Book/Create
MYAPI/Book/Update/{isbn}
MYAPI/Account/Update/{id}
MYAPI/Account/getInfo/{id} 
Run Code Online (Sandbox Code Playgroud)

等等.

现在CreateAccountandBook请求将获取有效负载中的帐户对象和书籍列表.此外,响应对象MYAPI/Account/getInfo/{id}还有一个帐户对象和与该帐户关联的书籍列表.但响应对象还包括一个statusCodeDescription.

现在我想以最好的方式为这些请求和响应对象创建类.

好的开始.

我有两个抽象类StandardRequestStandardResponse.

所有请求类都将扩展标准请求类并相应地进行自定义.所有响应类都将扩展标准响应类并相应地进行自定义.

但是这些请求和响应可能彼此不同,但仍然重用相同的实体对象.

例如:

createAccountandBook 请求对象如下所示:

class CreateAccountAndBookRequest {
   Account account;
   List<Book> books;
}
Run Code Online (Sandbox Code Playgroud)

而对getInfoWeb服务的响应是:

class GetInfoResponse {
   Account account;
   List<Book> books;
   String statusCode;
   String description;
}
Run Code Online (Sandbox Code Playgroud)

所以请求和响应类之间存在重叠.我可以为每个Web服务创建两个(req/res)类.但是想知道是否有更好的方法来模拟这些类.

java rest design-patterns web-services jax-rs

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

LogQL 中是否可以将字符串值转换为数字?

我正在关注文档,并且感谢| line_format并且regexReplaceAll我能够从一行中获取一些子字符串。

假设现在我有这些专栏:

line
123
7
123
54
14
Run Code Online (Sandbox Code Playgroud)

有了这个,我想执行一些变换操作、求和或通过分组和求总计进行变换操作。它不起作用,因为我怀疑这些值不是数字,而只是字符串。是否可以将其转换为数字?

我尝试使用unwrap但没有成功:

sum_over_time(
    {service="some"} 
    |="text expression"
    | json
    | line_format `{{ regexReplaceAll "text expression to remove from (\\d+)" .label_id "${1}" | trim }}`
    | unwrap label_id [1m]
)
Run Code Online (Sandbox Code Playgroud)

最终结果是

管道错误:系列的“SampleExtractionErr”:

当我过滤错误时,没有结果。

grafana grafana-loki

9
推荐指数
1
解决办法
4598
查看次数

Firebase 消息“网站已在后台更新”

我有问题。在我的 Service Worker 中收到通知时:

messaging.setBackgroundMessageHandler(function(payload) {
  console.log('[firebase-messaging-sw.js] Received background message ', payload);
  angularClient.postMessage(payload.data);
});
Run Code Online (Sandbox Code Playgroud)

如何防止浏览器显示以下通知:

该网站已在后台更新

我所做的是向我的服务发送一条消息,其中将显示通知。现在它显示两个通知。一个来自我的服务很好,另一个说“网站......”。

service-worker firebase-cloud-messaging

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

使用正则表达式插值的 Grafana Loki 查询用于多项选择变量

在 Grafana Dashboards 设置中,我根据查询(来自 Loki 的 label_values(filename))创建了一个变量 $logfile,以便能够选择多个文件名。这些文件名有时包含点(子扩展名)。

在日志面板的查询中,我尝试插入在正则表达式中选择的值:

{filename=~".*\\/${logfile:regex}\\.log"}
Run Code Online (Sandbox Code Playgroud)

下面描述的正则表达式插值表示特殊字符使用此表示法转义一次: https://grafana.com/docs/grafana/latest/variables/advanced-variable-format-options/

但是选择查询的正则表达式部分需要双反斜杠才能正确转义(因此,当我选择“file1”或“file2”等选项时,它可以工作,但使用“file3.ext”或“file4.ext”时,它惯于)。

如何实现这一目标?

谢谢你,

variables grafana grafana-loki

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

Scala - AbstractSeq 如何减少字节码大小

我正在浏览 scaladocs 并遇到了AbstractSeqclass。他们将其描述为

Explicit instantiation of the Seq trait to reduce class file size in subclasses.

这如何减少子类的文件大小?子类无论如何都会获得所有方法,对吗?有人可以解释这是如何工作的吗

java scala bytecode

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

如何使用Dagger2提供上下文

我正在学习Android,并且正在遵循有关RxJava和Dagger2的Retrofit2的一些指南。现在,我不想处理没有互联网连接的情况。我已经找到了这个答案,这似乎很不错,但是我不知道如何应用。

我有一些NetworkModule,与OkHttpClient提供商。我假设我需要OkHttpClient.Builder使用拦截器进行创建。所以它应该看起来像这样:

@Provides
@Singleton
OkHttpClient provideOkHttpClient(Cache cache) {
    ConnectivityInterceptor ci = new ConnectivityInterceptor(networkObservable()));
    OkHttpClient.Builder.addInterceptor(ci)
    return builder.build();
}

private boolean networkObservable() {
    ConnectivityManager cm =
            (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);

    NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
    return activeNetwork != null && activeNetwork.isConnectedOrConnecting();
}
Run Code Online (Sandbox Code Playgroud)

这是我所没有的Context。我应该朝哪个方向-尝试在那里获取上下文,或者可能我误解了可观察对象的概念?

android rx-java okhttp dagger-2 retrofit2

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