我有一个具有以下文件夹结构的项目:
所有项目文件都在base_fldr文件夹中.另外我在base_fldr中有一些名为sub_fldr1和sub_fldr2的文件夹.这些子文件夹还包含一些文件.
如果我修改base_fldr或base_fldr\sub_fldr \中的任何文件,那么git status会将它们显示为已修改.另外,如果我向base_fldr添加一个新文件,git status会将其显示为未跟踪文件.
我的问题是如果我在base_fldr\sub_fldr \中添加一个新文件,那么git status不会将文件显示为未跟踪.它甚至不会提供有关该文件的任何信息.
该文件或其扩展名不在我的.gitignore列表中.我也尝试了git add sub_fldr\file_name,但既没有给出错误,也没有将文件添加到索引中.
知道这里发生了什么吗?谢谢!
我使用spring boot webflux
+ project reactor
+lettuce
连接和非阻塞方式查询Redis的。我已经配置了ReactiveRedisTemplate
带LettuceConnectionFactory
。spring 文档指出,使用管道的唯一方法ReactiveRedisTemplate
是使用该execute(<RedisCallback>)
方法。在 non-reactive 中RedisTemplate
,我看到有一种executePipelined(<RedisCallback>)
方法可以在执行回调之前打开/关闭管道。但是在ReactiveRedisTemplate.execute
方法的情况下,它使用 aLettuceReactiveRedisConnection
并且既Spring ReactiveRedisConnection
没有Lettuce
也没有没有对管道的引用。
所以我的问题是,是否可以在使用Spring ReactiveRedisTemplate
+时流水线化您的命令ReactiveLettuceConnection
?
我也注意到,使用ReactiveRedisTemplate.execute
了RedisCallback
具有多个Redis命令的执行速度比打电话只是单独的命令慢。
带有 ReactiveRedisTemplate 的管道示例代码:
reactiveRedisTemplate.execute(connection -> keys.flatMap(key ->
connection.hashCommands()
.hGetAll(ByteBuffer.wrap(key.getBytes()))))
.map(Map.Entry::getValue)
.map(ByteUtils::getBytes)
.map(b -> {
try {
return mapper.readValue(b, Value.class);
} catch (IOException e1) {
return null;
}
})
.collectList();
Run Code Online (Sandbox Code Playgroud)
没有管道的代码:
keys.flatMap(key -> reactiveRedisTemplate.opsForHash().entries(key))
.map(Map.Entry::getValue) …
Run Code Online (Sandbox Code Playgroud) reactive-programming redis lettuce spring-data-redis project-reactor
我修改了我的分支中的一些文件并做了一个
git add --all
Run Code Online (Sandbox Code Playgroud)
但是这增加了一些我不打算为提交添加的文件.
所以我做了一个
git reset --soft HEAD~2 (instead of doing git reset HEAD)
Run Code Online (Sandbox Code Playgroud)
但之前的提交是由其他人提出的,它导致许多文件处于修改/添加/删除状态.有没有办法回到我看到的唯一变化是由我添加/修改的文件的阶段?既然我没有做出实际的提交,有没有办法让我的头回到主人而不会吹走我的变化?git pull导致合并冲突,因为我实际上没有提交我的更改.
谢谢!
我有这样的属性文件:
my.properties file:
app.One.id=1
app.One.val=60
app.Two.id=5
app.Two.val=75
Run Code Online (Sandbox Code Playgroud)
我在Spring配置文件中将这些值读入我的bean中的map属性,如下所示:
spring-config.xml:
<bean id="myBean" class="myClass" scope="singleton">
<property name="myMap">
<map>
<entry key="${app.One.id}" value="${app.One.val}"/>
<entry key="${app.Two.id}" value="${app.Two.val}"/>
</map>
</property>
</bean>
Run Code Online (Sandbox Code Playgroud)
这样,如果我向属性文件添加一个新的id/val,我必须在config xml中添加一行,以便在myMap中拥有新的id/val.
我的问题是,有没有办法在spring配置文件中指定key-val对,以便xml中定义的key-val数量可以计算出属性文件中的项目并创建一个map.基本上我想在不同的环境中使用这个xml文件,我们在属性文件中使用不同数量的键值项.我只是不想在每个环境中更改xml文件以读取所有这些值.
如果您需要任何其他细节,请告诉我.任何想法/意见表示赞赏.谢谢!
Project Reactor 中的log()
方法Flux.class
提到,如果slf4j
可用,它将被使用。如果你使用像logback
slf4j这样的记录器实现,它们默认是阻塞的,尤其是写入文件/磁盘部分。Reactor 文档没有提及任何关于此的内容。有没有人对此有想法/经验?我认为一种选择是将 logback 设置为异步。还有其他选择吗?谢谢!
java logback reactive-programming project-reactor spring-webflux
我的内存中有一些UTF-8字符串(这是更大系统的一部分),基本上是欧洲国家/地区的地名。我正在尝试将它们写入文本文件。我在Linux机器(Fedora)上。因此,当我将这些名称字符串(char指针)写入文件时,文件将以扩展的ASCII格式保存。
现在,我将此文件复制到Windows计算机,在其中我需要将这些名称加载到mySQL DB。当我在notepad ++上打开文本文件时,它再次将编码默认为ANSI。但是我可以选择对UTF-8进行编码,除以下3个字符外,几乎所有字符看起来都与预期的一样:-?,?和?。它们在文本中显示为&#336,&#337和&#369。
是否有人对可能出什么问题有任何想法。我知道这些不是扩展ASCII符号的一部分。但是我将其写入文件的方式类似于:
// create out file stream
std::ofstream fs("sample.txt");
// loop through utf-8 formatted string list
if(fs.is_open()) {
for(int i = 0; i < num_strs; i++) {
fs << str_name; // unsigned char pointer representing name in utf-8 format
fs << "\n";
}
}
fs.close();
Run Code Online (Sandbox Code Playgroud)
即使使用ú和ö和ß这样的字符,一切也看起来不错。问题仅在于上述三个字符。有什么想法/建议/评论吗?谢谢!
例如,字符串“Gyömr?” 显示为“Gyömr&#369”。