首页 文章

spring boot加载jsp为txt?

提问于
浏览
3

我使用spring boot来做一个简单的网页 . 以下是代码:

src/main/java/Application.java

@SpringBootApplication
public class Application
{
    public static void main(String[] args)
    {
        SpringApplication.run(Application.class, args);
    }
}

src/mian/java/Config.java

@Configuration
@EnableWebMvc
public class Config extends WebMvcConfigurerAdapter
{
    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)
    {
        configurer.enable();
    }

    @Bean
    public InternalResourceViewResolver viewResolver()
    {
        InternalResourceViewResolver resolver = new InternalResourceViewResolver();
        resolver.setPrefix("WEB-INF/views/");
        resolver.setSuffix(".jsp");
        return resolver;
    }
}

src/main/java/TestController.java

@Controller
public class TestController
{
    String name = "Peter!";

    @RequestMapping("/test")
    public String admin(ModelAndView mv)
    {
        System.out.println("in controller");

        mv.addObject("name", name);
        return "test";
    }
}

src/main/webapp/WEB-INF/views/test.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Just for test</title>
</head>
<body>
    ${name}
</body>
</html>

我从Application.java启动项目,并将http://localhost:8080/test放在浏览器中,但浏览器只显示test.jsp的源代码 . 看来spring boot将jsp视为txt文件......如何解决?

1 回答

  • 1

    将此依赖项添加到您的pom.xml

    <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <scope>provided</scope>
        </dependency>
    

相关问题