spring依赖注入常用的三种方式 (spring是什么意思)

教程大全 2025-07-17 22:49:51 浏览

依赖注入,是IOC的一个方面,是个通常的概念,它有多种解释。这概念是说你不用创建对象,而只需要描述它如何被创建。你不在代码里直接组装你的组件和服务,但是要在配置文件里描述哪些组件需要哪些服务,之后一个容器(IOC容器)负责把他们组装起来。

一.目前使用最广泛的 @Autowired:自动装配

基于@Autowired的自动装配,默认是根据类型注入,可以用于构造器、接口、方法注入,使用方式如下:

@Autowired构造方法、方法、接口

@Autowired默认是根据参数类型进行自动装配,且必须有一个Bean候选者注入默认required=true,如果允许出现0个Bean候选者需要设置属性“required=false”,“required”属性含义和@Required一样,只是@Required只适用于基于XML配置的setter注入方式,只能打在setting方法上。

spring是什么意思 构造器注入

通过将@Autowired注解放在构造器上来完成构造器注入,默认构造器参数通过类型自动装配,如下所示:

publicclassTest1{privateMessageInterfacemessage;@Autowired//构造器注入privateTest1(MessageInterfacemessage){this.message=message;}//省略getter和setter}

接口注入

通过将@Autowired注解放在构造器上来完成接口注入。

publicclassTest2{@Autowired//接口注入privateMessageInterfacemessageInterface;//省略getter和setter}

方法参数注入

通过将@Autowired注解放在方法上来完成方法参数注入。

publicclassTest3{privateMessageInterfacemessage;@Autowired//setter方法注入publicvoidsetMessage(MessageInterfacemessage){this.message=message;}publicString(){message;}}publicclassTest4{privateMessageInterfacemessage;//privateListlist;@Autowired(required=)//任意一个或多个参数方法注入privatevoidinitMessage(MessageInterfacemessage,ArrayListlist){this.message=message;this.list=list;}//省略getter和setter}

Java高级技术

啥是高级技术呢?企业级开发注重分层,表示层,业务层,持久层,这三个层都有很多技术表示层里框架很多,struts1,struts 2,webwork等,还有JSF什么的,前端的AJAX最火爆了,我在用的就是Extjs,除此之外还有Dojo,DWR,jQuery,prototype什么的,说不上高级吧,但是都很流行,至于flex,那就是另外一种语言了,属于RIA。 持久层里基本上用Hibernate,iBatis,JDO,sun推出了JPA这个标准。 EJB里有CMP吧,没用过,只是听说。 业务层是最需要关注的了,spring什么的框架不提,最流行的设计思想应该是DDD,就是领域驱动设计,也出了不少框架,我还没有太多了解……太高级的内容我也没有涉及到,这些就是我目前大概知道的。

如何了解弹簧知识

可以到弹簧类的门户网站上去,哪里的知识比较多,我知道有个维尔森弹簧信息网

JAVA专业主要针对些什么样的工作?

1.熟练掌握Java各种常用设计模式; 2.能够熟练应用Spring的Ioc(控制反转)机制,熟悉AOP编程; 3.熟悉Hibernate框架及其映射原理,能够熟练使用jsp,servlet,jstl,jdbc,jndi,JavaBean,Ajax进行编程,能够运用ssh(Struts+Spring+Hibernate)进行开发,实现复杂的MVC架构; 4.熟练使用Tomcat,Weblogic等J2EE应用服务器;服务器的安装配置、连接池、数据源、JNDI技术、JAVA分布式平台技术、Weblogic—EJB—Oracle企业级应用; 5.熟悉UML,能够使用Rational Rose进行系统的建模和设计; 6.精通SQL语言,熟练应用Oracle,MySql数据库; 7.能够熟练使用Eclipse进行开发

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐