Spring-(1)HelloSpring
来源:互联网 发布:网络兼职公司 编辑:程序博客网 时间:2024/05/21 09:13
Spring-(1)HelloSpring
首先介绍一下Spring,Spring 是最受欢迎的企业级 Java 应用程序开发框架。数以百万的来自世界各地的开发人员使用 Spring 框架来创建好性能、易于测试、可重用的代码。其次,Spring 是轻量级的,Spring 框架是一个开源的 Java 平台, Spring 框架的基础版本是在 2 MB 左右的。 Spring 框架的核心特性可以用于开发任何 Java 应用程序,但是在 Java EE 平台上构建 web 应用程序是需要扩展的。 Spring 框架的目标是使 J2EE 开发变得更容易使用,通过启用基于 POJO 编程模型来促进良好的编程实践。
此文章建议有一定Java EE基础的程序员学习,本人也是第一次接触Spring,如有写得不正确的地方,希望大家踊跃指出。
先说一下Spring的核心基础三个概念:
IOC:Inversion of Control,即“控制反转”,这并不是什么技术,而是一种设计思想,控制反转的意思是将控制权交出去,例如平常我们需要一个对象一般都是new一个,而用了Spring IOC后,我们就会将new对象的操作交给IOC容器,从而省去很多麻烦,这就是将控制权交给IOC容器,即“控制反转”,讲到IOC(控制反转)那一定要了解DI(依赖注入)的使用;
DI:Dependency Injection,即“依赖注入”,依赖注入可以有高效的解耦合的能力。可以说,依赖注入仅仅是控制反转的一个具体的例子,当编写一个复杂的 Java 应用程序时,应用程序类应该尽可能的独立于其他的 Java 类来增加这些类可重用的可能性,当进行单元测试时,可以使它们独立于其他类进行测试。依赖注入有助于将这些类粘合在一起,并且在同一时间让它们保持独立。我们将这两个部分拆开来理解,依赖的关系就像是类里面套着另一个类,例如车店是一个类,车店类里面有一个属性是车主类,那么车店类就依赖了车主类,这就是依赖关系,那注入的意思是车主类通过IOC容器注入到车店,这个地方我没有过细的讲,在以后我会再详细的说明的,目前就先做一个了解!
AOP:Aspect Oriented Programming,意思是“面向切面编程”,我们以前了解的很多都是面向对象编程(OOP),而面向切面编程会解决很多问题,需要说明的一点是,AOP只是OOP的一个补充,传统的编程都是纵向编程,而AOP则是进行横向编程,AOP独立于应用程序的业务逻辑,就像servlet过滤器和servlet监听器一样,它可以处理一些每次都需要操作但又很繁琐的事情,比如日志记录、声明性事务、安全性,和缓存等等。
这就是Spring的核心基础,在这里我也只是简单的写了一点我的基本认识,如果有机会,我会再把上述内容再详细的写一遍。
现在我们来自己动手写一个入门Demo
首先我们创建一个Demo项目示例
我这边创建了一个HelloSpring的Demo,然后我们导入相应的包
这里我们要用到Spring的jar包,Spring的jar包可以到Spring的官网下载
附上官网链接
https://spring.io/
http://projects.spring.io/spring-framework/
这里是需要导入的jar包(提示:第一个包是要自己下的,百度可以搜到。 PS:不是给百度打广告)
导入jar包后就开始写Demo了
这是上图中的HelloSpring的类里面的全部内容,我就不一一打了(任性,直接复制粘贴)。
public class HelloSpring { private String message; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; }}
这个是做测试用到的main方法,鉴于可能有人不会用Junit,所以就用main方法做测试,反正也是一样杠杠的。这里用到的ApplicationContext 暂时不需要详细了解,仅仅知道它可以读取xml文件即可。
import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class MainAPP { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml"); HelloSpring hSpring = (HelloSpring) context.getBean("helloSpring"); System.out.println(hSpring.getMessage()); }}
特别说明一下,这个是xml文件,是对Spring做配置用的,beans … 尖括号里面的内容目前不需要做太多了解,但是我们需要了解bean的用法,bean的id是作为一个唯一的标识(相当于name),标识出它所对应的class类,而class就是所对应的类(此类需要写全限定名称),bean里面有一个property属性,property属性指定的是class类里面的属性,这里的property是将com.tbspring.HelloSpring类中的message属性赋值“Hello Spring !”字符串(注意:property的赋值方式是运用setter方法赋值注入(还有一种是通过构造器方法注入,用得比较少,以后可能讲到))
<?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-4.3.xsd"> <bean id="helloSpring" class="com.tbspring.HelloSpring"> <property name="message" value="Hello Spring !"></property> </bean></beans>
运行main方法
如果控制台打印出“Hello Spring !”则表示Spring入门的Demo就算成功了!
让我死皮赖脸的说最后一句:转载注明出处,盗版必究,一口气写下来真的需要耐心!
- Spring-(1)HelloSpring
- HelloSpring
- Spring-Spring 开发环境搭建及HelloSpring
- 【Spring】HelloSpring:使用IntelliJ IDEA学习Spring
- 我的Spring之旅(一):HelloSpring【附github源码】
- Spring从开始到精通HelloSpring
- 第一个使用spring实现hellospring的例子
- 12.2 基于注解的 HelloSpring
- 12.3 第一个Spirng应用单词表:HelloSpring
- spring(1) spring事务
- Learn Spring in spring(1)
- Spring复习1(Spring简介)
- Spring基础学习-(1)Spring基础知识
- spring 学习笔记(1)--模拟spring
- Spring笔记(1)-----Spring资源访问
- Spring学习笔记(1)---------初识Spring
- [Spring]Spring AOP学习笔记(1)
- Spring入门(1),Spring简介
- 51单片机 时钟程序设计 数码管可闪烁显示数值
- HBase之java api接口调用与mapreduce整合即从hdfs中通过mapreduce来导入数据到hbase中
- 小米手机Installation failed with message Failed to establish session.
- 将编辑好的PDF文件进行编辑困难吗
- 《辛雷学习方法》读书笔记——第二章 心态
- Spring-(1)HelloSpring
- ionic客服拖拽
- onmouseclick多次点击
- Softmax的求导
- XMind思维导图是什么
- mysql查询今天、昨天、7天、近30天、本月、上一月 数据
- 轮播图+XListview
- xampp3.2.2配置多个监听端口和不同的网站目录
- Java 实现对Sql语句解析