您的位置:首页 > 编程语言 > Java开发

SpringMVC入门学习(三)+Spring应用(整合)

2015-06-16 09:54 609 查看
转:http://blog.csdn.net/hejingyuan6/article/details/46238213

在整合之前我们再来回顾一下Spring和SpringMVC

 

Spring:

 

Spring框架的核心是提供了一个容器,该容器可以对Bean组件进行管理,例如创建Bean对象,销毁一个Bean对象等操作.此外该容器还具有IOC和AOP高级特性,将Bean对象调用解耦.

 

SpringMVC

 

spring mvc是类似于struts的一个MVC开源框架,其实都是属于spring,spring mvc需要有spring的jar包作为支撑才能跑起来,spring mvc是spring中的一个模块

 

Spring和SpringMVC整合不再需要拷jar包,因为Spring的jar包也就用于SpringMVC了

 

配置文件web.xml

[html] view
plaincopyprint?

<!--修改Spring的配置文件路径和名称 -->  

<context-param>  

        <param-name>contextConfigLocation</param-name>  

        <param-value>classpath*:config/springAnnotation-core.xml</param-value>  

 </context-param>  

   

 <!-- 配置Spring-->  

 <listener>  

     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  

 </listener>  

  

<!-- SpringMVC的配置-->  

  

<servlet>  

    <servlet-name>springMVC</servlet-name>  

    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  

        <init-param>  

            <param-name>contextConfigLocation</param-name>  

            <param-value>classpath*:config/springAnnotation-servlet.xml</param-value>  

        </init-param>   

     <load-on-startup>1</load-on-startup>   

 </servlet>  

lt;servlet-mapping>  

    <servlet-name>springMVC</servlet-name>  

    <url-pattern>/</url-pattern>  

</servlet-mapping>  

下面结合实例说明:

 

一个接口:ISpring 

[java] view
plaincopyprint?

public interface ISpring {  

  

    public String get();  

}  

一个实现类:SpringManager 

[java] view
plaincopyprint?

public class SpringManager implements ISpring {  

  

    @Override  

    public String get() {  

        System.out.println("------I am springManager----");  

          

        return "I am getMethod";  

    }  

  

}  

在Spring的配置文件(springAnnotation-core.xml)中添加配置(Spring并未使用注解方式)

[html] view
plaincopyprint?

<beans>  

    <bean id="springManager" class="com.tgb.web.controller.annotation.SpringManager"></bean>  

</beans>  

SpringMVC配置文件(springAnnotation-servlet.xml):

[html] view
plaincopyprint?

<!-- 注解扫描包 -->  

    <context:component-scan base-package="com.tgb.web.controller.annotation" />  

    <!-- 开启注解,这两种方式通用 -->  

        <!-- <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />  

        <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"></bean>  

         -->  

     <mvc:annotation-driven></mvc:annotation-driven>  

      

    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">  

        <property name="prefix" value="/"></property>  

        <property name="suffix" value=".jsp"></property>  

    </bean>  

那么Controller中如何获取到接口的方法呢?

[java] view
plaincopyprint?

@Controller  

public class SpringController {  

    /*name对应的值为Spring配置文件中bean的id值*/  

    @Resource(name="springManager")  

    private ISpring springManager;  

      

    @RequestMapping("/spring/get")  

    public String get(){  

        System.out.println(springManager.get());  

        return "/success";  

    }  

}  

success.jsp

[html] view
plaincopyprint?

<body>  

    spring集成成功!!!  

  

</body>  

显示效果:

 

访问:http://localhost:8080/springMVC9/spring/get



总结:

 

Spring与SpringMVC整合目的也是各自发挥各自的优势,重要的是我们不要误以为Spring和SpringMVC是相同的,Spring为容器管理对象的创建等,SpringMVC则为一个前端的MVC框架。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  springmvc