Day03-Java项目学习

Day03

Spring

Spring学习

  • Spring 的IOC(控制反转):通过将对象的生命周期管理交给IOC管理,专注于业务开发。(正常需要自动new来创建对象,系统复杂起来不好管理,通过IOC管理对象,提高对象复用效率等。
  • 早期Spring版本,通过XML写入要管理组件信息,来注册组件。
ApplicationContext applicationContext = new ClassPathXmlPathApplicationContext("xxx.xml");
User user = (User)applicationContext.getBean("user");
  • Spring4之后推荐使用Java Config来注册组件管理。
# 依赖lombok插件

#User类
@ToString
@AllArgsConstructor
@Data
public class User{
	private String name;
	private Integer age;
}

#配置类,通过@Bean注解注册User类
@Configuration
public class WebConfig{
	@Bean()
	public User user(){
		return new User("mybrid", 18);
	}
}

# 注册后,从IOC容器中获取组件
@SpringBootApplication
public class DemoApplication{
	public static void main(String[] args){
		StringApplication.run(DemoApplication.class, args);
		ApplicationContext context =new AnnotationConfigApplicationContext(WebConfig.class);
		User user = context.getBean(User.class);
		...
	}
}

通过注解注册组件,因此需要使用AnnotationConfigApplicationContext获取对应IOC容器,参数为配置类。
通过传入配置类Class对象,通过反射机制,获取配置类对象中配置类内有对应注解@Bean的组件,进行管理等操作的实现。

Java

Class

Class理解

  • 类的定义:将具有共同特性的对象集合抽象为一个类。简单说,每个学生都是一个对象,有各自的特点,但是作为学生,他们都有着相同的学生方面的属性,如姓名,学号,性别,或是是学习的任务(方法)。将这些共同点进行抽象统一定义成一个模板,就是类。通过类来复用这些共同点,实现每一个学生对象。
  • Class:Class考虑就是这些抽象而成的类,这些各个抽象成的类是否也有一样的共同点?答案是有的。每个类,都有类的属性,方法,静态方法,修饰符或者是这个类中的注解的共同特性,将这些抽象成一个Class类,即这个类抽象的是所有class所具有的共同特性。
# 简单理解就是个名为Class的类。
class Class{
 ...
}

如何获取一个Class对象

# 第一种
Class c1 = String.class
# 第二种
String s = "world";
Class c2 = s.getClass();
# 第三种,需要try catch捕获异常
Class c3 = Class.forName("com.test.Book");

SpringBoot参数获取

参数获取

阿里云OSS

阿里云OSS开通

posted @ 2025-03-26 15:43  chamj  阅读(23)  评论(0)    收藏  举报