您的位置:首页 > 编程语言 > Java开发

springMVC使用html视图配置详解

2014-07-28 17:30 435 查看
   最近上班开发的任务不多,于是搞自己的项目了,准备用springMVC,但是想用html作视图,但是 一直发现访问可以进controller,但是不能找到html,很郁闷,经过一个多小时的研究终于解决了这个问题。下面附一下我的 配置。

   首先是web.xml的配置:

   <?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>circcenter</display-name>
<welcome-file-list>
<welcome-file>/admin/login.html</welcome-file>
</welcome-file-list>

<servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.jpg</url-pattern> <url-pattern>*.png</url-pattern> <url-pattern>*.gif</url-pattern> <url-pattern>*.css</url-pattern> <url-pattern>*.js</url-pattern> <url-pattern>*.swf</url-pattern> <url-pattern>*.pdf</url-pattern> <url-pattern>*.java</url-pattern> <url-pattern>*.class</url-pattern> <url-pattern>*.xls</url-pattern> <url-pattern>*.xlsx</url-pattern> <url-pattern>*.et</url-pattern> <url-pattern>*.vm</url-pattern> <url-pattern>*.html</url-pattern> </servlet-mapping>

<!-- springMVC DispatcherServlet配置 -->
<servlet>
<servlet-name>springMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>

<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

</web-app>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
<url-pattern>*.png</url-pattern>
<url-pattern>*.gif</url-pattern>
<url-pattern>*.css</url-pattern>
<url-pattern>*.js</url-pattern>
<url-pattern>*.swf</url-pattern>
<url-pattern>*.pdf</url-pattern>
<url-pattern>*.java</url-pattern>
<url-pattern>*.class</url-pattern>
<url-pattern>*.xls</url-pattern>
<url-pattern>*.xlsx</url-pattern>
<url-pattern>*.et</url-pattern>
<url-pattern>*.vm</url-pattern>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
这一段是让tomcat的默认servlet处理静态资源,当然这样并不好,默认的servlet处理静态文件的性能不怎么样,建议使用<mvc:resources /> 标签去配置,具体的配置见这篇文章http://sb33060418.iteye.com/blog/1902442。

  接下来是springMVC-servlet文件:

  <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd">
<!--<task:executor id="executor" pool-size="5" />
<task:scheduler id="scheduler" pool-size="10" />
<task:annotation-driven executor="executor" scheduler="scheduler" />
-->

<context:component-scan base-package="com.qingshuang.circ"/>

<!-- 对模型视图名称的解析,在请求时模型视图名称添加前后缀
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/"/>
<property name="suffix" value=".jsp"/>
</bean>
-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="order" value="10"></property>
<property name="prefix" value="/"></property>
<property name="contentType" value="text/html"></property>
</bean>
</beans>当然springMVC也支持多视图,比如json、pdf、jsp等等,具体配置大家可以看一下这篇文章:http://loushi135.iteye.com/blog/1676280
以下是控制器代码:

@Controller
@RequestMapping(value="/test")
public class TestController {

/**
* 测试请求是否成功
* @author
* @version
* @since V0.1
*/
@RequestMapping(value="{testAdmin}", method=RequestMethod.GET)
public String testRequest(){
System.out.println("----------------请求成功----------------");
return "admin/login.<span style="font-family:Helvetica, Tahoma, Arial, sans-serif;">html</span>";
}

}html目录:



访问一下:



OK,完毕!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息