昨天用纯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页面。

 

版权声明:本文为pcmcnblogs原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/pcmcnblogs/p/6088777.html