用eclipse搭建一个简单的springmvc项目
昨天用纯eclipse搭建springmvc项目,没用maven,遇到了一些问题,今天早上终于解决了,分享出来给有需要的亲们。鄙人也是刚刚学springmvc,有不足之处还请批评指正。
1.创建动态web项目
这个就略过了。file->new project->Dynamic web project ->后面的就不多说了,都是下一步这种操作(如果你要使myeclipse也能导入这个项目,那就需要改改了。具体百度吧)。
2.配置web.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xmlns="http://java.sun.com/xml/ns/javaee" 4 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 5 http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 6 <display-name>springmvc</display-name> 7 8 <servlet> 9 <servlet-name>springmvc</servlet-name> 10 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 11 <load-on-startup>1</load-on-startup> 12 </servlet> 13 <servlet-mapping> 14 <servlet-name>springmvc</servlet-name> 15 <url-pattern>/</url-pattern> 16 </servlet-mapping> 17 18 <welcome-file-list> 19 <welcome-file>index.html</welcome-file> 20 <welcome-file>index.htm</welcome-file> 21 <welcome-file>index.jsp</welcome-file> 22 <welcome-file>default.html</welcome-file> 23 <welcome-file>default.htm</welcome-file> 24 <welcome-file>default.jsp</welcome-file> 25 </welcome-file-list> 26 </web-app>
web.xml
3.在web.xml的同级目录下创建springmvc-servlet.xml文件
xml文件的文件名格式为你在web.xml文件中配置的dispatcherservlet的名字,加上”-servlet”,比如springmvc-servlet.xml。虽然有其他方式,但是懒得改了,就用默认的吧。
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:mvc="http://www.springframework.org/schema/mvc" 4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5 xmlns:p="http://www.springframework.org/schema/p" 6 xmlns:context="http://www.springframework.org/schema/context" 7 xsi:schemaLocation=" 8 http://www.springframework.org/schema/beans 9 http://www.springframework.org/schema/beans/spring-beans.xsd 10 http://www.springframework.org/schema/mvc 11 http://www.springframework.org/schema/mvc/spring-mvc.xsd 12 http://www.springframework.org/schema/context 13 http://www.springframework.org/schema/context/spring-context.xsd"> 14 15 <!-- 自动扫描组件 --> 16 <context:component-scan base-package="springmvc"/> 17 18 <!-- 打开注解驱动 --> 19 <mvc:annotation-driven/> 20 21 <!-- 配置jsp视图解析器 ,需要有jstl这个jar包,否则不能映射--> 22 <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 23 <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> 24 <property name="prefix" value="/WEB-INF/jsp/"/> 25 <property name="suffix" value=".jsp"/> 26 </bean> 27 28 </beans>
springmvc-servlet.xml
4.添加jar包
我把spring4.3.4的jar包全加了,包的位置放在WEB-INF/lib下边,不然启动tomcat的时候回出现org.springframework.web.servlet.DispatcherServlet这个类找不着。我也不知道为什么,今天早上把jar包放在lib里边就可以啦。
还有,不要少了commons-loggin-1.2.jar和jstl-1.2.jar折两个jar包,少了第一个tomcat启动不了,少了第二个访问的时候映射不到你的jsp页面
5.开始写Controller
package springmvc; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class Hello { @RequestMapping("/hello") public String hello(Model model) { model.addAttribute("msg","hello springmvc!"); return "hello"; } }
HelloController
6.写jsp
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 4 <html> 5 <head> 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 7 <title>Insert title here</title> 8 </head> 9 <body> 10 ${msg } 11 </body> 12 </html>
hello.jsp
7.最后一步,启动tomcat访问
总结:
1.jar包要放在WEB-INF\lib目录下,不然找不到Tomcat找不到DispatcherServlet;
2.不要少了commons-logging和jstl这两个jar包,少了第一个Tomcat不能启动;少了第二个,地址映射不能映射到你的jsp页面。