小编Omr*_*Hoo的帖子

Intellij运行配置Spring Boot与Maven问题

我正在尝试使用Intellij IDEA运行我的Spring Boot项目.这个项目是Spring MVC类型,意味着它在路径中有JSP文件main/webapp/WEB-INF/jsp.

application.properties有这些设置:

spring.view.prefix=/WEB-INF/jsp/
spring.view.suffix=.jsp
Run Code Online (Sandbox Code Playgroud)

当我在Intellij中运行项目作为"Spring Boot Run Configuration"时,服务器无法识别JSP文件的路径.这是我得到的消息:

在此输入图像描述 ž

如果我使用命令"Maven Run Configuration"运行项目,spring-boot:run一切正常.

我不知道为什么会这样.每个运行配置的项目代码和设置都相同.

您可以尝试这个项目(而不是我的项目)来理解我的意思https://github.com/mariuszs/spring-boot-web-jsp-example.

我的项目也是如此.我应该注意,当项目使用Spring Boot Run Configuration运行时,我确实在控制台中看到控制器已正确映射.

2017-06-28 08:29:13.906  INFO 10308 --- [           main] o.s.w.s.h.SimpleUrlHandlerMapping        : Mapped URL path [/login] onto handler of type [class org.springframework.web.servlet.mvc.ParameterizableViewController]

2017-06-28 08:29:13.835  INFO 10308 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/login],methods=[GET]}" onto public java.lang.String com.intuit.mintbills.controllers.generic.LoginController.getLoginPage()
Run Code Online (Sandbox Code Playgroud)

java jsp intellij-idea maven spring-boot

6
推荐指数
2
解决办法
1676
查看次数

为什么Logback是Spring Boot的默认日志记录框架?

我试图搜索Spring文档+互联网上的文章+ Stackoverflow的问题,但没有找到任何有关它的信息。对我而言,Log4J2的配置(尤其是模式)更加简单,个人化。

另外,根据这些文章,我发现Log4J2比Logback具有更好的性能:

https://stackify.com/compare-java-logging-frameworks

https://blog.overops.com/the-logging-olympics-a-race-between-todays-top-5-logging-frameworks

log4j,slf4j和logback有什么区别?

https://www.sitepoint.com/which-java-logging-framework-has-the-best-performance/

如果我们要考虑异步记录仪,性能更高方便赞成Log4J2根据阿帕奇- https://logging.apache.org/log4j/2.x/performance.html是的,我知道,这是他们的工作使它们的框架看起来更好,但我确实相信它们是可靠的。

我的假设是Pivotal选择Logback作为默认值,因为Log4J2是在他们发布Spring-Boot 1.0版本之后的某个时候发布的。

谁能对此有所启发?我的假设正确吗?

java logging logback log4j2 spring-boot

6
推荐指数
1
解决办法
469
查看次数

通过Spring Boot在JSP中使用自定义标签文件

我有一个Spring Boot项目,正在尝试在JSP文件中进行以下调用:

<%@ taglib prefix="tagz" tagdir="/WEB-INF/tags" %>

<tagz:utils tabs="true"/>
Run Code Online (Sandbox Code Playgroud)

标签文件夹位于-

\ src \ main \ resources \ WEB-INF \ tags

JSP文件文件夹位于-

\ src \ main \ resources \ META-INF \ resources \ WEB-INF \ jsp

我还定义了application.properties文件以包括:

spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
Run Code Online (Sandbox Code Playgroud)

如果我尝试将标签文件夹放在除Intellij之外的任何其他类路径中,则会显示错误,该错误无法在编辑器中识别该调用。

如果删除taglib调用,将正确显示JSP页面。

我的pom.xml当然具有以下依赖关系:

 <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <version>1.5.4.RELEASE</version>
    <exclusions>
        <exclusion>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <groupId>org.springframework.boot</groupId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <version>8.5.15</version>
</dependency>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>3.0-alpha-1</version>
</dependency>
<dependency>
   <groupId>javax.servlet</groupId>
   <artifactId>jstl</artifactId>
   <version>1.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

白标错误页面

此应用程序没有针对/ error的显式映射,因此您将其视为后备。

Sun Jun 25 16:12:47 IDT 2017发生意外错误(类型=内部服务器错误,状态= 500)。/WEB-INF/jsp/main.jsp(行:[11],列:[4])在导入了前缀[tagz]的标签库中未定义标签[utils]

我认为这与Spring Boot中静态文件的配置有关,但是我尝试添加spring.resources.static- …

java jsp jsp-tags spring-mvc spring-boot

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