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 ...
随机推荐
- zabbix主动模式设置
zabbix客户端发数据给服务端分为主被动两种模式,主动模式是zabbix客户端主动向服务端发送数据,被动模式是被动等待服务端来取数据. 主动模式: 客户端每隔一段时间主动向服务端发起连接请求--&g ...
- CentOS6.5源码安装MySQL5.6.35
CentOS6.5源码安装MySQL5.6.35 一.卸载旧版本 1.使用下面的命令检查是否安装有mysql [root@localhost tools]# rpm -qa|grep -i mysql ...
- JavaScript跨域方式总结
1. jsonp请求 jsonp的原理是利用 script 标签的跨域特性,可以不受限制地从其他域中加载资源,类似的标签还有 img. 缺点:只支持GET请求而不支持POST等其他类型的HTTP请求. ...
- myeclipse中出现The method xxx of type must override or implement a supertype
出现问题提示:The method xxx of type must override or implement a supertype? annotation:@Override的原因 查阅了一下资 ...
- Linux中目录结构以及VI编辑器常见的命令操作
1.每个目录的详细介绍,先放一张目录的整体结构在这里 /bin:是Binary的缩写,用于存放经常使用的命令 /sbin:s代表Super User,用于存放系统管理员使用的命令 /home:存放普通 ...
- NFS(网络文件系统)
NFS(网络文件系统) 1.关于NFS介绍 1.1NFS在企业中的应用场景 在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享视频,图片,附件等静态资源文件,通常网站用户上传的文件都会放 ...
- 【读书笔记】剑指offer
导语 所有的编程练习都在牛客网OJ提交,链接: https://www.nowcoder.com/ta/coding-interviews 九章算法的 lintcode 也有这本书的题目.https: ...
- vue 父子组件数据双向绑定
父组件 <find-search v-model="searchshow"></find-search> 子组件 props: { value: { typ ...
- 36.两个链表的第一个公共结点(python)
题目描述 输入两个链表,找出它们的第一个公共结点. class Solution: def FindFirstCommonNode(self, pHead1, pHead2): # write cod ...
- ES6(阮一峰) 数组的扩展
1.扩展运算符 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. console.log(1, ...[2, 3, 4], 5) // ...