gpt4 book ai didi

java - 为什么我的 "index.jsp"无法使用 java 和 Spring 识别 Controller 中的变量

转载 作者:行者123 更新时间:2023-12-02 10:30:40 24 4
gpt4 key购买 nike

我的 Controller 代码

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@Controller
public class HomeController {

@RequestMapping(value = "/index", method = {RequestMethod.GET, RequestMethod.POST})
public String mainPage(ModelMap model, HttpServletResponse response, HttpServletRequest request) throws ServletException, IOException {
if(request.getMethod().equals("GET")){
model.addAttribute("test", "test");
model.addAttribute("var", "Hello");
return "index";
}
return "";
}

}

我的AppCondig代码:

import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver;

@Configuration
@EnableWebMvc
public class AppConfig extends WebMvcConfigurerAdapter{

@Bean
public InternalResourceViewResolver internalResourceViewResolver(){
InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();
internalResourceViewResolver.setPrefix("/");
internalResourceViewResolver.setPrefix(".jsp");
return internalResourceViewResolver;
}

@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer){
configurer.enable();
}
}

我的index.jsp,我得到“无法解析变量'var'

<head>
<%@ page isELIgnored="false" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
</head>
<body>
<h2>Hello World! </h2>
<td>${var}</td>
</body>
</html>

我在 web.xml 中使用版本 3,如下

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">

我不知道为什么我的变量在“.jsp”文件中无法识别,因为我遵循了我读到的有关该主题的所有信息。我使用最新版本的 IntelliJ IDEA

最佳答案

internalResourceViewResolver.setPrefix(".jsp");

应该是:

internalResourceViewResolver.setSuffix(".jsp");

关于java - 为什么我的 "index.jsp"无法使用 java 和 Spring 识别 Controller 中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53633457/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com