源码:http://download.csdn.net/detail/fhxmn14991/8600273
有网友说下载的源码,跑不起来。原因可能是tomcat部署的时候,有问题,导致找不到主页面。可以自己先创建一个web项目,然后把代码拷贝进去运行。也可以网上找tomcat的部署,就是部署到webapps文件夹下,很简单的。
1、首先下载spring和tiles3的jar包,截图如
下
2、创建spring-mvc.xml 在src下创建com.config,然后放在里面
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
<!-- 搜索的包路径 -->
<context:component-scan base-package="com.karluto" use-default-filters="false">
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" />
</context:component-scan>
<!-- 指定系统寻找controller路径 -->
<mvc:annotation-driven />
<!-- 静态资源(js/image)的访问 -->
<mvc:resources location="/WEB-JC/" mapping="/js/**" />
<!-- 定义tiles视图解析器 -->
<bean id="tilesViewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.tiles3.TilesView</value>
</property>
</bean>
<bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles3.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/tiles.xml</value>
</list>
</property>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN" "http://tiles.apache.org/dtds/tiles-config_3_0.dtd">
<tiles-definitions>
<definition name="default.list" template="/WEB-INF/jsp/template/list.jsp">
<put-attribute name="left" value="/WEB-INF/jsp/template/left.jsp" />
<put-attribute name="main" value="/WEB-INF/jsp/template/main.jsp" />
</definition>
<definition name="*.*ist" extends="default.list" >
<put-attribute name="main" value="/WEB-INF/jsp/karluto/{1}/{1}_{2}ist.jsp" />
</definition>
<definition name="*.*" template="/WEB-INF/jsp/template/error.jsp">
</definition>
</tiles-definitions>
在这我用的是通配符,简洁了不少呐
4、配置web.xml
<?xml version="1.0" encoding="UTF-8"?>
<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_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>universal</display-name>
<servlet>
<servlet-name>spring-mvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:com/config/spring-mvc.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring-mvc</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
<filter>
<filter-name>utf8-encoding</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>utf8-encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
6、Useraction(controller)放在src下com.karluto.action下
package com.karluto.action;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
@RequestMapping("/user")
public class UserAction {
@RequestMapping("/default")
public ModelAndView indexlist(){
ModelAndView mav = new ModelAndView();
mav.setViewName("default.list");
return mav;
}
@RequestMapping("/userlist")
public ModelAndView userlist(){
ModelAndView mav = new ModelAndView();
mav.setViewName("user.list");
return mav;
}
}
6、大功告成,输入http://localhost:8080/karluto/user/default.action