最近有在学习spring,觉得spring 的功能实在是太强大了,现在总结以下今天的所学,感觉学到的有点少,不
过,要把spring学懂,估计还要加倍的努力才行,连老师都说,spring好多的人也只是会用,其实根本就不知道
底曾的实现,不过也学的挺过瘾的:
先简单的介绍以下我所了解的spring把,如果有高手看到这篇文章的话,希望能加以补充:
1,先说以下我们做开发时通常所用到的架构体系,首先要提到就是ejb,我们可以用ejb实去实现大的工
程项目,可是,ejb所带给我们的烦恼就是太复杂,要付出很大的努力去学习,去研究,还要不断的实现,不过
ejb隶属于j2ee中的内容,很多的时候,我们所接触的框架,大都是属于第三方的,可以说用ejb开发是j2ee开发的标准模板,但是,ssh更加简化了j2ee的开发,所以好多时候我们用到的都是ssh开发模式
2,下面我们看看开发时我们都用什么?
(1),struts+spring+hibernate
(2),struts+spring+Ejb
(3),javaServer face+spring+iBATIS
(4),spring +spring+jdo
(5),flex+spring+hibernate
(6),struts+spring+jdbc
相信大家都见过这些,但是你看到spring在这其中的优势了吗?对了,spring的灵活性可以说是完美了,他可以
搭配任何其他的框架进行系统的开发,也就是说他是一个非侵入性框架。
3,我们来通过一个小小的例子来见识以下spring的强大功能吧:
还记得我们刚开始学习java所用到的helloworld吗?今天我就写他吧:
事先请先将spring的核心jar包导入到jdk下,大家应该知道放到什么地方把?对就是:
C:\Program Files\Java\jdk1.5.0_06\jre\lib\ext下
先来建一个包
bean,在spring 中我们所写的类大都是bean,因为spring的底层实现非常的完美,几乎不用我们写多少代码:
下面一段代码就是我们的HelloWorld.java:
package bean;
public class HelloWorld {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void sayHello(){
System.out.println("hello, "+name);
}
}
不用多说,底下的xml文件是spring 中最核心的部分,可以这么说我们做spring的开发,实际上不是在写代码,
而是在填写配置文件:
可以随意命名,这里我命名成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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="hello" class="bean.Hello">
<!--先来导如我们所写的bean 文件HelloWorld.java 有id这一属性是为了后面能通过这个自定义的id找
到这个bean,class后面跟的是类的路径-->
<property name="name" value="world"/>
<!--这是bean的一个属性,name跟的是属性值,value是我为它赋的值,-->
</bean>
</beans>
下面是一个测试类:
import java.io.FileInputStream;
import java.io.InputStream;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import bean.Hello;
public class Test {
public static void main(String[] args) {
try {
// Resource res=new ClassPathResource("applicationContext.xml");
//导入配置文件
// XmlBeanFactory factory= new XmlBeanFactory(res);
//声明工厂类对象
//
// Hello h =(Hello) factory.getBean("hello");
//通过工厂类拿出bean 对象,下同
// h.sayHello();
} catch (Exception e) {
e.printStackTrace();
}
// ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
//
// Hello h = (Hello)ctx.getBean("hello");
// h.sayHello();
}
}
可以有多种方法去拿到bean里面的对象,这样的话我们如果修改的话,只要不牵扯到功能问题,都可以通过修改
配置文件来完成,这样的话总比我们不断的重复的写某一个功能类要强的多把?
可以跟spring中的这一功能做对比的是我们同样可以用老方法编写配置文件,用工厂模式去实现,不过那样的话
我们要写的代码就可能多很多了,是不是?这样看来,用spring开发简直就是天上下馅饼了,呵呵
4,补充两个概念:
ioc控制反转:inverse or control,怎样去拿到bean的对象,
iod: applicationContext,beanFactory
di依赖注入:depency injection
这两个东东可是spring的核心啊,理解了这两个东东开发过程就更加的明了了,可惜我还没明白,等明白了在说
把。
分享到:
相关推荐
“Java Spring学习笔记”是一份宝贵的资源,专门为想要学习和掌握Java Spring框架的开发者而设计。这份学习笔记提供了详细而系统的教程和实践指南,帮助初学者快速入门,并带领已经有一定经验的开发者深入理解和应用...
在本次的Java Spring框架学习笔记中,将对Spring框架的核心概念进行详细解析,包括Spring的 IOC(控制反转)、AOP(面向切面编程)、jdbcTemplate、事务管理、Spring5新特性以及与Mybatis的整合。本学习笔记提供了...
这个"java spring学习资料"包含了作者个人的学习历程和经验,旨在帮助初学者和进阶者深入理解Spring框架。在学习Spring的过程中,以下几个核心知识点是必须掌握的: 1. **依赖注入(Dependency Injection,DI)**:...
### Spring学习笔记(精华全记录) #### Spring框架概述 Spring框架源自Rod Johnson的个人项目,最初于2002年末发布。Spring并非一开始就作为一个完整的框架出现,而是从一个项目逐步发展而来。随着项目的成熟,...
spring学习笔记
本资料“Spring学习笔记&源码”是基于网易云课堂黑马程序员的Spring四天精通课程,旨在帮助学习者深入理解和实践Spring框架。 笔记部分可能会涵盖以下内容: 1. **Spring概述**:介绍Spring框架的历史、特点和主要...
根据提供的压缩包文件名,我们可以推测这是一个逐步学习Spring的系列笔记。从"Spring_day1"开始,可能涵盖了Spring的基础概念、环境搭建和基本配置。"Spring_day2"可能涉及了依赖注入和AOP的深入讲解。"Spring_day3...
这份"Spring学习笔记+学习源码.zip"资源包含了深入学习Spring及其相关技术的知识点,以及实践代码,对提升Spring技能将大有裨益。 首先,我们来详细讨论Spring框架的主要组件和功能: 1. **依赖注入(Dependency ...
马士兵老师是知名的Java教育专家,他的Spring框架学习笔记深入浅出,对于初学者和进阶者来说都是一份宝贵的资源。这份笔记涵盖了Spring的核心概念、配置、AOP(面向切面编程)、DI(依赖注入)等关键知识点。 1. **...
《Java Spring框架学习指南》是一份详尽的教育资源,旨在帮助开发者从零基础开始逐步掌握Spring框架,并深入理解其核心概念和技术。这份PDF文档全面覆盖了Spring框架的基础知识,包括IoC(Inversion of Control)...
综上,这个项目为学习者提供了一个了解Java面向对象编程和Spring框架实际应用的实例,通过对源代码的阅读和修改,可以深化对这两个关键领域的理解,并提升编程技能。同时,它也展示了如何将这些技术应用于游戏开发,...
关于spring框架部分的学习笔记;SE/EE开发的一站式框架
综上所述,Java Spring技术路线导图覆盖了Spring的各个方面,从基础框架到微服务、分布式系统解决方案,是学习和进阶Spring技术体系的宝贵资源。通过深入理解和掌握这些知识点,开发者可以构建出更高效、更健壮的...
【狂神说】Spring PDF学习总结笔记主要涵盖了Spring框架的核心概念、优点、组成部分以及相关扩展。Spring是一个由Rod Johnson创建的开源框架,旨在简化企业级应用开发的复杂性,它结合了众多现有技术,如SSH(Struct...
在提供的压缩包文件中,"spring"可能包含了Spring框架的相关文档、教程、示例代码或者库,这些都是深入理解和学习Spring的宝贵资源。通过这些资源,你可以掌握Spring的使用方法,提高你的Java开发能力。
【Java Spring 学习笔记】 Java Spring 是一个广泛使用的开源框架,主要针对企业级Java应用程序开发,它简化了创建和管理复杂的Java应用的过程。Spring框架以其依赖注入(Dependency Injection,DI)和面向切面编程...
AOP是Spring提供的另一大特色,它允许我们把关注点分离,比如日志记录、事务管理等,可以编写为独立的模块(切面),然后在多个对象的方法调用中插入这些关注点。这样既保持了代码的整洁,又实现了代码的复用。 4....
本文档记录了尚学堂Spring学习笔记的重要知识点,涵盖了Spring配置文件的设置、普通属性的注入、自定义属性编辑器、公共属性的注入、Spring注解等内容。 一、Spring配置文件的设置 在MyEclipse中编写Spring配置...
通过学习这个基础教程,你将能够掌握Spring的基本概念和用法,为后续的进阶学习和实际开发打下坚实的基础。阅读《Spring基础教程.pdf》将引导你逐步走进Spring的世界,理解并运用这些核心概念,提升你的Java开发技能...
这份"Spring框架学习笔记"涵盖了Spring框架的基础知识、核心组件以及高级特性,对于初学者来说是一份宝贵的资料。 一、Spring框架概述 Spring框架是为了解决企业应用开发的复杂性而设计的,它提供了一个全面的基础...