Ass3 Debi
Ass3 Debi
CODE:
package Assignment3;
import java.util.*;
class Person{
String name, city;
int age;
List<String> phoneNumber=new ArrayList<>();
2. Write a Java Program to create a class Student with the following instance
members: -
a. Student ID (int)
b. Student Name (String)
c. Student Branch (String)
d. Student Phone Numbers (List)
e. Student Course name with fees (Map)
Use setter and getter methods to initialize and fetch the details. Using Spring Core -
IoC, inject the Object using XML Configuration
CODE:
Student.java
package com.A3Q2;
import java.util.*;
public class Student {
int studentId;
String studentName, studentBranch;
List<String> phoneNumbers;
Map<String,Integer> courseFees;
Bean.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">
App.java
package com.A3Q2;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class App {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("bean1.xml");
Student s1 = (Student) context.getBean("Student");
s1.display();
}
}
OUTPUT:
3. Write a Java Program to create a class Employee and Address with the following
instance members: -
a. class Employee
i. Employee ID (int)
ii. Employee Name (String)
iii. Employee Department (String)
iv. Employee Address (Reference type)
b. Class Address
i. Street (String)
ii. City (String)
iii. State (String)
iv. Pin code (int)
Using Spring IoC, Constructor approach to inject the Object.
CODE:
Employee.java
package com.A3Q3;
Address.java
package com.A3Q3;
@Override
public String toString() {
return "{" +
"city='" + city + '\'' +
", state='" + state + '\'' +
", country='" + country + '\'' +
", pincode=" + pincode +
'}';
}
}
Bean.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">
</beans>
App.java
package com.A3Q3;
import com.A3Q3.Employee;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
4. Write a Java Program to create a class Customer with the following instance
members:
a. Customer Name (String)
b. Customer Phone Number (List)
c. Customer Email ID (String)
Using Spring IoC, Annotation approach to inject the Object
CODE:
Customer.java
package com.A3Q4;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.*;
@Component
public class Customer {
String name;
List<String> phoneNumber;
String emailId;
@Override
public String toString() {
return "Customer{" +
"name='" + name + '\'' +
", phoneNumber=" + phoneNumber +
", emailId='" + emailId + '\'' +
'}';
}
AppConfiguration.java:
package com.A3Q4;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import java.util.*;
@Configuration
@ComponentScan(basePackages="com.A3Q4")
public class AppConfiguration {
@Bean
public String name(){
return "Chandan Kumar Mallick";
}
@Bean
public List<String> phoneNumber(){
return Arrays.asList("7327888730","9692953033");
}
@Bean
public String emailId(){
return "[email protected]";
}
@Bean
public Customer customer(){
return new Customer(name(), phoneNumber(), emailId());
}
}
App.java
package com.A3Q4;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
OUTPUT:
CODE:
BeanLifeCycle.java
package com.A3Q5;
import jakarta.annotation.PostConstruct;
import jakarta.annotation.PreDestroy;
import org.springframework.stereotype.Component;
@Component
public class BeanLifeCycle {
public BeanLifeCycle(){
System.out.println("Bean is being created: constructor.");
}
@PostConstruct
public void init(){
System.out.println("Bean is initialized: @PostConstruct");
}
@PreDestroy
public void destroy(){
System.out.println("Bean is being destoryed: @PreDestroy");
}
}
AppConfig.java
package com.A3Q5;
import org.springframework.context.annotation.Configuration;
@Configuration
public class AppConfig {
public BeanLifeCycle bean(){
return new BeanLifeCycle();
}
}
App.java
package com.A3Q5;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
@SpringBootApplication
public class App {
public static void main(String[] args) {
ConfigurableApplicationContext context= SpringApplication.run(App.class, args);
BeanLifeCycle bean=context.getBean(BeanLifeCycle.class);
bean.message();
context.close();
}
}
OUTPUT: