用idea 创建一个spring小demo,基于xml文件配置
1、首先,File->new->project ,进入新增项目页面

或者在

2、勾选spring,然后点击下一步

3、修改项目名称和项目位置

进入页面后

5、创建一个spring配置文件


6、创建Person类

7、配置bean, <bean></bean>,name对应属性,value赋值

8、测试类,配置文件名和id不能错。

补充:
1、还有一种用构造器来配置的用法,这里会默认与实体类person中的构造方法一致,另外要注意使用构造器配置,实体类中需要有构造方法,否则配置文件报错

如果实体类中含有混淆的构造方法,这里需要再添加属性type。

2、关于bean之间的引用,新建一个House类,例如Person类引用了House类,Person类每次新增属性,都需要重写一次toString()方法和相应的getter和setter方法。



这时候配置有两种方式:
1建两个bean

2.在bean的内部建一个bean

关于value的赋值还可以这样写

如果String类型的值需要一些特殊符号如:<,这样就会报错,这时候需要< ! [CDATA[ 值 ] ]来进行处理


3、在配置文件里,配置list,set,array,map等,例如一个人有很多车,先建一个Car类,生成setter,getter,toString()方法,在Person类中引用。


然后配置文件里先写连个关于car的bean,再通过<list></list>进行引用,如果属性是Array或set型,换成相应的标签即可。

还有一种map类型的配置,同理还是一个人有很多车,创建属性,生成setter和getter方法,重写toString()方法

配置文件:这里使用entry标签,key对应着Map<Integer, Car>这里的类型,value_ref可以引用bean类


4、配置单例的集合,也就是公用的bean,这里首先需要引入命名空间,输入<util:list 然后 alt+enter,将命名空间导入进来,也就是这个xsi会导入后面util这两个,这时候就可以在bean中引用了,要想换成set\map型,换成相应的类型即可。
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">

5、关于bean的作用域,有两种singleton(单例)和prototype(原型,也称为多例)
singleton:默认值,在容器初始化时生成bean实例
prototype:原型,容器初始化时不生成bean实例,在获取bea时生成
写一个无参构造方法验证一下:

配置文件:

输出结果:说明值创建了一个对象

把获取bean给注释掉,再输出结果,可以看到bean是在容器初始化时创建

再来看看prototype,
配置文件:scope属性,可以选择单例和原型

输出结果:

用idea 创建一个spring小demo,基于xml文件配置的更多相关文章
- Spring框架入门之基于xml文件配置bean详解
关于Spring中基于xml文件配置bean的详细总结(spring 4.1.0) 一.Spring中的依赖注入方式介绍 依赖注入有三种方式 属性注入 构造方法注入 工厂方法注入(很少使用,不推荐,本 ...
- idea的spring整合基于xml文件配置的mybatis报Invalid bound statement (not found): com.music.dao.MusicDao.findAll的问题
一. 题主当时就是自己尝试整合spring和mybatis的时候遇到了这个问题,当时题主只看到了用注解的方式配置的dao层,题主用的是xml文件配置的形式, 而且坑爹的是题主的两个文件的路径写的也不一 ...
- Spring整合Hibernate的XML文件配置,以及web.xml文件配置
利用Spring整合Hibernate时的XML文件配置 applicationContext.xml <?xml version="1.0" encoding=" ...
- Spring学习记录(十三)---基于xml文件配置AOP
上一篇讲了用注解配置AOP,现在讲用xml怎么配置AOP 其实逻辑是一样的,只是用xml的方法,要把这种逻辑写出来,告诉spring框架去执行. 例子:这里的例子和上一篇的例子一样.换成xml方式 / ...
- 每天一个JS 小demo之新建文件夹。主要知识点:DOM方法的综合运用
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"& ...
- dom4j 创建一个带命名空间的pom.xml 文件
http://xml.apache.org/xalan-j/index.html 需要的jar包 <dependencies> <dependency> <groupId ...
- Mybatis 简单的CRUD 基于XML文件配置
全部的ORM框架学习曲线都是先来一个CRUD爽一爽,以下我们就来CRUD一下,全部的配置都是基于上一篇的配置.废话不多说,直接上代码. <?xml version="1.0" ...
- Spring中利用applicationContext.xml文件实例化对象和调用方法
Spring中实例化对象和调用方法入门 1.jar包和xml的准备 已上传至百度云盘,链接: https://pan.baidu.com/s/1CY0xQq3GLK06iX7tVLnp3Q 提取码: ...
- 【Java】 Spring依赖注入小试牛刀:编写第一个Spring ApplicationContext Demo
0 Spring的依赖注入大致是这样工作的: 将对象如何构造(ID是什么?是什么类型?给属性设置什么值?给构造函数传入什么值?)写入外部XML文件里.在调用者需要调用某个类时,不自行构造该类的对象, ...
随机推荐
- 使用Hexo+github搭建个人博客
目录 创建Github仓库 环境安装 安装Node.js 安装Git 检查安装 安装Hexo 连接Hexo和Github 设置Git的用户名和邮箱 配置SSH 配置Deployment 新建第一篇博客 ...
- 整理c盘文件
清理大文件时,发现以下目录文件过大,删除后可以正常启动java程序,此目录应该是安装jdk时的缓存文件,可以删除 C:\Users\xxxx\AppData\LocalLow\Oracle\Java\ ...
- gatewayworker开发单聊应用解决的问题
绑定唯一id时,遇到的信息发送同步问题 问题:A-B A-C A发送信息给B和C时 A绑定了唯一id 若B.C发送信息给A则A处会同时手到来自于BC的信息 用解绑和生成新的client_id无法避 ...
- msdn原版系统和原版office
建议使用迅雷下载工具进行下载 激活详见:在线激活win10.win8/8.1和office2019.2016.2013等的kms激活工具 windows 10 家庭版/家庭单语言版/专业版/教育版/专 ...
- nginx conf_ctx ****
http://blog.chinaunix.net/uid-27767798-id-3840094.html 断断续续看完了,还是没有全部清晰
- D - WE POJ - 3273 (二分法)
Farmer John is an astounding accounting wizard and has realized he might run out of money to run the ...
- vue 部署404
https://www.cnblogs.com/kevingrace/p/6126762.html 在nginx部署https://www.jianshu.com/p/7017143e3f7a 在ap ...
- selenium的八大定位元素的方式
#八大定位方式 from selenium import webdriver def BrowserOpen(): driver = webdriver.Chrome(); driver.maximi ...
- 2-4、配置Filebeat使用logstash
配置filebeat使用logstash 重要:要将事件发送到Logstash,还需要创建一个Logstash配置管道,该管道监听传入的Beats连接并将收到的事件编入索引到Elasticsearch ...
- 设计模式 — 单例模式(Singleton)
在一个软件系统中,经常有有些特殊的对象就需要一个实例,如果有多个的话,就比较浪费服务器资源,最典型的就是 整个系统的配置文件对象. 普通方式读取配置文件 // 配置文件 SingletonApp.pr ...