小编Rob*_*nch的帖子

是否可以在没有Redis的情况下使用Spring Boot会话?

查看Spring Boot文档,我只找到了使用Redis会话的示例,是否可以在没有 Redis的情况下使用它?

spring spring-boot spring-session

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

自定义UnmodifiableSetMixin在Jackson 2.7+中失败

我希望能够在UnmodifiableSet启用默认类型的情况下反序列化.为此,我创建了UnmodifiableSetMixin如下所示:

注意:您可以在https://github.com/rwinch/jackson-unmodifiableset-mixin找到包含所有源代码的最小项目来重现此问题

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonTypeInfo;

import java.util.Set;

@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.PROPERTY)
public abstract class UnmodifiableSetMixin {

    @JsonCreator
    public UnmodifiableSetMixin(Set<?> s) {}
}
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用它来反序列化一个空集.

public class UnmodifiableSetMixinTest {
    static final String EXPECTED_JSON = "[\"java.util.Collections$UnmodifiableSet\",[]]";

    ObjectMapper mapper;

    @Before
    public void setup() {
        mapper = new ObjectMapper();
        mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY);
        mapper.addMixIn(Collections.unmodifiableSet(Collections.<String>emptySet()).getClass(), UnmodifiableSetMixin.class);
    }

    @Test
    @SuppressWarnings("unchecked")
    public void read() throws Exception {
        Set<String> foo = mapper.readValue(EXPECTED_JSON, Set.class);
        assertThat(foo).isEmpty();
    }
}
Run Code Online (Sandbox Code Playgroud)

测试通过了Jackson 2.6,但是使用了具有以下堆栈跟踪的Jackson 2.7+失败了:

java.lang.IllegalStateException: No …

java jackson jackson2

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

使用select2 4.0.3添加所有匹配项

我想让用户在使用select2时轻松选择所有匹配项.

现有守则

我目前使用select2 4.0.3和jquery 1.11有以下代码.

<select class="js-example-basic-multiple" multiple="multiple">
  <option value="AL">Alabama</option>
  <option value="AK">Alaska</option>
  <option value="AZ">Arizona</option>
  <option value="WY">Wyoming</option>
</select>
Run Code Online (Sandbox Code Playgroud)
$(".js-example-basic-multiple").select2();
Run Code Online (Sandbox Code Playgroud)

一个完整的代码https://jsfiddle.net/rwinch/t7112qcc/5/

我渴望的行为

有人可以帮我修改上面的代码,以便用户轻松选择所有匹配项.例如,如果屏幕看起来像:

在此输入图像描述

然后用户按CTRL + A然后输入,结果是:

在此输入图像描述

javascript jquery select2

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

如何在 Thymeleaf 3 中向片段添加附加内容

我想使用Thymeleaf 3 布局向片段添加其他内容,但不知道如何操作。例如,我想要一个名为layout如下的片段:

<head th:fragment="head(title)">
  <title th:include="${title}">My App: </title>
</head>
Run Code Online (Sandbox Code Playgroud)

然后有一个使用上面片段的模板:

<head th:include="layout :: head(title=~{::title})">
    <title>Please Login</title>
</head>
Run Code Online (Sandbox Code Playgroud)

内容呈现如下:

<head>
    <title>Please Login</title>
</head>
Run Code Online (Sandbox Code Playgroud)

但是,我想修改模板,使其呈现如下所示并放置My App:layout模板中(我不想复制它)。

<head>
    <title>My App: Please Login</title>
</head>
Run Code Online (Sandbox Code Playgroud)

我可以使用以下命令让它工作:

<head th:fragment="head(title)">
  <title th:include="${title}">My App: <th:block th:include="${title}"></th:block></title>
</head>
Run Code Online (Sandbox Code Playgroud)

然而,Thymeleaf 不鼓励使用th:include. 来自参考

th:insert 和 th:replace (以及 th:include,从 3.0 开始不推荐)有什么区别?

有人可以告诉我如何修复我的模板,以便它使用最佳实践呈现如上所示(正如提到的参考暗示这意味着不使用th:include)?

java thymeleaf

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