SSH 的 action , Service , impl 关系 ?
2016-06-29 14:30
281 查看
用了这么长时间ssh了,可是对spring IOC还是不太理解,还停在只知道这么用,但不知道为什么这么用,就是不明白它是怎么个调用过程,先说下以前的框架用的是面板模式,就是一个service,和一个service的实现类,service是个接口,分层分的比较细,所有的方法都在service这个接口里,我不明白为什么在antion里直接用service.方法就可以调用ServiceImpl实现的方法,正常情况应该是先创建个ServiceImpl的对象,在用这个对象调用自己的方法,请问这要怎么理解呢?
这是spring的注入功能 已经帮助你实现了 在容器的启动的时候已经版主你进行实例话了 ,启动过程中 ,它会循环你的bean的配置文件 ,利用反射机制,实例化这个类 ,如action ,service,dao,然后就是循环你配置文件里的property属性,利用反射机制找到property在类中的set方法, 由于上一步该property类已经被实例化 ,所以直接进行set方法进行赋值。
大体应该是这个流程,希望你能明白至于为什么会调用接扣变量就能调用实现类的方法 ,这是java多态机制,接口变量指向实现类对象的引用,jvm在运行时 动态执行对象的方法(这都是java基础
多态)
这是spring的注入功能 已经帮助你实现了 在容器的启动的时候已经版主你进行实例话了 ,启动过程中 ,它会循环你的bean的配置文件 ,利用反射机制,实例化这个类 ,如action ,service,dao,然后就是循环你配置文件里的property属性,利用反射机制找到property在类中的set方法, 由于上一步该property类已经被实例化 ,所以直接进行set方法进行赋值。
大体应该是这个流程,希望你能明白至于为什么会调用接扣变量就能调用实现类的方法 ,这是java多态机制,接口变量指向实现类对象的引用,jvm在运行时 动态执行对象的方法(这都是java基础
多态)
相关文章推荐
- Minimum Depth of Binary Tree
- Linux 中的防火墙 端口记录
- Ubuntu12.04增加屏幕分辨率选项
- ubuntu14部署ceph10.2版本
- EasyDarwin接入ffmpeg实现264转图片快照功能
- .net Framework 中的四种计时器
- EasyDarwin接入ffmpeg实现264转图片快照功能
- ASP.NET MVC 域名泛解析设置
- nvr向sip服务器注册失败(未携带摘要等类信息)
- Unity3D中移动物体位置的几种方法
- Java NIO Path
- 关于修改host的一点整理
- MYSQL双主架构搭建方法
- linux top命令
- tomcat,weblogic下配置问题
- IOS获取当前App的基本信息
- 关于Android中MD5加密算法
- Scala学习笔记(八)----类型问题
- [DUBBO] Decode rpc invocation failed: null, dubbo version: 2.8.4, current host: 127.0.0.1
- 侧滑(以Activity为页面)