Spring框架概述(快速入门)

Spring 框架概述:

目录

Spring 框架概述:

1.Spring 是轻量级的开源的 javaEE 框架

2.Spring 有两个核心部分:IOC 和 AOP:

3.Spirng 特点:

4.Spring 的下载

5.接下来,通过一个小例子来掌握spring入门:

6.创建普通类,在这个类里面创建普通方法

7.创建spring的配置文件,在配置文件中配置创建的对象

8.进行测试代码编写

步骤回顾:


1.Spring 是轻量级开源的 javaEE 框架

  • 轻量级的:Spring 引入的相关 jar 包非常小,非常少
  • 开源的:免费提供源代码
  • 框架:用了 Spring 开发效率会提高,复杂—>简单化

2.Spring 有两个核心部分:IOC 和 AOP:

  • IOC(控制反转):把创建对象过程交给 Spring 进行管理
  • AOP(面向切面):不修改源代码,只在此基础上进行功能增强

3.Spirng 特点:

  • 方便解耦,简化开发
  • AOP编程支持
  • 方便程序测试
  • 方便和其他框架进行整合
  • 方便进行事物操作
  • 降低API开发难度
  • 上面几点,开始看的确实挺懵逼的,感觉看了半知半解的感觉,但是通过后面的学习再回头看就会豁然开朗!

4.Spring 的下载

https://repo.spring.io/release/org/springframework/spring/

选择一个最新的版本下载

压缩包下载完成后选择一个文件夹解压

我的是 D:\spring\spring-framework-5.2.9.RELEASE\libs 点进去后

把里面spring关键需要的一些  jar 包选择出来

将这几个单独整理出来,还需要加上 commons-logging-1.2.jar 包

5.接下来,通过一个小例子来掌握spring入门:

1.首先:打开 idea ,新建一个项目,将这个5个  jar 包都复制过来

文件夹名为 lib,如: 

将 jar 包导入到模块中,步骤如下:

导入结果成功如下:

6.创建普通类,在这个类里面创建普通方法

先创建普通类,在src目录下新建个包

步骤:src下--》右键new--》package--》com.xxx.xxx

新建一个类,类名叫 User

类里面的内容如下,简单创建一个普通的方法

package com.lbj.spring5;public class User {public void add(){System.out.println("实现了spring");}
}

按照正常思路:类的对象创建,应该是new 一个User类,才能把对象创建。

但是我们现在需要通过spring来创建,来我们接着往下看

spring中创建对象有多种方式,我们可以通过【配置文件】做到

7.创建spring的配置文件,在配置文件中配置创建的对象

(1)spring 配置文件使用 xml  格式 

步骤:创建一个xml文件

通过 <bean> 标签完成相关操作【固定写法】

 步骤如下:id="user"的"user"不是对象名字,而是一个【别名】,在测试的方法中能通过这个id值找到对象user

<?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.xsd">
<!--配置  User对象创建--><bean id="user" class="com.lbj.spring5.User"></bean>
</beans>

8.进行测试代码编写

步骤:新建一个包,在这个包创建测试类

在包中新建测试类

为了方便调试代码,在类中加入单元测试【alt+enter弹出补全】

将一个普通方法testAdd()写入类中,我们需要通过这个方法:

1.加载spring配置文件

2.获取配置创建的对象,通过context得到对象【注意:我们方法获取对象的方式就此改变】

package com.lbj.spring5.testdemo;import org.junit.Test;public class TestSpring5 {@Testpublic void testAdd(){}
}

(2)在测试方法中加入代码

package com.lbj.spring5.testdemo;import com.lbj.spring5.User;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class TestSpring5 {@Testpublic void testAdd(){//1.加载spring配置文件//这个参数是通过上下文配置文件找到xml配置文件ApplicationContext context=new ClassPathXmlApplicationContext("bean1.xml");//2.获取配置创建的对象,通过context.getBean()方法,得到对象User user=context.getBean("user", User.class);//3.做输出System.out.println(user);//4.通过user调用add()方法user.add();}
}

进行单元测试:

运行结果:【完成spring入门过程】

步骤回顾:

1.下载spring框架

2.创建项目

3.引入依赖

4.创建一个类,写入一个方法

5.创建一个xml配置文件,用<bean>把类对象创建出来

6.写测试代码,加载配置文件得到xml配置创建的对象

7.输出调用

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/501190.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

初学者怎么自学python编程_怎样自学python编程?从零开始学习python,400集免费教程!...

作为小白&#xff0c;在学习Python的时候&#xff0c;必然会走一定的弯路&#xff0c;有人在弯路上走丢了&#xff0c;有人走出了弯路。我就是属于还未走出弯路的同学&#xff0c;所以我想谈谈我的Python学习之路。 01先了解一下什么是python‍&#xff1f; Python 是一种通用的…

IOC容器(底层原理解读)

IOC的概念和原理 目录 IOC的概念和原理 1.什么是IOC &#xff08;1&#xff09;控制反转&#xff1a; &#xff08;2&#xff09;使用IOC的目的&#xff1a;降低耦合度 &#xff08;3&#xff09;IOC解耦过程图解 2.IOC的底层原理 3.IOC接口 &#xff08;1&#xff09…

python怎么画图片 wafer map_Python wafer_map包_程序模块 - PyPI - Python中文网

晶圆图 绘制一张晶圆图。用于半导体加工和分析。 内容安装 用法键盘快捷键和鼠标用法rel"nofollow">键盘快捷键和鼠标用法 注意事项当前能力 更改日志 功能鼠标和键盘快捷键&#xff01; 知道半M1-0302晶圆尺寸&#xff01; 你可以改变颜色&#xff01; 放大缩小&…

IOC操作Bean管理XML方式(创建对象和set注入属性)

目录 1.什么是 Bean 管理&#xff1a; &#xff08;1&#xff09;通过 Spring 创建对象 &#xff08;2&#xff09;通过 Spring 注入属性 2.IOC 操作 Bean 管理有两种方式&#xff1a; &#xff08;1&#xff09;基于 xml 配置文件方式实现 &#xff08;1.1&#xff09;基…

c# 结构体 4字节对齐_【专题4:平时遇到的问题】 之 【3.由结构体字节对齐引发的通信故障】...

希望本是无所谓有&#xff0c;无所谓无的&#xff0c;这正如脚下的路&#xff0c;其实地上本没有路&#xff0c;走的人多了&#xff0c;也便成了路....原创不易&#xff0c;文章会持续更新&#xff0c;感谢您的关注1.问题由来MCU给上位机发送的一帧数据中&#xff0c;总是多一个…

android 全局hook_【Hook】实现无清单启动Activity

引子Hook技术在android开发领域算是一项黑科技&#xff0c;那么一个新的概念进入视线&#xff0c;我们最关心的3个问题就是&#xff0c;它是什么&#xff0c;有什么用&#xff0c;怎么用本系列将由浅入深 手把手讲解这三大问题。本文是第三篇&#xff0c; 高级篇。前面两篇Hook…

IOC操作Bean管理XML方式(有参构造注入属性)

IOC操作Bean管理XML方式 目录 有参构造注入属性 &#xff08;1&#xff09;步骤&#xff08;创建类&#xff0c;定义属性&#xff0c;创建属性对应的有参构造方法&#xff09;&#xff1a; &#xff08;2&#xff09;步骤&#xff1a;在Spring 的xml配置文件中进行配置 &a…

python3调用java_Python3-JPype调用Java代码

原博文 2019-12-31 10:54 − ## JPype调用Java代码 ### 安装所需要的库 python pip install JPype1-py3### 准备一个jar包 #### java工程目录 ![](https://img2018.cnblogs.com/blog/1895590/201912/18955... 相关推荐 2019-12-06 14:59 − 近期在Python中使用java语言的时候有…

IOC操作Bean管理XML方式(P名称空间注入)

P名称空间注入&#xff08;用的不多&#xff0c;但是也是一种方式&#xff09; 目录 P名称空间注入&#xff08;用的不多&#xff0c;但是也是一种方式&#xff09; &#xff08;1&#xff09;使用P名称空间注入&#xff0c;可以简化基于xml 配置方式 第一步&#xff1a;添…

textview 结束后释放_等待按键释放,你的代码如何写?

今天&#xff0c;还是一个问题&#xff0c;在QQ群(300384358)里有小伙伴一直在问一个问题&#xff0c;如上图。一个按键控制电机的转动&#xff0c;按键按下后&#xff0c;电机转动&#xff0c;按键释放&#xff0c;电机停止&#xff0c;再加一个按键按下时长的检测&#xff0c…

IOC操作Bean管理XML方式(注入空值和特殊符号)

IOC操作Bean管理XML方式&#xff08;注入空值和特殊符号&#xff09; 目录 IOC操作Bean管理XML方式&#xff08;注入空值和特殊符号&#xff09; &#xff08;1&#xff09;通过null标签注入空值&#xff1a; 标签注入空值 &#xff08;2&#xff09;属性值中包含特殊符号…

麦克风增强软件_唱吧麦克风不会唱歌用它唱都好听,《向往的生活》同款麦克风...

当代年轻人的快乐&#xff0c;其实很简单。被工作狠狠虐了千百遍后&#xff0c;只要到KTV吼几嗓子放松一下&#xff0c;就又和这个世界和解了。唱歌&#xff0c;真的是一件解压又治愈的事情。就像《向往的生活》里&#xff0c;何炅、黄磊和其他嘉宾&#xff0c;饭后娱乐就是唱歌…

bert 多义词_广告行业中那些趣事系列15:超实用的基于BERT美团搜索实践

摘要&#xff1a;本篇主要学习和分析BERT在美团搜索排序中的项目实践。首先介绍了业务背景&#xff0c;主要对比了美团搜索业务场景和我们的应用场景&#xff1b;然后讲了下计算query和doc相关性的方法&#xff0c;主要包括计算字面相关性和计算语义相关性&#xff0c;重点介绍…

vba 跳到下一个循环_遍历工作薄和工作表(For Each循环的利用)

今日的内容是“VBA之EXCEL应用”的第三章“工作簿(Workbook)和工作表(Worksheet)对象(Object)”中第三节“遍历工作薄和工作表(For Each循环的利用)”。“VBA之EXCEL应用”这套教程从简单的录制宏的讲解&#xff0c;一直到窗体的搭建&#xff0c;内容丰富&#xff0c;案例众多。…

IOC操作Bean管理XML方式(注入外部bean)

目录 1..注入属性-外部 bean &#xff08;1&#xff09;创建两个类 service 类和 dao 类【分别创建两个包存放两个类】 &#xff08;2&#xff09;在 service 调用 dao 里面的方法 &#xff08;3&#xff09;&#xff08;后来做法&#xff09;在Spring 配置文件中进行配置 1…

数据增强 transform_深度学习-Pytorch框架学习之数据处理篇

前言数据是深度学习的核心&#xff0c;大部分论文里都会提到data-driven这个词&#xff0c;也就是数据驱动的意思。基本的模型搭建完成后&#xff0c;如何处理数据&#xff0c;如何将数据送给网络&#xff0c;如何做数据增强等等&#xff0c;对于提高网络的性能都十分重要&…

IOC操作Bean管理XML方式(注入内部 bean 和 级联赋值)

目录 1.注入属性-内部 bean &#xff08;1&#xff09;一对多关系&#xff1a;部门和员工 &#xff08;2&#xff09;在实体类之间表示一对多关系 &#xff08;3&#xff09;在Spring 配置文件中进行配置 2.注入属性-级联赋值 &#xff08;1&#xff09;第一种写法类似外部…

单处理机系统的进程调度动态优先_操作系统复习笔记(王道)C2.1

进程与线程一、进程特征和概念前提&#xff1a;允许多个程序并发执行。1.概念PCB(process control block)进程控制块&#xff0c;系统利用 PCB 来描述进程的基本情况和运行状 态&#xff0c;进而控制和管理进程。PCB是进程存在的唯一标志。进程是进程实体的运行过程&#xff0c…

非线性动力学_非线性科学中的现代数学方法:综述

Ch0【引言】本文是作者的一个总结&#xff0c;力图在极度繁杂的数理知识体系中摘选出那些最广泛应用的核心工具及思想。本文主要关注的问题都是非线性的、动态的。具体地讲&#xff0c;主要涉及的是&#xff1a;微分动力系统、泛函的最优化初步&#xff08;但不涉及最优控制及微…

IOC操作Bean管理XML方式(注入集合类型属性)

目录 IOC操作Bean管理XML方式&#xff08;注入集合类型属性&#xff09; &#xff08;1&#xff09;首先进行环境的搭建和准备 &#xff08;2&#xff09;创建一个类&#xff1a;用来完成集合类型属性注入 &#xff08;3&#xff09;在Spring 配置文件进行配置 &#xff0…