spring mvc restful工程demo

在搭建restful工程之前,首先要保证maven工程会搭建,如果不会的,可以参考我的另外两篇博文


        http://blog.csdn.net/haishuitian1/article/details/42783757


http://blog.csdn.net/haishuitian1/article/details/42783793


基本的maven工程搭建成功后,就需要将现在的工程搭建成spring restful工程,具体步骤如下:


1.现在创建的仅仅是一个web工程,第一步需要将web工程改造成spring mvc工程。


(1)pom.xml中引入所需要的spring jar包


    <!-- spring begin -->  
	<dependency>  
	    <groupId>org.springframework</groupId>  
	    <artifactId>spring-webmvc</artifactId>  
	    <version>${spring.version}</version>  
	</dependency>  
	  
	<dependency>  
	    <groupId>org.springframework</groupId>  
	    <artifactId>spring-jdbc</artifactId>  
	    <version>${spring.version}</version>  
	</dependency>  
	  
	<dependency>  
	    <groupId>org.springframework</groupId>  
	    <artifactId>spring-context</artifactId>  
	    <version>${spring.version}</version>  
	</dependency>  
	  
	<dependency>  
	    <groupId>org.springframework</groupId>  
	    <artifactId>spring-aop</artifactId>  
	    <version>${spring.version}</version>  
	</dependency>  
	  
	<dependency>  
	    <groupId>org.springframework</groupId>  
	    <artifactId>spring-core</artifactId>  
	    <version>${spring.version}</version>  
	</dependency>  
	  
	<dependency>  
	    <groupId>org.springframework</groupId>  
	    <artifactId>spring-test</artifactId>  
	    <version>${spring.version}</version>  
	</dependency>  
  	<!-- spring end --> 

(2)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"   
        xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"   
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"   
        version="3.0">  
	<display-name>Archetype Created Web Application</display-name>
	<!--引入spring必须配置的-->
	<servlet>  
	    <servlet-name>dispatcher</servlet-name>  
	    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
	    <load-on-startup>1</load-on-startup>  
	</servlet>  
	<!-- 设置dispatchservlet的匹配模式,通过把dispatchservlet映射到/,默认servlet会处理所有的请求,包括静态资源 -->  
	<servlet-mapping>  
	   <servlet-name>dispatcher</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>
	</filter>
	<filter-mapping>
		<filter-name>characterEncodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
  
</web-app>
(3)web.xml中配置了dispatcher后,就需要配置controller了,默认是在dispatcher-servlet.xml中配置


<?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"  
    xmlns:p="http://www.springframework.org/schema/p"  
    xsi:schemaLocation="http://www.springframework.org/schema/beans  
            http://www.springframework.org/schema/beans/spring-beans.xsd  
            http://www.springframework.org/schema/mvc  
            http://www.springframework.org/schema/mvc/spring-mvc.xsd  
            http://www.springframework.org/schema/context  
            http://www.springframework.org/schema/context/spring-context.xsd"  
    default-lazy-init="true">  
      
    <!-- 通过mvc:resources设置静态资源,这样servlet就会处理这些静态资源,而不通过控制器 -->  
    <!-- 设置不过滤内容,比如:css,jquery,img 等资源文件 -->  
    <mvc:resources location="/*.html" mapping="/**.html" />  
    <mvc:resources location="/css/*" mapping="/css/**" />  
    <mvc:resources location="/js/*" mapping="/js/**" />  
    <mvc:resources location="/images/*" mapping="/images/**" />  
      
    <!-- 添加注解驱动 @controller-->  
    <mvc:annotation-driven />  
    <!-- 默认扫描的包路径 -->  
    <context:component-scan base-package="com.nust.rest" />  
      
    <!-- mvc:view-controller可以在不需要Controller处理request的情况,转向到设置的View -->  
    <!-- 像下面这样设置,如果请求为/,则不通过controller,而直接解析为/index.jsp -->  
    <mvc:view-controller path="/" view-name="index" />  
    <bean class="org.springframework.web.servlet.view.UrlBasedViewResolver">  
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>  
        <!-- 配置jsp路径前缀 -->  
        <property name="prefix" value="/"></property>  
        <!-- 配置URl后缀 -->  
        <property name="suffix" value=".jsp"></property>  
    </bean>  
      
</beans>  


(4)然后是jsp中新增表单信息


<form action="login">  
    用户名:<input id="username" name="username" type="text"></input><br>  
    密  码:<input id="username" name="password" type="password"></input><br>  
    <input type="submit">  
</form>  
对应的controller是

@Controller
public class RestController 
{
	@RequestMapping("login") //用来处理前台的login请求  
    private @ResponseBody String hello(  
            @RequestParam(value = "username", required = false)String username,  
            @RequestParam(value = "password", required = false)String password  
            )
	{  
        return "Hello "+username+",Your password is: "+password;  
          
    }  
}


和大部分人一样,在搭建的过程中并不是一帆风顺的,其中碰到一个关键性错误问题:


java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterEncodingFilter


很明显是jar包没有找到,我找了好多办法,最后都想手动lib下添加jar包了,但是还是通过这篇博文找到了答案:

  

    http://blog.sina.com.cn/s/blog_8ced01900101ba3f.html


2.spring mvc改造成功之后,接下来要改造成restful的形式





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值