スプリング(3番目)
11108 ワード
package com.javalec.ex;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
public class MainClass {
public static void main(String[] args) {
// TODO Auto-generated method stub
String configLocation = "classpath:applicationCTX.xml";
AbstractApplicationContext ctx = new GenericXmlApplicationContext(configLocation);
StudentInfo studentInfo = ctx.getBean("studentInfo",StudentInfo.class);
studentInfo.getStudentInfo();
Student student2 = ctx.getBean("student2",Student.class);
studentInfo.setStudent(student2);
studentInfo.getStudentInfo();
ctx.close();
}
}
変数configに.xmlファイルを文字列として保存します.GenericXmlApplicationContext(config)を使用して設定ファイルを取得します.
オブジェクトctxはです.xmlでオブジェクトを作成できます.
ctx.getBeanとして参照するオブジェクトとクラスを読み込みます.
最初のgetStudentInfoはstudent 1のオブジェクトを参照します.
2番目のgetStudentInfoはstudent 2のオブジェクトを参照します.
package com.javalec.ex;
public class Student {
private String name;
private String age;
private String gradeNum;
private String classNum;
public Student(String name, String age, String gradeNum, String classNum) {
this.name = name;
this.age = age;
this.gradeNum = gradeNum;
this.classNum = classNum;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name= name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getGradeNum() {
return gradeNum;
}
public String getClassNum() {
return classNum;
}
}
Studentクラスは、コンストラクション関数を使用してフィールドを完了します.package com.javalec.ex;
public class StudentInfo {
private Student student;
public StudentInfo (Student student) {
this.student = student;
}
public void getStudentInfo() {
if(student !=null) {
System.out.println("이름 :"+student.getName() );
System.out.println("나이 :"+student.getAge() );
System.out.println("학년 :"+student.getGradeNum() );
System.out.println("반 :"+student.getClassNum() );
System.out.println("========================" );
}
}
public void setStudent(Student student) {
this.student = student;
}
}
Studio Infoクラスは、出力されるクラスです.getStudentInfoメソッドは、参照するオブジェクトに応じて異なる結果値を表示します.student 1とstudent 2があります.setStudioメソッドには、次のものがあります.
<?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="student1" class="com.javalec.ex.Student">
<constructor-arg>
<value>홍길동</value>
</constructor-arg>
<constructor-arg>
<value>10살</value>
</constructor-arg>
<constructor-arg>
<value>3학년</value>
</constructor-arg>
<constructor-arg>
<value>20번</value>
</constructor-arg>
</bean>
<bean id = "student2" class="com.javalec.ex.Student">
<constructor-arg value="홍길동" />
<constructor-arg value="9살" />
<constructor-arg value="2학년" />
<constructor-arg value="10번" />
</bean>
<bean id ="studentInfo" class="com.javalec.ex.StudentInfo">
<constructor-arg>
<ref bean = "student1"/>
</constructor-arg>
</bean>
</beans>
.xmlファイルでは、Studioクラスにstudent 1,2オブジェクトが含まれます.StudentInfoのオブジェクトはstudent 1を参照します. 描くとこんな感じ
Reference
この問題について(スプリング(3番目)), 我々は、より多くの情報をここで見つけました https://velog.io/@kychoi123/스프링3번째テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol