我有一个使用Spring的maven项目,我目前已经在Tomcat上运行了索引页面。在我的索引页面中,我有:
<a href="about">about</a>
然后在WEB-INF文件夹中,我有一个名为jsp的子文件夹,其中包含about.jsp。我不知道如何让href打开about.jsp作为网页。我尝试创建一个控制器类,但我不确定我是否正确地进行了操作。我在控制器中的所有内容都是,
@Controller
public class AboutController {
@RequestMapping("/about")
public ModelAndView helloWorld() {
String message = "Hello World";
return new ModelAndView("about", "message", message);
}
}
web.xml中的servlet映射看起来像。
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
然后是我的springMVC-servlet.xml
<context:component-scan base-package="com.springMVC.controller" />
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
<mvc:resources mapping="/resources/**" location="/WEB-INF/resources/" />
<mvc:annotation-driven />
我已经尝试了一些不同的教程,但它们都没有用。
我还应该注意,如果我启动tomcat并转到localhost:8080 / Test / about.jsp它可以工作,我只是无法使链接工作。
答案 0 :(得分:0)
如果我启动tomcat并转到localhost:8080 / Test / about.jsp它可以工作
您似乎已将about.jsp
放入web
而不是WEB-INF/jsp
。尝试将about.jsp
移至指定文件夹WEB-INF/jsp
。
答案 1 :(得分:-1)
你应该像这样<a href="/about">about</a>
答案 2 :(得分:-1)
你应该改变
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
喜欢这个
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/views/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>