【JavaEE框架技术】spring-1

news2024/11/26 17:28:54

目录

一、使用maven管理spring项目

1.1搭建开发环境

1.1.1修改settings.xml文件

1.1.2把该文件拷入.m2目录

1.1.3打开ecplise,建立maven项目

1.1.4向pom.xml文件中添加spring的坐标:

 1.4.1.1代码含义

1.4.1.2代码说明

1.2创建spring配置文件

二、注入简单值

2.1设置注入

2.2构造注入

三、各种数据类型的注入

3.1注入null

3.2注入数组array

3.3注入list

3.4注入set对象

3.5注入map对象


一、使用maven管理spring项目

1.1搭建开发环境

使用Maven+eclipse

1.1.1修改settings.xml文件

1.1.2把该文件拷入.m2目录

1.1.3打开ecplise,建立maven项目

1.1.4向pom.xml文件中添加spring的坐标:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cn.edu.aaa</groupId>
  <artifactId>demo1</artifactId>
  <version>0.0.1-SNAPSHOT</version>

<dependencies>
  	<dependency>
  		<groupId>org.springframework</groupId>
  		<artifactId>spring-context</artifactId>
  		<version>5.3.23</version>
  	</dependency>
  </dependencies>
</project>
 1.4.1.1代码含义

这个pom.xml文件定义了一个Maven项目,其groupId为cn.edu.aaa,artifactId为demo1,版本为0.0.1-SNAPSHOT,并且该项目依赖于spring-context库,版本为5.3.23。当你使用Maven构建此项目时,Maven会自动下载并包含这个依赖库。

1.4.1.2代码说明

1)groupId是项目组的唯一标识符。它通常代表项目所属的实际项目或组织。在这个例子中,它是cn.edu.aaa`。

2)artifactId是项目的唯一标识符,通常与项目的名称相对应。在这个例子中,项目名是demo1`。

3)version定义了项目的当前版本。SNAPSHOT`是一个特殊的版本,它表示当前的开发版本,通常用于开发过程中的版本控制。

4)<dependencies>这个标签用于定义项目所依赖的其他库或框架。

5)这是一个依赖项,它指定了项目需要spring-context库,该库由org.springframework组提供,版本为5.3.23

1.2创建spring配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop"
    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
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context.xsd
   http://www.springframework.org/schema/aop 
   http://www.springframework.org/schema/aop/spring-aop.xsd">
</beans>

3.建立业务模型

二、注入简单值

2.1设置注入

设置注入- 通过调用settor方法进行注入

1)beans.xml配置文件

2)Student.java 学生实体类

 

3)测试类

 代码分析

ApplicationContext context=new ClassPathXmlApplicationContext("beans.xml");

 代码含义:

这行代码执行后,context变量就持有一个指向初始化好的ApplicationContext的引用,你可以通过这个context来获取、管理在beans.xml中定义的bean

代码说明:

1)ApplicationContext:这是Spring框架中的一个核心接口,代表Spring IoC容器,负责管理应用程序中的bean。

2)new ClassPathXmlApplicationContext("beans.xml"):这是ApplicationContext的一个实现类的构造方法。它告诉Spring从类路径(classpath)下查找名为beans.xml的Spring配置文件,并基于该文件的内容来初始化一个ApplicationContext容器。

3)beans.xml:这是Spring的一个配置文件,通常使用XML格式。该文件定义了Spring容器中的bean以及它们之间的依赖关系。

StudentBiz biz=context.getBean(StudentBiz.class);

代码说明:

 1)StudentBiz biz:定义一个StudentBiz类型的变量bizStudentBiz是一个接口,它定义了某些业务逻辑或功能。

2)context.getBean(StudentBiz.class):调用ApplicationContextgetBean方法,并传入StudentBiz.class作为参数。这告诉Spring容器,我们想要获取一个类型为StudentBiz的bean实例 

2.2构造注入

构造注入 – 调用构造方法进行注入

beans.xml配置文件

 学生实体类

测试类

三、各种数据类型的注入

3.1注入null

涉及:Student对象、pet对象

注意:pet的类型会发生变化

Student.java 

 beans.xml

3.2注入数组array

Student.java

 beans.xml

3.3注入list

Student.java

bean.xml

3.4注入set对象

Student.java

beans.xml 

3.5注入map对象

Student.java

beans.xml 

 附件:

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

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

相关文章

7.1.4 Selenium 爬取京东商品信息实战

目录 1、实战内容 2、思路 3、分析 url 4、开始操作 1、得到 Cookies 2、访问页面&#xff0c;得到 response 3、解析页面 4、存入 MySQL 5、1-3步总代码 1、实战内容 爬取京东笔记本电脑商品的信息(如&#xff1a;价格、商品名、评论数量)&#xff0c;存入 MySQL 中…

RAG基础知识及应用

简单介绍下RAG的基础知识和RAG开源应用 “茴香豆" 一. RAG 基础知识 1. RAG工作原理 RAG是将向量数据库和大模型问答能力的有效结合&#xff0c;从而达到让大模型的知识能力增加的目的。首先将知识源存储在向量数据库中&#xff0c;当提出问题时&#xff0c;去向量数据库…

ENVI实战-影像的下载和矢量边界裁剪

实验1&#xff1a;学会使用不同的遥感数据检索和下载平台 目的&#xff1a;学会使用不同的数据平台&#xff0c;检索和下载所需的遥感数据。 过程&#xff1a; ①基于地理空间数据云的数据检索和下载方法&#xff1a; A.网站进入&#xff1a;网络搜索&#xff1a;https://w…

Notepad++软件安装及配置说明

Notepad是 Windows操作系统下的一套文本编辑器&#xff0c;有完整的中文化接口及支持多国语言编写的功能。 Notepad功能比 Windows自带记事本强大&#xff0c;除了可以用来制作一般的纯文字说明文件&#xff0c;也十分适合编写计算机程序代码。Notepad不但可以显示行号&#xf…

ABC库存分类管理法

ABC库存分类管理法&#xff1f; ABC分类法是根据物品在技术或经济方面的主要特征&#xff0c;进行分类排队&#xff0c;将分析对象划分成A、B、C三类&#xff0c;从而有区别地确定管理方式的分析方法。 ABC分类法来源与定义 1951年美国通用公司经理戴克将“关键的少数和次要的…

day76 jquery

知识点: 1 在HTML中引入jQuery 2 jQuery中就绪函数 3 jQuery中选择器 4 使用jQuery获取表单元素的值 及标签中间的内容 5 jQuery中获取标签属性 6 jQuery设置和获取标签样式 ----------------------------------- 一 在HTML中引入jQuery 1 1) 把jQue…

3.C++ Make

1.Makefile 1.1 什么是 Makefile 一个工程中有很多文件&#xff0c;文件之间都是相辅相成有着编译的先后顺序&#xff0c;但是如果自己手动根据编译顺序编译文件造成速度非常慢。Makefile 是”自动化编译“&#xff0c;只需一个 make 指令系统就会根据编译顺序帮自己编译文件…

excel散点图怎么每个点添加名称

最终效果图&#xff1a; 添加图标元素->数据标签->其他数据标签选项 选择单元格中的值 手动拖动数据标签&#xff0c;调整到合适的位置。

Spring学习笔记:IOC控制反转、AOP面向切面

挺快的&#xff0c;框架这一部分 文章目录 一、Spring概述入门案例导入依赖包在src下写配置文件创建普通类和测试类 二、IOC&#xff08;控制反转&#xff09;2.1 IOC bean 的XML操作&#xff08;创建对象&#xff0c;注入属性2.2 IOC bean 的 注解 操作 三、AOP&#xff08;面…

《UE5_C++多人TPS完整教程》学习笔记31 ——《P32 角色移动(Character Movement)》

本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P32 角色移动&#xff08;Character Movement&#xff09;》 的学习笔记&#xff0c;该系列教学视频为 Udemy 课程 《Unreal Engine 5 C Multiplayer Shooter》 的中文字幕翻译版&#xff0c;UP主&#xff08;也是译者&…

用国内版Devin:DevOpsGPT开发一个简易官网

前言&#xff1a; 世界上第一个AI程序员Devin想必已经给大家带来了不小的震撼&#xff0c;这种L4级的技术也许已经昭示着AGI离我们或许真的不远了。 这里先给大家普及一个概念&#xff1a; L4是谷歌对AGI划分的第四个等级&#xff0c;把代码丢给 AI 改这个是 L1 或者 L2 级别的…

CentOS7安装Docker及禅道

https://blog.csdn.net/weixin_46453070/article/details/136183615?ops_request_misc%257B%2522request%255Fid%2522%253A%2522171246925816800222886233%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id171246925816800222886233&biz_i…

基于RTThread的学习(三):正点原子潘多拉 QSPI 通信 W25Q128 实验

1、基于芯片创建工程 2、QSPI配置 2.1、RTThing_setting 设置组件 2.2、配置board.h 文件 2.3、cubemx生成QSPI的硬件初始化代码&#xff1b;HAL_QSPI_MapInit; 这里注意&#xff1a;你所买的开发板对应的qspi 连接的是否是cubemx 上边显示的&#xff0c;如果不是你需要将引脚…

Spring Security——13,认证成功失败注销成功处理器

认证成功&&失败&&注销成功处理器 说明&#xff1a;一、认证成功处理器1.1 自定义成功处理器1.2 配置自定义成功处理器 二、认证失败处理器2.1 自定义失败处理器2.2 配置自定义失败处理器 三、登出成功处理器3.1 自定义登出处理器3.2 配置登出处理器 四、完结撒…

聊一聊,JMeter分布式性能测试!

在做后端服务器性能测试中&#xff0c;我们会经常听到’分布式’。但你是否了解分布式呢&#xff1f;今天&#xff0c;我们就来给大家讲讲&#xff0c;在企业实战中&#xff0c;如何使用分布式进行性能测试&#xff0c;实战过程中&#xff0c;又有哪些地方要特别注意&#xff1…

Inotify

一、关于Inotify linux内核的inotify机制 可以监测文件系统的变动情况&#xff0c;并做出通知响应 二、关于inotify 使用inotify通知接口&#xff0c;可以用来监控文件系统的各种变化情况&#xff0c;可以非常方便地实现文件异动告警、增量备份&#xff0c;并针对目录或文件的…

transformer上手(1) —— transformer介绍

1 起源与发展 2017 年 Google 在《Attention Is All You Need》中提出了 Transformer 结构用于序列标注&#xff0c;在翻译任务上超过了之前最优秀的循环神经网络模型&#xff1b;与此同时&#xff0c;Fast AI 在《Universal Language Model Fine-tuning for Text Classificat…

烤羊肉串引来的思考--命令模式

1.1 吃羊肉串&#xff01; 烧烤摊旁边等着拿肉串的人七嘴八舌地叫开了。场面有些混乱&#xff0c;由于人实在太多&#xff0c;烤羊肉串的老板已经分不清谁是谁&#xff0c;造成分发错误&#xff0c;收钱错误&#xff0c;烤肉质量不过关等。 外面打游击烤羊肉串和这种开门店做烤…

Windows系统下安装java开发环境所需的JDK开发工具包

目录 一、JDK开发工具包下载二、安装三、环境变量配置3.1 添加安装包路径3.2 添加lib路径3.3 添加bin目录 四、检查是否安装成功五、总结 一、JDK开发工具包下载 官网地址&#xff1a;JDK下载 打开网址后有多个版本的JDK&#xff0c;学者根据自己电脑需求选择对应版本下载。如…

类,构造,this,static

第1关&#xff1a;什么是类&#xff0c;如何创建类 100 任务要求参考答案 任务描述相关知识 什么是类怎么定义类创建对象并且使用对象的属性和方法编程要求测试说明 任务描述 本关任务&#xff1a;创建一个类和一个对象&#xff0c;调用这个对象的属性和方法。 相关知识 …