Spring学习笔记(一)概念与配置

本文深入解析了软件开发中的核心概念——框架与接口,探讨了框架的定义、特点及其在提高软件质量和开发效率方面的作用;同时介绍了接口的概念及其实现方式,并强调了面向接口编程的重要性。此外,还详细介绍了Spring框架的关键特性,包括IOC、DI和AOP等。
摘要由CSDN通过智能技术生成
一、框架
什么是框架
通常指为实现某个业界标准或完成特定基本任务的软件组件规范,
也指为了实现摸个软件组件规范时,提供规范所要求之基础功能的软件产品。
框架的特点
  1. 半成品
  2. 封装了特定的处理流程和控制逻辑
  3. 成熟的、不断升级改进的软件
为什么使用框架
  1. 软件系统日趋复杂
  2. 重用度高,开发效率和质量极高
  3. 软件设计人员要专注与对领域的了解,使需求分析更明确
  4. 易于上手、快速解决问题
二、接口
  1. 用于沟通的中介物的抽象化
  2. 实体把自己提供给外界的一种抽象化的说明,用以内部操作分离出外部沟通方法,使其能修改内部
  3. 而不影响外界其他实体与其交互的方式
  4. 对应Java接口即声明,声明了哪些方法是对外公开提供的
  5. 在Java8中,接口可以拥有方法体
面向接口编程:
  1. 结构设计中,分清层次调用关系,每层只向外层提供一组接口,各层之间依赖接口而非实现类。
  2. 接口实现的变动不影响各层之间的调用,这在公共服务中尤为重要
  3. ”面向接口编程“中的接口是用于隐藏具体实现和实现多态性的组件
三、Spring
1.1 IOC 控制反转
其思想是反转资源获取的方向。
应用了IOC之后,则是容器主动的将资源推送给他所管理的组件,组件所要做的仅仅是选择一种合适的方法接受资源。这种行为也被称为查找的被动形式
1.2 DI 依赖注入
IOC的另一种表示方式:即组件以一些预先定义好的方式(如:setter方法)
接受来自容器的资源注入
1.3 AOP 面向切面编程
专门用于处理系统中各个模块的交叉关注点的问题
1.4 环境构建 (可参考 http://www.jikexueyuan.com/course/675.html
Spring官网: https://spring.io/projects
点击Spring Framework,选择相应版本的Reference
选择2.3里面的红框位置,进入下载列表,选择相应版本后,点击第一个进行下载。下载后名称如:spring-framework-4.3.7.RELEASE-dist
新建工程,导入JAR包。
   Spring 模块

 

 

1.5 环境检测
新建一个HelloWorld类
package com.lbh.spring.beans;
 
public class HelloWorld {
private String name;
 
public String getName() {
return name;
}
 
public void setName(String name) {
this.name = name;
System.out.println("setName="+name);
}
public void name() {
System.out.println("hello:"+name);
}
public HelloWorld() {
System.out.println("HelloWorld constructor...");
}
}
 
新建一个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-4.3.xsd">
 
  <!-- 配置bean -->
  <bean id="helloworld" class="com.lbh.spring.beans.HelloWorld">
  <property name="name" value="111"></property>
  </bean>
</beans>
新建main方法进行输出测试
package com.lbh.spring.beans;
 
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.ClassPathResource;
 
public class Main {
 
/**
* @param args
*/
public static void main(String[] args) {
// HelloWorld helloworld = new HelloWorld();
// helloworld.setName("lbh");
// helloworld.name();
//1.注册配置文件2.获取bean 3.调用bean方法
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
HelloWorld helloworld = (HelloWorld) ctx.getBean("helloworld");
helloworld.name();
}
 
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值