Java 常用注解 & 核心方法速查表
常用注解速查
核心注解
注解 | 用途 | 示例 |
---|
@Override | 标记方法重写父类方法 | @Override public String toString() |
@Deprecated | 标记方法/类已过时 | @Deprecated public void oldMethod() |
@SuppressWarnings | 抑制编译器警告 | @SuppressWarnings("unchecked") |
@SafeVarargs | 抑制泛型可变参数警告 | @SafeVarargs public static <T> void method(T... lists) |
@FunctionalInterface | 标记函数式接口 | @FunctionalInterface interface Converter<F,T> |
Spring 相关
注解 | 用途 | 示例 |
---|
@Component | 通用组件标记 | @Component public class MyBean |
@Controller | MVC控制器标记 | @Controller public class UserController |
@Service | 业务层组件标记 | @Service public class UserService |
@Autowired | 自动依赖注入 | @Autowired private UserRepository repo; |
@Value | 注入配置文件值 | @Value("${app.name}") private String appName; |
@RequestMapping | 映射HTTP请求 | @RequestMapping("/api/users") |
@Transactional | 声明事务管理 | @Transactional public void updateUser(User u) |
JPA/Hibernate
注解 | 用途 | 示例 |
---|
@Entity | 声明JPA实体类 | @Entity public class User |
@Table | 指定数据库表名 | @Table(name = "users") |
@Id | 声明主键字段 | @Id @GeneratedValue private Long id; |
@Column | 字段与列映射 | @Column(name = "user_name") |
@OneToMany | 声明一对多关系 | @OneToMany(mappedBy = "user") |
Lombok
注解 | 用途 | 示例 |
---|
@Data | 生成Getter/Setter/ToString | @Data public class User |
@Getter/@Setter | 单独生成Getter/Setter | @Getter @Setter private String name; |
@NoArgsConstructor | 生成无参构造器 | @NoArgsConstructor |
@AllArgsConstructor | 生成全参构造器 | @AllArgsConstructor |
@Builder | 生成构建器模式 | @Builder public class User |
测试相关
注解 | 用途 | 示例 |
---|
@Test | 标记测试方法 | @Test void shouldReturnUser() |
@BeforeEach/@AfterEach | 测试前后执行 | @BeforeEach void setup() |
@Mock | 创建Mock对象 | @Mock UserRepository mockRepo; |
@Spy | 创建Spy对象 | @Spy UserService userService; |
核心方法速查
基础类方法
// Object类
.equals(Object obj) // 对象相等比较
.hashCode() // 获取哈希值
.toString() // 返回字符串表示
// String类
.substring(int begin) // 字符串截取
.split(String regex) // 按正则分割
.length() // 获取长度
.format(String format, Object... args) // 格式化字符串
// Arrays类
.asList(T... a) // 数组转List
.sort(int[] a) // 数组排序
.stream() // 生成流
__
集合操作
// List/Set
.add(E e) // 添加元素
.remove(int index) // 删除元素
.size() // 获取元素数量
.contains(Object o) // 判断包含元素
// Map
.put(K key, V value) // 添加键值对
.get(Object key) // 获取值
.keySet() // 获取所有键
.entrySet() // 获取键值对集合
__
Stream API
.filter(Predicate<T> p) // 过滤元素
.map(Function<T,R> mapper) // 元素转换
.collect(Collectors.toList()) // 收集为集合
.sorted() // 排序
.forEach(Consumer<T> action) // 遍历操作
__
时间日期(java.time)
LocalDate.now() // 当前日期
LocalTime.parse("08:30") // 时间解析
LocalDateTime.of(2023, 1, 1, 0, 0) // 创建日期时间
DateTimeFormatter.ofPattern("yyyy-MM-dd") // 自定义格式
__
并发编程
// Thread
.start() // 启动线程
.sleep(long millis) // 线程休眠
// ExecutorService
.execute(Runnable command) // 执行任务
.submit(Callable<T> task) // 提交带返回值的任务
// CompletableFuture
.supplyAsync(Supplier<U> supplier) // 异步执行
.thenApply(Function<T,U> fn) // 结果转换
__
反射相关
Class.forName(String name) // 加载类
.getDeclaredFields() // 获取所有字段
.getMethod(String name, Class<?>... paramTypes) // 获取方法
.invoke(Object obj, Object... args) // 调用方法
__
函数式接口
Predicate<T> // 条件判断 (test)
Function<T,R> // 类型转换 (apply)
Consumer<T> // 消费数据 (accept)
Supplier<T> // 数据供给 (get)
Comparator<T> // 比较器 (compare)
__
📌 提示:本速查表覆盖Java 8+核心特性,适用于快速参考。实际使用时请注意版本兼容性和具体业务场景。
📚 推荐阅读