当前位置: 首页 > news >正文

初始Spring框架

初识Spring

spring介绍

核心理念:IoC(控制反转)、AOP(面向切面的编程)

  1. 表现层:web层提供了一个优秀的springMVC框架
  2. 业务逻辑层:通过AOP无入侵情况下对业务层进行增强,eg 管理事务、记录日志。
  3. DAO层(持久层):整合MYBatis

Spring框架的优点

  1. 可以直接通过Spring文件配置文件管理数据库事务。
  2. 方便测试,支持junit单元测试
  3. 方便集成其他框架(AOP),eg Struts、Hibernate
  4. 降低了JavaEE的API使用难度

Spring体系结构

  1. Bean:对象的管理和创建。
  2. Core:基础核心。
  3. Context:上下文。
  4. SpEL:Spring提供的表达式。

从下往上学,学习灰色部分

Spring新特性

  1. 简化了异常操作。
  2. 支持响应式编程
  3. 支持函数式web框架
  4. 支持Kotlin语言
  5. 提升测试功能

Spring的下载及目录结构

  1. spring-5.2.8.RELEASE-dist.zip

Spring入门程序

  1. 创建一个maven工程,在其中引入相关的依赖包(课本)
  2. 创建一个类,在目录src/main/java下创建包,eg package com.ncwu
  3. 在包下创建HelloSpring类,类下要声明属性以及属性对应的set方法
package com.ncwu;
public class HelloSpring{private String userName;public void setUserName (String userName){this.userName=userName;}}
  1. 目录src/main/resources下创建applicationContext.xml作为HelloSpringl类的配置文件,并在配置文件里创建Bean(对象)
<bean id="hellospring" class="com.ncwu.HelloSpring">

​ id是唯一标识,class指向com.ncwu.HelloSpring

​ spring帮助创建类的对象,唯一标识

<property name="userName" value="张"></property>

​ 为userName赋值iii

  1. Spring帮助文档获取约束信息(用AI更快,idea有模板)
  • 第一步:pom.xml里相关的依赖,引入一个依靠maven以来传递引出所有的。
  • 第二步:创建类,提供属性以及属性的set方法
  • 第三步:编写Spring的核心配置,头部信息复制,配置Bean
  • 第四步:在测试类里进行单元测试

Spring的控制反转和依赖注入(IoC)

控制反转(Inversion of Controi):是面向对象编程中的一个设计原则,用来降低程序代码之间的耦合度。在传统的面向对象的编程里,获取对象的方式是用new关键字主动创建一个对象,也就是应用程序掌握着对象的控制权

Ioc控制反转机制指的是对象由IoC容器统一管理,当程序需要使用对象时,可以直接从容器中获取,这样对象的控制权就从应用程序转移到了IoC容器。

依赖注入(Dependency Inject)

依赖注入就是有IoC容器在运行期间动态的将某种以来注入到对象中,例如将对象B注入(赋值)给对象A的成员变量。依赖注入的基本思想时明确定义组件接口,独立开发各个组件,然后根据组件依赖关系组装运行。

​ **依赖注入和控制反转从不同角度描述了同一件事。依赖注入是从应用程序角度描述,即应用程序依赖IoC容器创建并注入他所需的外部资源;而控制反转是从IoC容器角度描述,即IoC容器控制应用程序,由IoC反向的向应用程序注入应用程序所需要的外部资源(可以是外部实例对象也可以是外部文件对象) **

//获取Spring容器
ApplicationContext ac =new ClassPathXmlApplicationContext("applicationContext.xml");
//从容器中获取对象
HelloSpring helloSSpring =(HelloSpring)ac.getBean("helloSpring");
//调用对象的方法
helloSpring.show();

依赖注入的类型

实现方法

​ 依赖注入的作用就是在使用Spring框架创建对象时动态的把其多以来的对象注入到Bean组件中,依赖注入通常有两种方法:构造方法注入,属性setter方法注入

构造方法注入

Spring读取配置信息后,或通过反射方式调用实例的构造f方法,如果是有参的构造方法可以在构造方法里传入所需的参数值,最后创建类对象并赋值

<bean id="user1" class="com.ncwu.User1"><construcror-arg name="id" value="1">//arg表示参数</constructor-arg><construcror-arg name="name" value="王五"></constructor-arg>  <construcror-arg name="password" value="1234"></constructor-arg>

一个元素标识构造方法的一个参数,且定义不区分顺序,只需要通过元素的name属性指定参数即可。元素还提供了types属性类指定参数的类型,避免字符串和基本数据类型混淆

ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext-User.xml");
//加载applicationContext.xml配置
User1 user1=applicationContext.getBean("user1","User1.class");
//获取配置中的User1实例

确定参数

name属性:通过参数的名字来确定参数

type属性:通过参数的类型来确定参数

index属性:通过参数的索引来确定参数

给属性赋值的

value:用来给基本类型赋值

ref:用来给引用型类型赋值

setter方法

<bean id ="user2" class="com.ncwu.User2">
http://www.rkmt.cn/news/61570.html

相关文章:

  • 2025 年 11 月供应链管理咨询服务权威推荐榜:高效协同与降本增效的智慧解决方案,助力企业优化全链路运营
  • 【JPCS出版 | 连续多年EI稳定检索】第九届力学、数学与应用物理学国际学术会议(ICMMAP 2025)
  • 2025 年恒温恒湿系统厂家最新推荐榜:技术实力与市场口碑深度解析,覆盖多行业适配需求实验室恒温恒湿系统/车间恒温恒湿系统/仓库恒温恒湿系统/厂房恒温恒湿系统/空调恒温恒湿系统公司推荐
  • 2025年11月合肥刑事律师推荐榜:十大专业律师权威评测与选择指南
  • flask: 获取接收到的所有post参数
  • 2025年11月合肥刑事律师推荐榜单:专业律师综合对比与选择指南
  • 2025年11月山姆好吃食品推荐榜:五款热门零食综合对比与选购
  • 2025 年铝艺门厂家最新推荐榜,技术创新与品质服务双驱动的优质品牌深度解析铝艺大门/铸铝门公司推荐
  • 2025 年 11 月企业运营管理咨询公司 TOP10 权威推荐榜:战略规划、流程优化与组织效能提升的顶尖智囊深度解析
  • 获取路径
  • 2025 年填充机厂家最新推荐榜,技术创新与品质口碑双重验证的标杆品牌胶囊填充机/自动胶囊填充机公司推荐
  • 2025 年焚烧炉测试厂家最新推荐榜:技术实力与市场口碑深度解析,兼具专业性与合规性的优质品牌焚烧炉测试/测试焚烧炉/焚烧炉去除率/焚烧炉处理设施性能测试/焚烧炉水泥窑测试公司推荐
  • 杂记2025-11-24
  • 2025年深圳旧房改造公司推荐榜
  • 2025年河北叛逆行为矫正学校权威推荐榜单:青少年叛逆教育‌/叛逆期管教‌/叛逆少年学校精选
  • NOIP 集训 day4 图论 2
  • django启动,允许全部ip访问
  • 活动预告|本周六!IvorySQL 邀您相聚第八届中国 PostgreSQL 数据库生态大会
  • 突破成绩限制:后保研如何助力不同排名学生实现院校跃升?
  • 年会策划公司哪家性价比高?这十大策划公司按需选配不花冤枉钱!
  • 2025 年 11 月棒球帽品牌实力推荐榜:涵盖薄款/厚款/男款/女款/可水洗/复古款/潮流款/运动款,精选百搭设计与舒适面料之选
  • Docker安装(基于云服务器ECS实例 CentOS 7.9系统) - 教程
  • 2025 年 11 月羽绒服厂家推荐排行榜:薄款/厚款/男款/女款/可水洗/抗皱/百搭/潮流款/街头风/小红书热门款,时尚与实用兼具的冬季精选
  • 2025年高压纳米均质机工厂权威推荐榜单:均质机‌/高压均质机‌/高压细胞破壁机源头工厂精选
  • 情人节礼物推荐指南:极萌胶原炮,科技守护她的年轻光芒
  • 2025 年 11 月 GEO 公司口碑指南:多行业企业推荐合集
  • 实用指南:3个SQL聚合模式让老板以为你是数据魔法师:职场实战完全指南
  • 冲信奥赛不踩坑!5家优质辅导机构推荐及筛选技巧+核心判断标准
  • 2025薄款/厚款/男女款/可水洗羽绒服厂家推荐COVERNAT,潮流百搭个性之选
  • adb 常用命令