struts
是
web
框架
(jsp/action/actionfrom)
hibernate
是
orm(对象关系映射)
框架
,
处于持久层
.
spring
是容器框架
,
用于配置
bean
(service/dao/domain/action/
数据源
)
,
并维护
bean
之间关系的框架
model层:业务层+dao层+持久层
service类:
package com.service;
public class UserService {
public String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void sayHello(){
System.out.println("你好:"+name);
}
}
applicationContext.xml文件:
<!-- bean 元素的作用是,当我们的 spring 框架加载时候, spring 就会自动的创建一个 bean 对象,并放入内存
UserService userSerivce=new UserService();
userSerivce.setName(" 张三 ");
当ClassPathXmlApplicationContext("applicationContext.xml");执行的时候,我们的spring容器对象被创建,同时
applicaionContext.xml中配置的bean就会被创建(内存[Hashmap/HashTable])
-->
<bean id="userservice" class="com.service.UserService">
<property name="name">
<value>
张三
</value>
</property>
</bean>
测试类:
//UserService userService=new UserService();
//userService.setName("chenzheng");
//userService.sayHello();
ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
UserService userService=(UserService) ac.getBean("
userservice
");
userService.sayHello();
spring
是一个容器框架,可以配置各种
bean(action/service/domain/dao),
并且可以维护
bean
与
bean
的关系
,
当我们需要使用某个
bean
的时候,可以
使用
getBean(id)
即可
.
ioc(inverse of controll )
控制反转
:
所谓控制反转就是把创建对象
(bean),
和维护对象
(bean)
的关系的权利从程序中转移到
spring
的容器
(applicationContext.xml),
而程序本身不再维护
.
di(dependency injection)
依赖注入
:
实际上
di
和
ioc
是同一个概念,
spring
设计者认为
di
更准确表示
spring
核心技术
创建工具类ApplicaionContextUtil.java:
package com.util;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
final public class ApplicaionContextUtil {
private static ApplicationContext ac=null;
private ApplicaionContextUtil(){
}
static{
ac=new ClassPathXmlApplicationContext("applicationContext.xml");
}
public static ApplicationContext getApplicationContext(){
return ac;
}
}
测试类可改为:
((UserService)ApplicaionContextUtil.getApplicationContext().getBean("userservice")).sayHello();
分享到:
相关推荐
以上就是Spring学习笔记的初步概述,涵盖了Spring的基本架构、配置文件的创建和加载,以及依赖注入的主要方式。随着学习的深入,还可以涉及AOP、Spring MVC、Spring Boot、Spring Data等更高级的主题,从而更好地...
在本压缩包“SpringCloud入门基本代码(基础篇)”中,我们将会探索Spring Cloud的基础概念和实践。Spring Cloud是一个微服务开发工具集,它为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、...
本篇文章将围绕"阶段性学习-谷粒商城-基础篇"这一主题,深入探讨在SpringCloud框架下,如何构建一个完整的谷粒商城项目,旨在为初学者提供详实的学习路径和实践指导。 一、SpringCloud概述 SpringCloud是基于Spring...
通过本篇学习总结,我们深入了解了Spring和Struts这两个重要的Java Web开发框架。Spring框架以其强大的依赖注入和面向切面编程能力,在企业级应用开发中占据了重要的地位;而Struts框架则通过MVC架构模式,帮助...
本篇文章将围绕"Spring Security 3.1"这一主题,深入探讨其核心概念、功能特性以及实际应用。 一、Spring Security简介 Spring Security是Spring生态系统的组成部分,它为Java应用程序提供了全面的安全管理解决...
希望本篇文章能帮助初学者快速入门Spring配置,进而在实际项目中灵活运用Spring框架的强大功能。 以上是对Spring配置的总结,包括了web.xml中的关键配置点,以及Struts与Spring的集成方式。通过对这些内容的学习和...
【Spring学习笔记】这篇笔记主要涵盖了Spring框架的核心概念和应用,包括面向接口编程、依赖注入(IOC/DI)、面向切面编程(AOP)以及Spring的整合应用,特别是与Struts2和Hibernate的整合。 **面向接口编程**是...
### Spring框架核心概念与应用详解 #### Spring框架简介 Spring框架是一个开源的Java平台,它提供了全面的基础架构支持,让开发者...通过本篇文章的学习,希望能够帮助大家更好地掌握Spring框架的核心概念和技术要点。
在本篇文章中,我们将深入探讨Spring的核心容器及其bean的概念,以帮助你更好地理解和使用这个强大的工具。 **Spring核心容器** Spring的核心容器是整个框架的基础,它负责创建、配置和管理bean。主要有两个关键...
本篇学习笔记详细介绍了面向切面编程的基本概念及其在Spring框架中的应用,特别是在使用JDK动态代理创建代理对象方面给出了具体示例。通过理解和掌握这些知识点,可以帮助开发者更好地利用Spring框架的强大功能,...
本篇文章将详细解析Spring Framework 4.3.29.RELEASE版本的重要特性、主要组件以及使用方法,帮助读者深入理解这一经典版本。 1. **版本概述** Spring Framework 4.3.29.RELEASE是官方发布的一个稳定版本,它在4.3...
这篇“mybatis学习总结:基础示例”旨在帮助初学者理解MyBatis的核心概念,并通过实际示例来展示其工作原理。 MyBatis的主要功能是将SQL语句与Java代码分离,提供灵活的映射机制,使得数据访问更加直观和高效。以下...
不过,理解XML配置对于学习Spring的基础概念仍然十分必要。 1. XML配置 XML配置文件通常命名为`applicationContext.xml`,它是Spring容器的配置中心,定义了Bean的创建、初始化、装配以及它们之间的关系。一个基本...
随着技术的不断发展与更新迭代,Spring 作为 Java 领域中最受欢迎的企业级应用框架之一,始终保持着极高的关注度与活跃度。Spring Boot 作为 Spring 生态系统中的一员新秀,自发布以来便以其简单、高效的特点赢得了...
- **`<context:component-scan base-package="org.spring.mvc"/>`** 用于指定扫描组件的基础包,这样可以自动检测并实例化带有 @Controller、@Service 等注解的类。 - `<bean class="org.springframework.web....
**Spring 框架概述** Spring 是一个开源的 Java 应用框架,它以其轻量级、模块化和面向切...希望这篇入门笔记能为你开启 Spring 的探索之旅,欢迎在学习过程中发现错误或有任何疑问时,通过博主的博客进行交流和指正。
在开发Java Web应用程序时,使用Spring框架作为基础架构,Ibatis作为持久层解决方案,而Flex作为前端展示技术,能够构建出高效、灵活且易于维护的应用。本篇文章将深入探讨如何将这三者有效地整合在一起,实现前后端...
总结,Spring 3.1.2源码的学习是一次深入理解Java企业级开发的宝贵旅程,通过细致的研究,开发者可以更高效地利用Spring框架,提升软件开发的质量和效率。同时,对源码的探索也是提升自身编程技能的重要途径,有助于...