`
IT_way
  • 浏览: 67791 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

springmvc 简单实例回顾一

阅读更多
springmvc 是spring框架中一款优秀的web产品,springmvc有自己的mvc,它有着spring 灵活实用特点,aop,ioc等。都可以再springmvc找到他的影子,最可贵的地方,它对servletweb体系有很好的实现了。这样给springmvc 骨子里注入了易上手和简单的元素。做web开发这一块的对struts并不陌生。struts有自己的页面标签,依赖注入,拦截器,国际化,类型转化,验证等,配置灵活。这些都可以在springmvc找到影子,我觉得最可贵的地方就是对servletweb体系很好的实现,没有彻底的改变,而是把servletweb体系的一些不足,进行的改进,如果你学了servlet,对springmvc的理解会有很大的帮助。
M:模型层,他有着spring强大的融合能力,你可以根据自己的需求选择持久层技术,hibernate,ibatise,jdbc等
v:视图层也非常的灵活,你只有在在配置文件里选择你想要的试图解析类,其余的你就不要管了,你也可以配置试图框架velocity,itext
c:控制层,你只要类实现controller,不过springmvc自带了很多实现此此接口的类,你可以根据情况,实现相应的类

springmvc 请求示意图


controller类的继承体系关系,根据情况,自由选择


view视图解析的继承体系图




还有对execl,pdf的支持
这些都是mvc的结构

现在做个例子
1第一步加入包 spring-core-3.0,spring-web-3.0类库
2.配置web.xml
3.新建controller类
4.配置applicationContext.xml

第二步:web.xml

<?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>
  <servlet>
  <description><![CDATA[请求servlet配置]]></description>
  <servlet-name>dispatcherservlet</servlet-name>
  <!--  记载请求接受类-->
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <!-- 加载配置文件 -->
  <init-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:applicationContext.xml</param-value>
  </init-param>
  <!-- 配置servlet加载顺序 值越小加载就越靠前默认是0 -->
  <load-on-startup>1</load-on-startup>
  </servlet>
  <!--配置dispatcherservlet适用范围 -->
  <servlet-mapping>
  	<servlet-name>dispatcherservlet</servlet-name>
  	<url-pattern>*.do</url-pattern>
  </servlet-mapping>
</web-app>



第三步:新建HelloController

package org.springmvcone.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;
/**
 * 
 * @author Z.Qiong
 *
 */
public class HelloController extends  AbstractController{
	
	private String successview;
	private String failview;

	public String getSuccessview() {
		return successview;
	}
	public void setSuccessview(String successview) {
		this.successview = successview;
	}


	public String getFailview() {
		return failview;
	}


	public void setFailview(String failview) {
		this.failview = failview;
	}
	@Override
	public  ModelAndView handleRequestInternal(HttpServletRequest request,
			HttpServletResponse response) throws Exception {
		
		ModelAndView modelandview=new ModelAndView();
		String name=request.getParameter("name");
		String pwd=request.getParameter("pwd");
		if("wzq".equals(name)&&"wzq".equals(pwd)){
			modelandview.addObject("sucess", "第一个例子成功了");
			modelandview.setViewName(successview);
		}else{
			
			modelandview.setViewName(failview);
		}
		return modelandview;
	}
}



第四步配置:applicationContext.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"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

<!-- 控制器类 -->
<bean  id="hellocontroller" class="org.springmvcone.controller.HelloController">
	<property name="successview" value="success"></property>
	<property name="failview" value="index"></property>
</bean>

<!-- 配置试图解析类 -->
<bean id="viewresolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!-- 配置试图前缀 -->
<property name="prefix" value="/"></property>
<!-- 配置试图后缀 -->
<property name="suffix" value=".jsp"></property>
</bean>
<!--请求分发类 -->
<bean id="controllerResolver" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
	<props>
		<prop key="/login.do">hellocontroller</prop>
	</props>
</property>
</bean>

</beans>



  • 大小: 91.4 KB
  • 大小: 9.4 KB
  • 大小: 9 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics