Spring Mvc Demo遇到的问题

本文详细介绍了使用Spring和Spring MVC进行Web开发的过程,包括创建Web工程、配置web.xml、设置servlet.xml、编写控制器类等步骤,并通过一个简单的Demo演示了如何实现基本的功能。

由于工作需要用到Spring,所以学习一下SpringMvc,先写了一个Demo
然后遇到了一些问题,>_<

首先先创建一个web工程(网上有说新建动态web,木有找到)
先是配置web.xml,这个就是在WEB-INF文件夹下,不用动,网上有人说放到其他文件夹,然后就各种错(不要问我为什么知道),不要动!!!!

<?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">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <display-name>Spring3MVC</display-name>
    <servlet>
        <servlet-name>spring</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>*.do</url-pattern>
     </servlet-mapping>
</web-app>

这里要注意几个细节,在servlet标签中可以定义init-param的参数来配置servlet.xml文件的位置
要注意servlet的name参数,后面用的到。

<url-pattern>*.do</url-pattern>

这个不用说了,拦截请求的规则

接下来是配置servlet.xml
在WEB-INF下新建spring-servlet.xml文件,这里的名字 要以-servlet.xml 来命名就是你前面servlet的name

<?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:p="http://www.springframework.org/schema/p"
 xmlns:context="http://www.springframework.org/schema/context"
 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-3.0.xsd">
  <context:component-scan base-package="com.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="/" />
  <property name="suffix" value=".jsp" />
 </bean>
</beans>

这里要极大地注意了!!!
先是<context:component-scan base-package="com.controller" />这地方要注意package的名,
要跟你的controller所在的包保持一致
要跟你的controller所在的包保持一致
要跟你的controller所在的包保持一致(重要的事情要说三遍)

然后是<property name="prefix" value="/" />
<property name="suffix" value=".jsp" />
这里是返回的结果视图的位置的配置
就跟struts里的result一样

最后要配置的就是controller类了

package com.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class HelloWorldController {

 @RequestMapping("/hello")
 public ModelAndView helloWorld() {

  String message = "Hello World, Spring 3.0!";
  System.out.println(message);
  return new ModelAndView("hello", "message", message);
 }

}

代码没什么难的
注意的是这地方是用@注解的方式来配置的,
注解我后面学了在写
然后就是return,返回视图和参数,和struts差不多

先写一个Demo
原理的后面在学,下次在写

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值