spring_入门配置和注入
Spring的获取容器:
public static void main(String[] args) {
//获取核心容器 BeanFactory延迟加载对象
ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
//获取对象自己强转
AccentService service = (AccentService) ac.getBean("accountService");
//传入字节码
UserDao dao = ac.getBean("accountDao",UserDao.class);
service.upDate();
}
Spring的注入配置:
<?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">
<bean id="accountService" class="cn.mepu.service.imp.AccentServiceImp"></bean>
<bean id="accountDao" class="cn.mepu.dao.imp.userDaoImp"></bean>
<!-- 第二种:工厂或类中的方法返回值是对象
<bean id="接收返回值" factory-bean="指定工厂类" factory-method="工厂类中获取对象的方法"></bean>
-->
<!-- 第三种:使用工厂中的静态方法创建对象,并存入spring容器
<bean id="接收返回值" class="工厂或类" factory-method="静态方法"></bean>
-->
<!-- bean的作用范围调整
bean标签的scope属性:
singleton:单例默认值
prototype:多例
request:作用于web应用的请求范围
session:作用于web应用的会话范围
global-session:作用于集群环境的会话范围(全局会话范围),当不是集群时它就是session
-->
<!-- bean对象的生命周期
单例对象:
出生:当容器创建时对象出生
活着:容器在在,对象活着
死亡:容器销毁
总结:单例对象的生命周期和容器相关
多例对象:
出生:使用对象时spring框架为我们创建对象
活着:使用过程中
死亡:对象长时间不使用也没有别的对象引用时垃圾回收机制回收对象
-->
<!--依赖注入
能注入的数据:
基本类型和String
其他类型bean类型
复杂类型/集合类型:
<bean id="accountDao" class="cn.mepu.dao.imp.userDaoImp">
<property name="" >
<数据类型标签>
<value>赋值</value>
</数据类型标签>
</property>
</bean>
用于给list结构注入的标签有
list arrary set
用于给Map结构注入的
map propes
结构相同可以公用
注入方式:
使用构造函数:
类中定义可注入变量如:private String s;
在bean标签中使用constructor-arg标签
type:要注入数据的数据类型,是实体类中的类型
index:实体类中的构造函数的索引,索引从0开始
name:指定给构造函数中指定名称赋值
value:基本数据类型货String
ref:引用数据类型
<bean id="accountDao" class="cn.mepu.dao.imp.userDaoImp">
<constructor-arg index="" value=""></constructor-arg>
<constructor-arg name="" ref="now"></constructor-arg>
</bean>
<bean id="now" class="java.util.Date"></bean>
使用set方法:
实体类中变量的set方法
property标签
name:实体类set的方法名称
value:基本数据类型
ref:引用数据类型
<bean id="accountDao" class="cn.mepu.dao.imp.userDaoImp">
<property name="" value=""></property>
</bean>
使用注解:
类的构造函数中赋值变量
-->
</beans>
spring_入门配置和注入的更多相关文章
- CEPH集群操作入门--配置
参考文档:CEPH官网集群操作文档 概述 Ceph存储集群是所有Ceph部署的基础. 基于RADOS,Ceph存储集群由两种类型的守护进程组成:Ceph OSD守护进程(OSD)将数据作为对象 ...
- ASP.NET Core 在 JSON 文件中配置依赖注入
前言 在上一篇文章中写了如何在MVC中配置全局路由前缀,今天给大家介绍一下如何在在 json 文件中配置依赖注入. 在以前的 ASP.NET 4+ (MVC,Web Api,Owin,SingalR等 ...
- Spring boot将配置属性注入到bean类中
一.@ConfigurationProperties注解的使用 看配置文件,我的是yaml格式的配置: // file application.yml my: servers: - dev.bar.c ...
- Spring-MVC开发步骤(入门配置)
Spring-MVC开发步骤(入门配置) Step1.导包 spring-webmvc Step2.添加spring配置文件 Step3.配置DispatcherServlet 在web.xml中: ...
- mybatis入门配置和调试
欢迎转载http://www.cnblogs.com/jianshuai520/p/8669177.html大家一起努力,如果看的时候有图片半边遮挡起来的话,右键查看图片,就可以观看完整的图片,具体怎 ...
- Springboot学习笔记(六)-配置化注入
前言 前面写过一个Springboot学习笔记(一)-线程池的简化及使用,发现有个缺陷,打个比方,我这个线程池写在一个公用服务中,各项参数都定死了,现在有两个服务要调用它,一个服务的线程数通常很多,而 ...
- webpack4入门配置
下面是抄过来的,方便自己翻越 webpack4.x入门配置 1.首先npm install webpack webpack-cli webpack-dev-server -g (mac电脑用超级管 ...
- spring中bean配置和注入场景分析
bean与spring容器的关系 Bean配置信息定义了Bean的实现及依赖关系,Spring容器根据各种形式的Bean配置信息在容器内部建立Bean定义注册表,然后根据注册表加载.实例化Bean,并 ...
- webpack快速入门——配置JS压缩,打包
1 .首先在webpack.config.js中引入 const uglify = require('uglifyjs-webpack-plugin'); 2.然后在plugins配置里 plugin ...
随机推荐
- 14-python基础-列表
列表常用操作: Ubuntu下进入ipython3中定义一个列表lst=[] 输入lst.TAB ipython会提示列表能够使用的方法. 1.增加列表数据 序号 关键字/函数/方法 说明 1 列表. ...
- myeclipse中使用maven插件的时候,报错-Dmaven.multiModuleProjectDirectory system propery is not set.
-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable a ...
- stdio - 标准输入输出库函数
SYNOPSIS 总览 #include <stdio.h> FILE *stdin; FILE *stdout; FILE *stderr; DESCRIPTION 描述 标注 I/O ...
- C基础学习记录
函数 1:子函数定义的变量只在调用的时候才会分配空间,调用结束后会收回空间. 2:在调用子函数时只会向函数传递值,是单向传递的. 3.返回值的类型一般与函数的类型一致,如果不一致会以函数类型为准. 4 ...
- Nginx反向代理与负载均衡应用实践(一)
Nginx反向代理与负载均衡应用实践(一) 链接:https://pan.baidu.com/s/1xB20bnuanh0Avs4kwRpSXQ 提取码:migq 复制这段内容后打开百度网盘手机App ...
- java笔试手写算法面试题大全含答案
1.统计一篇英文文章单词个数.public class WordCounting {public static void main(String[] args) {try(FileReader fr ...
- Largest Submatrix 3
Largest Submatrix 3 给出一个\(n\times m\)的网格图,第i行第j列上的格子有数字\(a[i][j]\),显然,你可以从中找到一个子矩阵,保证子矩阵中的数字互不相同,求子矩 ...
- TxtUtil
/** *包名:cn.yufu.utils *描述:package cn.yufu.utils; */ package cn.yufu.utils; import java.io.BufferedRe ...
- HTML之web项目的目录结构
文件夹树注解 htmls html一个文件放除去index.html外的其他页面文件. imgs 存放所有的图片文件:.png..jpg..jpeg.壁纸等. 示例:icon.png.ho ...
- bzoj1044题解
[题意分析] 本题等价于如下描述: 有一个长度为n的正整数序列,要求将其分解成m+1个子串,使最大子串和最小.求这个最大子串和及对应的分解方案数. [解题思路] 第一问二分+贪心即可.容易证明对于确定 ...