Java线程基础
1。什么是Spring的IOC
Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架,
解决了企业应用开发的复杂性,适用范围是一切Java应用。
IOC:控制反转,指的是spring以前,对象都是自己new去创建,
现在通过spring的配置文件,由spring容器负责创建,控制权发生了转移,所以叫控制反转。
IOC别名,也叫DI就是依赖注入,由容器动态的将某种依赖关系注入到组件中。2。新建user实体类
publicclassSysUser{
privateIntegerid;
privateStringusername;
privateStringtelephone;
。。。setget省略
}3。resources下新建一个spring配置文件ApplicationContext。xml:
bean4。获取XML中的Bean4。1通过id和类型获取Bean:
RunWith(SpringJUnit4ClassRunner。class)
ContextConfiguration({ApplicationContext。xml})
publicclassTestSpring{
Test
publicvoidtestGetBeanById(){
通过id获取Bean
ApplicationContextacnewClassPathXmlApplicationContext(ApplicationContext。xml);
SysUseruser(SysUser)ac。getBean(user);
System。out。println(user);SysUser〔id1,username张三,telephone13898987676〕
}
Test
publicvoidtestGetBeanByType(){
通过类型获取Bean
ApplicationContextacnewClassPathXmlApplicationContext(ApplicationContext。xml);
SysUseruserac。getBean(SysUser。class);
System。out。println(user);SysUser〔id1,username张三,telephone13898987676〕
}
}4。2通过spring的Autowired注解自动注入:根据类型注入
Autowired
privateSysUseruser;
Test
publicvoidtestAutowired(){
System。out。println(user);SysUser〔id1,username张三,telephone13898987676〕
}5。Seivice注解
新建UserService接口和UserServiceImpl实现类,并实现该接口
publicinterfaceUserService{
SysUsergetUser(intid);
}
Service(UserServiceImpl)
publicclassUserServiceImplimplementsUserService{
publicSysUsergetUser(intid){
模拟数据库查询,根据id获取一条数据
SysUsersysUsernewSysUser();
sysUser。setId(id);
sysUser。setTelephone(13899990000);
sysUser。setUsername(李四);
returnsysUser;
}
}
进行测试:
Test
publicvoidtest(){
使用spring之前,New对象
UserServiceuserServicenewUserServiceImpl();
System。out。println(userService。getUser(1));
}
在XML中进行配置:
测试:
Test
publicvoidtest(){
使用spring的xml配置
ApplicationContextacnewClassPathXmlApplicationContext(ApplicationContext。xml);
UserServiceuserService1(UserService)ac。getBean(userService);
System。out。println(userService1。getUser(1));SysUser〔id1,username李四,telephone13899990000〕
}
Spring除了在XML中进行配置,还可以进行注解配置:
applicationContext。xml中配置
配置完这个标签后,spring就会去自动扫描basepackage对应的路径或者该路径的子包下面的java文件,如果扫描到文件中带有Service,Component,Repository,Controller等这些注解的类,则把这些类注册为bean。
注解测试:
Autowired
privateUserServiceuserService;
Test
publicvoidtest(){
使用注解
System。out。println(userService。getUser(1));SysUser〔id1,username李四,telephone13899990000〕
}6。Autowired和Qualifier使用
如果有其它实现类也实现了UserService接口,AutowiredprivateUserServiceuserService;怎么知道注入的是哪个实现类?
新建是一个实现类NewUserServiceImpl实现UserService接口
Service(NewUserServiceImpl)
publicclassNewUserServiceImplimplementsUserService{
publicSysUsergetUser(intid){
模拟数据库查询,根据id获取一条数据
SysUsersysUsernewSysUser();
sysUser。setId(id);
sysUser。setTelephone(13888888888);
sysUser。setUsername(王五);
returnsysUser;
}
}
再次运行test方法,控制台报错:
NoUniqueBeanDefinitionException:Noqualifyingbeanoftypecom。org。service。UserServiceavailable:expectedsinglematchingbeanbutfound2:
newUserServiceImpl,userServiceImpl
NoUniqueBeanDefinitionException异常,就是说bean不是唯一的。我们可以使用Qualifier注解和Autowired保证唯一性。
Autowired
Qualifier(NewUserServiceImpl)
privateUserServiceuserService;
Test
publicvoidtest(){
使用注解
System。out。println(userService。getUser(1));SysUser〔id1,username王五,telephone13888888888〕
}
spring的Autowired是根据类型注入的,byType通过参数的数据类型自动自动装配7。Resource注解
我们也可以使用Resource注解实现Autowired和Qualifier连用的效果
Resource是属于J2EE,JDK1。6支持的注解byName通过参数名自动装配。
Resource(nameUserServiceImpl)
privateUserServiceuserService;
Test
publicvoidtest(){
使用注解
System。out。println(userService。getUser(1));SysUser〔id1,username李四,telephone13899990000〕
}
阿里巴巴一基地四中心落地苏州,打造苏州订制版双12IT之家12月5日消息根据阿里巴巴官方的消息,苏州市人民政府现已与阿里巴巴集团签署全面合作协议。根据协议,阿里巴巴一基地和四中心正式落地苏州,双方将推进重点产业领域的数字化,加……
神奇的音箱教案范文一、题目入手,谈话引入1。读课题,说一说,这篇课文向我们介绍了什么。2。结合生活实际进行谈话,说说农业与我们生活的关系。二、初读课文,了解内容1。自己快……
三个儿子第一课时教案教学理念:让学生真正地走进文本,融入角色,体会课文的情感,使学生产生心灵的共鸣,这是我追求的教学境界。教学内容:人民教育出版社语文二年级下册第六单元23三个儿……
网络安全公司FireEye被黑客攻破对方使用了前所未有的新技IT之家12月9日消息根据外媒TheVerge的消息,美国领先的网络安全公司FireEye称其遭到了有国家支持的黑客攻击。黑客锁定并访问了该公司所谓的特殊工具,该工具用于测试客……
优麒麟UKUI3。0控制面板官方演示IT之家4月11日消息根据优麒麟官方的消息,优麒麟的全球Linux发行版最新关注度(Distrowatch周排名)已经上升到第八。今天,优麒麟官方公布了UKUI3。0集成的全新……
日月潭教学反思《日月潭》首先介绍了日月潭的地理位置和周围的优美风光,接着介绍了日月潭名称的来历,然后描绘了它在晨午时分、晴雨天气的不同情状,展示了日月潭的景色特点,表达了作者对日月潭的由衷赞……
惊弓之鸟第二课时教案一、谈话揭题上节课,老师和初步读了《惊弓之鸟》这篇课文。有兴趣的同学举起右手,跟老师一起写课题。(板书课题)看,老师的字虽不漂亮,可写得多认真啊,希望大家在写字时,……
定位AI版Windows,第四范式发布AI操作系统SageA8月20日,第四范式召开年度发布会,推出了SageAIOS,与SageAIOS同时发布的新品还有第四范式自动化AI生产力平台SageHyperCycleML、线上化智能运营系统……
学会认识产品设计课题:让人们的生活更美好设计理念:本节课主要通过欣赏各种产品设计,使学生初步感受产品设计的特点,体验设计过程的乐趣,培养学生热爱生活、热爱大自然的思想情感。学……
电阻教学反思在本节课的教学活动过程中,学生再一次体验了物理的研究方法控制变量法,从探究活动中深刻地体会了控制变量法的实质,结合转换法的来认识影响电阻大小的因素。在探究活动中锻炼了学生之间的……
观察物体二年级数学教学反思今天试上,《观察物体》感觉在这几个方面处理得不够理想:1、活动的有序性观察物体这类数学活动,学生喜欢也乐于参与,由于年龄比较小,容易激动,活动如果失去有效的组织现场就就会……
四年级桥优秀教案设计教学目标:1、正确、流利、有感情地朗读课文。2、通过研读课文中的重点词句,感悟洪水肆虐的危机情境,体会老汉的大山形象。课前准备:读通课文,标出自然段序号……
用似这个字来造句1、老师的关爱似春雨,滋润着我的心田。2、天上的白云变化多端,似小白兔,似小马3、飞驰的汽车似一阵风似的,从我们身边掠过。4、雨丝似花絮,轻轻的,柔柔的。……
高考作文学案ampnbspampnbsp命题作文静讲评及例文作文学案命题作文静讲评及例文教学目标:作文审题中掌握化大为小的方法,迅速打开文章的思路。教学设想:作文教学主要贯穿两条线思维与语言。静这篇作文讲评主要突出思维……
松鼠活动教案今天老师请来了一位小客人,我们来猜猜它是谁?以下内容是小编为您精心整理的松鼠活动教案,欢迎参考!松鼠活动教案教学目标:1、初读课文,学习本课生字新词,整体干支……
常识教案开放式防火系列主题活动培养中班幼儿防火自救能力设计意图:B在我们生活的周围环境中,到处充满着威胁孩子安全的因素,幼儿受到意外伤害的事故时有发生。有的教师和家长为了防止意外事故的发生,总是采取一些消极的方法:如让孩子减……
玩具柜台前的孩子的教学反思范文新课程标准中指出学生的学习活动应当是一个生动活泼的、主动的和富有个性的过程。学习的方式也应该是一个充满生命力的过程。因此,我在执教《玩具柜台前的孩子》一课时,力图通过教学使学习……
罗布泊,消逝的汕湖教学设计【教学目标】1、知识与能力目标:整体把握课文内容,理清文章思路,培养概括能力。掌握罗布泊消逝的原因,感悟作者强烈的忧患意识。2、过程与方法:学生预……
小学音乐第五单元翩翩起舞教学设计第五单元一、教学课题:翩翩起舞二、单元简析:本单元设计了《童趣舞韵》《舞苑奇葩》两个课题,旨在向学生开启舞蹈艺术之窗,引导学生徜徉于中外经典的、有代表性的舞蹈艺术海洋中,激发学……
降低化学反应活化能的酶第1节三维目标1。知识与技能(1)细胞代谢的概念。(2)酶的作用和本质。(3)酶的特性。(4)提高学生观察、分析、判断的思维能力,提高学生的……
冰花说课稿范文(通用3篇)作为一位杰出的教职工,编写说课稿是必不可少的,借助说课稿可以让教学工作更科学化。那么写说课稿需要注意哪些问题呢?以下是小编为大家整理的《冰花》说课稿范文(通用3篇),欢迎阅读,……
6苏轼词两首名师导航内容感知《念奴娇8226;赤壁怀古》这首词是苏轼词中的代表作,也是中国诗歌发展史上的名篇。词作描绘了赤壁的壮阔景象,通过对古代英雄人物的赞美,抒发了诗人的理……
穷人教学设计模板【教学目标】、知识教学点:学会本课出现的生字、结合上下文理解新词。理解重点句她的心跳得很厉害,自己也不知道为什么要这样做,但是觉得非这样做不可。他……
小叶儿秋天的落叶幼教各科教案幼教音乐教案您的位置:首页gt;gt;幼教各科教案gt;幼教音乐教案gt;正文你已在本站发表教案1篇,浏览教案2篇!发表时间:2004617……