空山雪林通用模块工作室

 

利用Spring 3实现Rest配置与开发

最近项目要用到Rest,选择了Spring 3,关于Rest的介绍:

 

 

 REST关键原则
REST定义了应该如何正确地使用(这和大多数人的实际使用方式有很大不同)Web标准,例如HTTP和URI。如果你在设计应用程序时能坚持REST原则,那就预示着你将会得到一个使用了优质Web架构(这将让你受益)的系统。总之,五条关键原则列举如下:

  1. 为所有“事物”定义ID
  2. 将所有事物链接在一起
  3. 使用标准方法
  4. 资源多重表述
  5. 无状态通信

 

Spring 3.0开始将全面支持Rest,而且配置实现起来也相当简单,利用Spring MVC在web.xml定义片段:

 

 

	<servlet>  
        <servlet-name>mydemo</servlet-name>  
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
        <load-on-startup>1</load-on-startup>  
    </servlet>  
      
    <servlet-mapping>  
        <servlet-name>mydemo</servlet-name>  
        <url-pattern>/</url-pattern>  
    </servlet-mapping> 

 

继而在Web-INF目录下增加mydemo-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: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">
	
	<!-- Auto scan, declare the location path -->  
	<context:component-scan base-package="com.mydemo.springmvc.rest" />  

	<!-- Using annontation -->  
	<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /> 
	
	<!-- Resolve the view, declare the prefix and suffix -->  
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"  
		p:prefix="/view/" p:suffix=".jsp" p:viewClass="org.springframework.web.servlet.view.JstlView" />  
	 
	<bean id="multipartResolver"  
		class="org.springframework.web.multipart.commons.CommonsMultipartResolver"  
		p:defaultEncoding="utf-8" /> 
</beans>

 

这里我们定义了JSP文件的标签库用jstl,并启动了注解功能,并自动扫描com.mydemo.springmvc.rest下的controller,接着我们就可以在com.mydemo.springmvc.rest包下编写controller代码

并可以使用注解功能,如类似的代码如下:

 

 

@Controller
public class MyDemoController {
	private CommonDAO commonDAO;
	@Autowired
	public void setCommonDAO(CommonDAO commonDAO) {
		this.commonDAO = commonDAO;
	}

	private MyDemoController (){}
	
	@RequestMapping(value="/home", method=RequestMethod.GET)
	public String welcome(){
		return "/home";
	}
}
 

然后就可以在view目录下通过增加home.jsp来实现显示层代码的编写工作,所有的步骤就以上这些,接下去你就可以通过类似:http://localhost:8080/mydemo/home,来访问了(这里Controller通过注解的方式注入DAO以便进行数据库的访问)



已有 0 人发表留言,猛击->>这里<<-参与讨论


JavaEye推荐



posted on 2010-09-28 13:19 徐灵 阅读(571) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

友情链接

最新评论