av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Spring bean 四種注入方式詳解

瀏覽:47日期:2023-07-01 17:11:48
目錄一、Set方式注入pojo層:1.xml 文件test測試二、構造函數方式注入pojo層2.xml文件test測試三、注解注入pojo層3.xml文件test測試四、JavaConfig 方式注入pojo層JavaConfig 類xml文件 掃描包測試:五、Service層注入詳解serviceserviceImplxml配置文件總結一、Set方式注入pojo層:

/** * @Author: crush * @Date: 2021-06-17 16:57 * version 1.0 * xml 配置注入版本 set 方式 */public class Student1 { public String name; public String school; public void setName(String name) {this.name = name; } public void setSchool(String school) {this.school = school; } @Override public String toString() {return 'Student1{' +'name=’' + name + ’’’ +', school=’' + school + ’’’ +’}’; }}1.xml 文件

<?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'> <!--set方式注入id是注入bean中的名字class 是全限定類名property 是按照set方式注入 --> <bean class='com.crush.pojo.Student1'><property name='name' value='wyh1'/><property name='school' value='hngy1'/> </bean></beans>test測試

@Test public void student1(){ApplicationContext context = new ClassPathXmlApplicationContext('student1.xml');Student1 student1 = context.getBean('student1', Student1.class);System.out.println(student1); }二、構造函數方式注入pojo層

/** * @Author: crush * @Date: 2021-06-17 17:02 * version 1.0 * xml 配置 構造函數方式注入 */public class Student2 { private String name; private String school; public Student2(String name, String school) {this.name = name;this.school = school; } @Override public String toString() {return 'Student2{' +'name=’' + name + ’’’ +', school=’' + school + ’’’ +’}’; }}2.xml文件

<?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'> <!--set方式注入id是注入bean中的名字class 是全限定類名constructor 是按照構造方式注入index 是按照成員變量在構造函數中的參數的第幾個name 表示成員變量名type 表示類型value 表示值ref 表示引用 可引用另外一個注入到Spring的中的值 --> <bean class='com.crush.pojo.Student2'><constructor-arg index='0' name='name' type='java.lang.String' value='wyh2'/><constructor-arg name='school' value='hngy2'/> </bean></beans>test測試

@Test public void student2(){ApplicationContext context = new ClassPathXmlApplicationContext('student2.xml');Student2 student2 = context.getBean('student2', Student2.class);System.out.println(student2); }三、注解注入pojo層

/** * @Author: crush * @Date: 2021-06-17 17:08 * version 1.0 */@Componentpublic class Student3 { @Value('wyh3') private String name; @Value('hngy3') private String school; @Override public String toString() {return 'Student3{' +'name=’' + name + ’’’ +', school=’' + school + ’’’ +’}’; }}3.xml文件

<?xml version='1.0' encoding='UTF-8'?><beans xmlns='http://www.springframework.org/schema/beans' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:context='http://www.springframework.org/schema/context' xsi:schemaLocation='http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd'> <!--注解方式注入需要掃描注解在的包 注解才會生效 --> <context:component-scan base-package='com.crush.pojo'/></beans>test測試

@Test public void student3(){ApplicationContext context = new ClassPathXmlApplicationContext('student3.xml');Student3 student3 = context.getBean('student3', Student3.class);System.out.println(student3); }四、JavaConfig 方式注入pojo層

/** * @Author: crush * @Date: 2021-06-17 17:16 * version 1.0 * JavaConfig 配置 */public class Student4 { @Value('wyh4') private String name; @Value('hngy4') private String school; @Override public String toString() {return 'Student4{' +'name=’' + name + ’’’ +', school=’' + school + ’’’ +’}’; }}JavaConfig 類

@Configurationpublic class Student4Config { @Bean public Student4 student4(){return new Student4(); }}xml文件 掃描包

<?xml version='1.0' encoding='UTF-8'?><beans xmlns='http://www.springframework.org/schema/beans' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:context='http://www.springframework.org/schema/context' xsi:schemaLocation='http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd'> <context:component-scan base-package='com.crush.config'/></beans>測試:

@Test public void student4(){ApplicationContext context = new ClassPathXmlApplicationContext('student4.xml');Student4 student4 = context.getBean('student4', Student4.class);System.out.println(student4); }五、Service層注入詳解service

/** * @Author: crush * @Date: 2021-06-17 17:27 * version 1.0 * xml 配置 */public interface StudentService1 { void test();}serviceImpl

/** * @Author: crush * @Date: 2021-06-17 17:29 * version 1.0 * xml 配置 */public class StudentService1Impl implements StudentService1{ @Override public void test() {System.out.println('===StudentDao1Impl==='); }}xml配置文件

<?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 /></beans>總結

本篇文章就到這里了,希望能給你帶來幫助,也希望能夠您能夠關注好吧啦網的更多內容!

標簽: Spring
相關文章:
主站蜘蛛池模板: 亚洲欧美成人在线 | 国产精品久久久久久久久久妞妞 | 国产日韩欧美一区 | 久久精点视频 | 精品www | 91视频免费黄 | 5060网一级毛片 | 久久精品久久久久久 | 玖玖色在线视频 | 国产精品视频专区 | 天天色天天射天天干 | 亚洲三级在线观看 | 中国美女av | 亚洲精品区 | 性色综合| 成人在线一区二区 | 日韩成人精品一区二区三区 | 亚洲网站在线观看 | 久久精品a级毛片 | 高清欧美性猛交xxxx黑人猛交 | 亚洲精品一区二区三区 | 天天爽一爽 | 精品一级 | 欧美不卡一区二区三区 | 久久久久av | 欧美激情视频一区二区三区在线播放 | 欧美日韩大片 | 国产精品一区二区在线观看 | 91在线观看| 成人精品久久 | 羞羞的视频在线看 | 国产成人福利 | 亚洲精品国产电影 | 91精品国产高清一区二区三区 | 国产成人网 | 中文字幕av高清 | 免费在线观看黄网站 | 男人的天堂视频网站 | 91网在线观看 | 天天操操操操操 | 亚洲国产精品久久 |