发现java不常用的原生注解使用
Generated
,用于标识生成的代码或类是由哪个工具或程序自动生成的,一般是由代码生成器或自动化构建工具生成的代码所使用的。
在实际应用中,一些自动生成代码的工具会在生成的Java源代码中添加 @javax.annotation.Generated 注解,以便于开发者识别代码是否是手动编写的还是由工具生成的。这个注解的值一般包括生成代码的工具的名称和版本号等信息。
@javax.annotation.Generated("MyCodeGenerator v1.0")
public class MyGeneratedClass {
// 生成的代码
}
ManagedBean
我们使用
@ManagedBean注解将Java类MyBean标记为ManagedBean。该类具有一个私有字段message,以及对应的getter和setter方法。
通过将类标记为ManagedBean,容器会在需要时自动创建该类的实例,并将其纳入容器的管理。你可以通过依赖注入或从相应的上下文获取ManagedBean的引用,而不必手动创建和管理对象。
这个和spring的bean一样,spring应该 参考这个了。
@ManagedBean
public class MyBean {
private String message;
public MyBean() {
message = "Hello, ManagedBean!";
}
// Getters and setters
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
@PostConstruct
@PostConstruct是Java EE(现在的Jakarta EE)中的一个注解,它用于标记一个方法,在对象创建和依赖注入完成后立即执行。它通常用于执行一些初始化操作或准备工作。
使用@PostConstruct注解时,需要注意以下几点:
方法必须在非静态的方法上标记。
方法不能有任何参数。
方法的访问修饰符可以是public、protected或package-private(默认修饰符)。
方法不能抛出任何已检查异常。
public class MyClass {
@PostConstruct
public void init() {
// 执行初始化操作
// ...
}
}
@PreDestroy
@PreDestroy是Java EE(现在的Jakarta EE)中的一个注解,它用于标记一个方法,在对象销毁之前执行一些清理或收尾工作。
使用@PreDestroy注解时,需要注意以下几点:
方法必须在非静态的方法上标记。
方法不能有任何参数。
方法的访问修饰符可以是public、protected或package-private(默认修饰符)。
方法不能抛出任何已检查异常。
Spring中,也可以使用@PreDestroy注解,用于执行类似的清理工作。
public class MyClass {
@PreDestroy
public void cleanup() {
// 执行清理或收尾工作
// ...
}
}
@Resource
ava EE中的@Resource注解: @Resource是Java EE中的一个注解,用于标记依赖注入的资源。它可以用于注入各种类型的资源,如数据库连接、JMS队列、JNDI资源等。在Java EE中,@Resource注解通常与命名和管理资源的容器进行交互。通过指定资源的名称或标识符,容器能够在适当的时候注入相关资源。
Spring也支持使用@Resource注解来注入资源
public class MyClass {
@Resource(name = "myDataSource")
private DataSource dataSource;
// ...
}
---------------------------------------------------------------------------
国之殇,未敢忘!
南京大屠杀!
731部队!
(有关书籍《恶魔的饱食》)以及核污染水排海等一系列全无人性的操作,购买他们的食品和为它们提供帮助只会更加变本加厉的害你,呼吁大家不要购买日本相关产品
昭昭前事,惕惕后人
吾辈当自强,方使国不受他人之侮!
---------------------------------------------------------------------------
作者:三号小玩家
出处:https://www.cnblogs.com/q1359720840/
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。 版权信息

浙公网安备 33010602011771号