我试图在基于Spring Boot 2 / Spring Framework 5的Web应用程序中使用EhCache 3.5缓存功能。
我添加了EHCache依赖项:
<dependency>
<groupId>org.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>3.5.0</version>
</dependency>
<dependency>
<groupId>javax.cache</groupId>
<artifactId>cache-api</artifactId>
<version>1.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
然后在src / main / resources文件夹中创建ehcache.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="true"
monitoring="autodetect" dynamicConfig="true">
<cache name="orders" maxElementsInMemory="100"
eternal="false" overflowToDisk="false"
memoryStoreEvictionPolicy="LFU" copyOnRead="true"
copyOnWrite="true" />
</ehcache>
Run Code Online (Sandbox Code Playgroud)
Spring 5参考指南没有提到EHCache的使用,Spring 4参考指南指出:“ Ehcache 3.x完全符合JSR-107,并且不需要专用支持。”
所以我创建了控制器OrderController和REST端点:
@Cacheable("orders")
@GetMapping(path = "/{id}")
public Order findById(@PathVariable int id) {
return orderRepository.findById(id);
}
Run Code Online (Sandbox Code Playgroud)
Spring Boot配置:
@SpringBootApplication
@EnableCaching
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
} …Run Code Online (Sandbox Code Playgroud) 我在最新的 Docker CLI 文档中注意到 Docker CLI 命令列表已经扩展。如果我之前使用docker exec在容器内启动可执行文件,我现在也可以使用docker container exec命令。
docker 容器运行命令类似于docker run等。
那么现在哪些命令更可取?旧语法还是新的 docker 容器语法?不幸的是,我在文档中找不到任何解释。
另外 docker container run 和 docker container create 命令有什么区别?在 docker container stop 和 docker container kill 之间?描述和语法非常相似。
谢谢。
我们有 Spring Boot 应用程序(版本 1.5.8)。我们尝试检查它是否与即将发布的 Spring Boot 2 版本(目前是 M5)兼容。
spring-boot-autoconfigure 依赖项中缺少两个类(UserInfoTokenServices 和 ResourceServerProperties)。
有没有替代品?
谢谢
JPA 3.0 于 2020 年 11 月发布,我猜大多数 JPA 提供商(Hibernate、EclipseLink、OpenJPA)仍然支持 JPA 2.2。是否有迁移到新版本的计划?这将不是那么简单,因为例如,顶级包已更改(javax.persistence -> jakarta.persistence)。
我有以下源代码示例,它在Spring 3.2.6中有效,但在4.0.1中不起作用
public interface RunTest<T extends Number> {
void run(T number);
}
public class BasicRunTest implements RunTest<Integer>{
@Override
public void run(Integer number) {
}
}
@Component
public class BeanTest {
@Autowired
private RunTest<Number> runTest;
}
Run Code Online (Sandbox Code Playgroud)
如果我运行应用程序,我会得到异常:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.test.RunTest] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
Run Code Online (Sandbox Code Playgroud) 两周前,Java EE 8发布了.并宣布新的Tomcat 9支持它.Jetty是否有计划支持Java EE8?我在文档或Jetty站点上找不到任何相关信息.
谢谢.