第一个Spring程序

Spring是一个轻量级开源框架,由一个叫Rod Johnson的程序员在 2002 年提出并创建。

1.创建maven工程

2.添加Spring依赖

在maven项目的pom.xml文件中添加一下代码

<dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.3.18</version>
</dependency>
<dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>5.3.18</version>
</dependency>
<dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>5.3.18</version>
</dependency>

3.创建Spring配置文件

在Resources目录下创建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/beanshttps://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="..." class="...">  <!-- collaborators and configuration for this bean go here --></bean><bean id="..." class="..."><!-- collaborators and configuration for this bean go here --></bean><!-- more bean definitions go here --></beans>

4.创建实体类

public class Student {private String id;private String name;private String sex;private int age;public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Student{" +"id='" + id + '\'' +", name='" + name + '\'' +", sex='" + sex + '\'' +", age=" + age +'}';}
}

5.配置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/beanshttps://www.springframework.org/schema/beans/spring-beans.xsd"><!--将指定类配置给Spring,创建Bean实例--><bean id="student" class="com.gyh.ioc.pojo.Student"></bean></beans>

6.测试

public class Test {public static void main(String[] args) {//初始化Spring容器并加载配置文件ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");//通过getBean方法获取指定的Bean,获取之后需要进行强制类型转换Student student = (Student) context.getBean("student");System.out.println(student);}
}

运行结果:

这里可以看到,我们没有使用new关键字来创建对象,而是通过Spring成功获取了Student的实现类对象,这就是SpringIoC容器的工作机制。

通过配置文件给对象的属性赋值

<bean id="student" class="com.gyh.ioc.pojo.Student"><property name="id" value="1001"/><property name="name" value="Spring"/><property name="sex" value="男"/><property name="age" value="18"/></bean>
  • 运行结果

因此我们不仅可以通过配置文件创建实现类的对象,还可以给对象的属性赋值。

【关于Spring那些事】——与君初相识相关推荐

  1. JavaScript——与君初相识

    什么是JavaScript 解释 JavaScript是一种轻型脚本语言,在客户端运行之前不需经过编译,而是将文本格式的字符代码发送给浏览器由浏览器解释运行. 组成 由三部分组成: ECMAScrip ...

  2. java--与君初相识

    first point:   先安装 jdk(http://www.oracle.com/technetwork/java/javase/downloads/index.html),必须先选择acce ...

  3. 与君初相识之Linux与Java SE

    Linux入门常识 // Linux OS; // 文件系统; // Linux 相当于只有一个C:\ 的Windows系统,省略了盘符C; // Linux 文件系统的根目录只有一个,"\ ...

  4. java--与君初相识之jdk的环境配置

    jdk的下载目录已经在上一篇文章给出. 现在提出几点需要注意的地方,都是我踩过的坑: 1. jdk的安装目录必须在c盘,安装在其他盘,cmd下运行不了 2.配置环境变量时,你一定要一开始就把原先的Pa ...

  5. JavaScript 教程「1」:与君初相识

    什么是 JavaScript 作为世界上最流行的语言之一,是一种运行在客户端的脚本语言.而所谓脚本语言,就是不需要编译就能运行的编程语言,JavaScript 在运行过程中通过 JS 解释器来逐行解释 ...

  6. Hive查询系列之初相识

    Hive查询系列之初相识 1 基本查询(select--from) 1.1 全表和特定列查询 0)数据准备 (0)原始数据 dept: 10 ACCOUNTING 1700 20 RESEARCH 1 ...

  7. 数据可视化组队学习:《Task01 - Matplotlib初相识》笔记

    第一回:Matplotlib初相识 本文为组队学习任务01学习笔记. Matplotlib简要总结 Matplotlib的结构 一个完整的Matplotlib图像包括四个层级: Figure:容纳所有 ...

  8. mysqldump单个库导出_初相识 | 全方位认识 sys 系统库

    前阵子,我们的"全方位认识performance_schema"系列为大家完整的介绍了performance_schema系统库.在我们的发布计划中为什么要把performance ...

  9. (二)HTTP初相识--了解HTTP协议

    HTTP初相识--了解HTTP协议 浏览器背后的故事 HTTP协议的前世今生 透过TCPIP看HTTP DNS域名解析 回溯HTTP事务处理过程 与HTTP请求的第一次亲密接触 浏览器背后的故事 通过 ...

最新文章

  1. 2021年大数据Spark(十九):Spark Core的​​​​​​​共享变量
  2. Linux 学习之虚拟机下的网络连接
  3. 当一个有性能问题的数据库摆在你的面前,作为责任人,你的处理思路是什么?...
  4. window和 linux 在一起 ios和 android在一起 net和js在一起
  5. 小程序禁用ios 左右滑动_如何在使用应用程序时禁用iOS控制中心
  6. ArcGIS实验教程——实验九:矢量数据提取
  7. AcWing 1087. 修剪草坪28
  8. ThinkPHP6项目基操(16.实战部分 redis+token登录)
  9. 地磅称重软件源码_地磅称重软件需求梳理的重要性
  10. api网关配置协议服务器,api网关配置协议服务器
  11. 003 第一个Python程序
  12. 直播盒子源码与直播盒子APP如何对接自动发卡平台
  13. 你利用好网络这个工具了吗?
  14. QT修改QPushButton的背景色和文字颜色
  15. cocos creator如何实现微信好友自定义转发分享功能
  16. Typora+PicGo+Gitee
  17. struts2远程代码执行漏洞合集
  18. Nokia s60v5 j2me禁用softkeypad
  19. oracle 二进制算法,二进制搜索(查找)
  20. HTML5交互性是什么意思,HTML5的结构和语义(5):交互

热门文章

  1. java do po dto_彻底搞懂DAO,PO,BO,DTO,VO,DO
  2. ZZULIOJ 1919 D
  3. Spring微服务实战第1章 欢迎迈入云世界,Spring
  4. 11.21的自动锁屏 ios_iPhone11 的新手小技巧
  5. 英语语法回顾7——状语从句特殊用法
  6. 互联网三大巨头依靠什么武器对垒O2O?
  7. SpringBoot项目的Liunx服务器部署(一)
  8. 语言和语义(一,什么是语言)
  9. sql 基础语法 创建数据库和数据表 数据增删改查 分组查询 子查询回顾
  10. Oracle DBA 转行,作为一名oracle dba需要学习的知识