public enum AlarmType {
	CHATTING("채팅"),  // 해당 Enum 값에 대한 설명(한글)
	FEED("피드"),
	FAVORITE("좋아요"),
	NOTICE("공지"),
	COMMENT("댓글"),
	FOLLOW("팔로우");

	private final String alarmType;

	@JsonValue // 객체를 JSON으로 변환할 때 사용되는 값, JSON으로 직렬화될 때 "채팅" 으로 출력
	public String getAlarmType() {
		return alarmType;
	}

	@JsonCreator // JSON을 객체로 변환 (역직렬화), JSON에서 "채팅"을 받을 때 AlarmType.CHATTING으로 변환
	public static AlarmType fromString(String alarmType) {
		for (AlarmType type : AlarmType.values()) {
			if (type.getAlarmType().equals(alarmType)) {
				return type;
			}
		}
		throw new IllegalArgumentException("알 수 없는 타입입니다. "+alarmType);
	}

}
// 컨트롤러로 전달되는 파라미터를 Enum으로 변환하기 위해 사용
@Component
public class AlarmTypeConverter implements Converter<String, AlarmType> {
	@Override
	public AlarmType convert(String source) {
		return AlarmType.valueOf(source.toUpperCase()); // JSON에서 전달된 값 -> Enum 변환
	}

}