【JavaEE框架技术】spring-1

目录

一、使用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/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsdhttp://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.rhkb.cn/news/301451.html

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

相关文章

OpenHarmony实战:瑞芯微RK3566移植案例(下)

OpenHarmony实战&#xff1a;瑞芯微RK3566移植案例&#xff08;下&#xff09; OpenHarmony实战&#xff1a;瑞芯微RK3566移植案例&#xff08;中&#xff09; WIFI 整改思路及实现流程 整改思路 接下来熟悉HCS文件的格式以及"HDF WIFI”核心驱动框架的代码启动初始化…

Cali Linux上的PoshC2安装和使用

一、安装PoshC2 curl -sSL https://raw.githubusercontent.com/nettitude/PoshC2/master/Install-for-Docker.sh | sudo bash二、创建工程 posh-project -n test三、修改配置文件 posh-config将图中的baidu.com改为自己要攻击的域名或者IP地址 四、执行 posh-server 显示没…

kettle介绍-Step之CSV Input

CSV Input/CSV 文件输入介绍 CSV 文件输入步骤主要用于将 CSV 格式的文本文件按照一定的格式输入至 流中 Step name:步骤的名称&#xff0c;在单一转换中&#xff0c;名称必须唯一Filename:指定输入 CSV 文件的名称&#xff0c;或通过单击右边的“浏览”按钮指定本地的 CSV …

PicGo日志报错 image not found in clipboard

PicGo: image not found in clipboard 文章目录 PicGo: image not found in clipboard问题描述问题尝试解决方案 问题描述 背景&#xff1a;在剪切板中的图片无法通过 PicGo 的剪切板图片进行上传。 读取PicGo 日志报错&#xff0c;显示图片没有在剪切板中找到。 $ ------Erro…

【信贷后台管理之(五)】

文章目录 目录结构一、面包屑组件封装二、退出登录接口联调三、申请列表的菜单路由3.1 路由创建&#xff0c;表格编写3.2 列表接口调用3.3 出生日期转变3.4 申请状态3.5 申请列表的操作3.5.1 编辑删除提交操作3.5.2 禁用状态3.5.3 操作接口3.5.4 搜索查询3.5.5 申请列表分页功能…

预处理不求人!教你如何轻松搞定

1. 预定义符号 2. #define定义常量 3. #define定义宏 4. 带有副作⽤的宏参数 5. 宏替换的规则 6. 宏函数的对⽐ 7. #和## 8. 命名约定 9. #undef 10. 命令⾏定义 11. 条件编译 12. 头⽂件的包含 13. 其他预处理指令 正文开始&#xff1a; 1. 预定义符…

【C#】版本号

&#x1f4bb; 代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace ConsoleApp16 {internal class Program{static void Main(string[] args){Version version01 new Version("4.0.0…

鲁大师2024年新能源汽车Q1季报:问界M7蝉联智能榜单第一

回顾2024年的开局&#xff0c;比亚迪掀桌子&#xff0c;高合下桌子&#xff0c;行业已经进入惨烈的淘汰赛阶段&#xff1b;理想MEGA首发失利&#xff0c;问界销量步步紧逼&#xff0c;蔚来宣布全系焕新&#xff0c;新势力们也在继续着「攻与守」&#xff1b;而我们的新玩家小米…

linux通配符

通配符&#xff0c;它是一种用于匹配文件名的特殊字符。通配符在Linux中可以帮助我们更加方便和快捷地查找和操作文件。

【Nuxt3】内置组件介绍

简言 介绍下nuxt3的内置组件用法。 ClientOnly 使用 <ClientOnly> 组件仅在客户端渲染组件。 属性&#xff1a; placeholderTag | fallbackTag — 指定要在服务器端呈现的标记。placeholder | fallback — 指定要在服务器端渲染的内容&#xff0c;并在浏览器挂载 <…

【无标题】nodejs+mogoodb数据库写注册接口

描述 本篇文章主要记录使用nodejs express搭建服务器&#xff0c;并链接mogoodb数据来书写简单的后台接口&#xff1b;前端项目使用的vue2的一个酒店管理项目。阅读本文章&#xff0c;可以了解如何连接mogoodb数据库&#xff0c;和一些对数据库进行操作的命令。前端如何进行跨…

RISC-V特权架构 - 模式切换与委托

RISC-V特权架构 - 模式切换与委托 1 导致模式切换的常见动作2 异常处理规则3 异常处理时模式切换3.1 在U模式下&#xff0c;发生异常3.2 在S模式下&#xff0c;发生异常3.3 在M模式下&#xff0c;发生异常 4 系统调用时模式切换5 中断处理时模式切换 本文属于《 RISC-V指令集基…

图像处理环境配置opencv-python

下载python&#xff0c;配置pip使用清华源下载镜像&#xff1a; pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple 切换到python目录下&#xff0c;右击cmd&#xff0c;执行pip升级指令: python -m pip install --upgrade pip 下载opencv&#x…

西圣、万魔、倍思开放式耳机值不值得买?测评对比探讨!

自开放式耳机问世以来&#xff0c;便凭借其独特魅力赢得了众多音乐爱好者的青睐。它不仅佩戴起来舒适无比&#xff0c;还能让用户随时聆听周围的环境声音&#xff0c;保持与外界的沟通。同时&#xff0c;在卫生方面也有着不俗的表现。相较于传统的入耳式耳机&#xff0c;这些优…

uniapp使用npm命令引入font-awesome图标库最新版本并解决APP和小程序不显示图标的问题

uniapp使用npm命令引入font-awesome图标库最新版本 图标库网址&#xff1a;https://fontawesome.com/search?qtools&or 命令行&#xff1a; 引入 npm i fortawesome/fontawesome-free 查看版本 npm list fortawesome在main.js文件中&#xff1a; import fortawesome/fo…

嵌入式Linux系统调用执行基本流程

内核态与用户态 什么是系统调用 系统调用是怎么实现的 库函数write 库函数扩展汇编宏 int 0x80中断 调用对应的中断处理函数 检索系统调用函数表 最终执行sys_write 内核态与用户态数据交互 内核态与用户态 早期工程师们在操作系统上编写程序的时候,自己写个程序可以访问别人…

3.5、文本显示(Text/Span)

创建文本 Text 可通过以下两种方式来创建: string 字符串 效果图 Text(我是一段文本)引用 Resource 资源 资源引用类型可以通过 $r 创建 Resource 类型对象,文件位置为 /resources/base/element/string.json。 引用的资源位于:src/main/resources/base/element/string…

红酒:按年份分类,探究不同类型红酒的品质

在红酒的世界里&#xff0c;年份是一个至关重要的因素&#xff0c;它对红酒的品质和价值有着深远的影响。云仓酒庄雷盛红酒深知这一点&#xff0c;从酿造的首年起&#xff0c;就严格把控每一个环节&#xff0c;力求为消费者提供品质的红酒。 首先&#xff0c;让我们了解一下什么…

飞企互联-FE企业运营管理平台 druid路径 弱口令漏洞复现

0x01 产品简介 飞企互联-FE企业运营管理平台是一个基于云计算、智能化、大数据、物联网、移动互联网等技术支撑的云工作台。这个平台可以连接人、链接端、联通内外,支持企业B2B、C2B与O2O等核心需求,为不同行业客户的互联网+转型提供支持。 0x02 漏洞概述 飞企互联-FE企业…

ctf刷题记录2(更新中)

因为csdn上内容过多编辑的时候会很卡&#xff0c;因此重开一篇&#xff0c;继续刷题之旅。 NewStarCTF 2023 WEEK3 Include &#x1f350; <?phperror_reporting(0);if(isset($_GET[file])) {$file $_GET[file];if(preg_match(/flag|log|session|filter|input|data/i, $…