我有一个简单的Spring Boot应用程序,可以提供静态内容。我有一个索引。html页面和/src/main/resources/public中的一些js/css。我有一个简单的控制器,如下所示:
@Controller
public class PublicController {
@RequestMapping(value="/", method=RequestMethod.GET)
public String index() {
return "index";
}
}
这是意料之中的事。我运行curlhttp://localhost:8080/
,它提供了我的html。
现在,我想修改控制器以获取路径变量:
// ...
@RequestMapping(value="/{word}", method=RequestMapping.GET)
public String index(@PathVariable("word") String word) {
return "index";
}
但是现在我得到了一个500,有一个很长的“圆形视图路径”例外。
我假设现在的情况是视图解析器看到我的控制器可以处理“/索引”,并意识到这不会有好的结果。
是否可以告诉视图解析器赋予静态资源优先级?
当您使用Thymeleaf
并声明一个thymeleafviewsolver
和一个带有特定前缀和后缀的ServletContextTemplateResolver
时,它以不同的方式构建视图
,给它一个类似
WEB-INF/static/index.html
ServletContextResourceResolver
templateInputStream = resourceResolver.getResourceAsStream(templateProcessingParameters, resourceName);
最终
return servletContext.getResourceAsStream(resourceName);
这将获取一个相对于
ServletContext
路径的资源。然后,它可以使用TemplateEngine
来生成超文本标记语言。这里不可能发生无尽的循环。
我必须写一个使用循环的程序,计算a和b之间所有奇数的和(包括),其中a和b是输入。 我做了这个(如下),它工作得很好,但我注意到它有一个问题:当我输入一个较大的数字,然后输入一个较小的数字时,它返回0,但当我首先输入一个较小的数字时,它工作得很好。有什么快速的解决办法吗?:)
我试图用Spring和Thymeleaf显示一个超文本标记语言文件,但是当我从浏览器点击控制器时,我得到如下所示的错误: 下面是我的控制器代码。。 这是我的application.properties文件: 这是我的pom.xml文件: 以下是主要的Spring Boot类: 我试图显示的文件是一个helloworld.html文件,这是路径src/main/资源/模板/helloworld.ht
我需要侦听多个队列(存在于同一队列管理器中)。我有用于侦听单个队列的可用Spring Boot应用程序代码。但是,有没有任何方法可以从单个Spring Boot应用程序连接到多个队列? 还有,是否可以在运行时将侦听器从一个队列切换到另一个队列? 我有从单个队列读取的代码,如下所示:
我试图从spring主页模拟RESTful Web服务”https://spring.io/guides/gs/rest-service/". Gradle编译工作正常,但是当我运行Spring Boot时,我得到了下面的错误,我不知道是什么原因。我是Spring新手,有人能帮我吗? 我的配置详细信息包括: Windows 7 Intellij Idea 13.1.3 Java-8 Gradle-
因此,我完成了以下步骤: > 然后提示我输入密码和其他各种信息。我像这样完成了: 在应用程序中添加了以下行。yml文件来自src/main/resources: 已启动Spring Boot应用程序。出现此异常: 其主要思想是PKCS12提供程序不存在。 有什么想法吗? 也许使用不同的提供商?如果答案是肯定的,我应该使用哪个提供商?
ServletException:循环视图路径[home]:将再次分派回当前处理程序URL[/home]。检查您的视图解析器设置!(提示:这可能是由于默认视图名称生成而导致的未指定视图的结果。)在org.springframework.web.servlet.view.internalResourceView.prepareforrendering(internalResourceView.jav