문제 대문자와 소문자가 같이 존재하는 문자열을 입력받아 대문자는 소문자로 소문자는 대문자로 변환하여 출력하는 프로그램을 작성하세요. 입력 첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다. 문자열은 영어 알파벳으로만 구성되어 있습니다. 출력 첫 줄에 대문자는 소문자로, 소문자는 대문자로 변환된 문자열을 출력합니다. 예시 입력 StuDY 예시 출력 sTUdy 문제 풀이 [첫번째 풀이] import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner in = new Scanner(System.in); String input = in.next(); for (char c : input.toC..
문제 한 개의 문자열을 입력받고, 특정 문자를 입력받아 해당 특정문자가 입력받은 문자열에 몇 개 존재하는지 알아내는 프로그램을 작성하세요. 대소문자를 구분하지 않습니다.문자열의 길이는 100을 넘지 않습니다. 입력 첫 줄에 문자열이 주어지고, 두 번째 줄에 문자가 주어진다. 문자열은 영어 알파벳으로만 구성되어 있습니다. 출력 첫 줄에 해당 문자의 개수를 출력한다. 예시 입력 Computercooler c 예시 출력 2 문제 풀이 *상단 풀이처럼 콘솔 입출력 방식이 백준 방식, 하단 풀이처럼 Solution이라는 함수를 사용해서 문제를 푸는 방식이 프로그래머스 방식 [첫번째 풀이] import java.util.Scanner; public class Main { public static void main(..
작년, 2021년 12월 10일 아주아주 세계적으로 이슈가 된 아파치의 log4j 2 보안 취약 문제! (https://blog.alyac.co.kr/4341) 그 주말 새벽에 보안팀에서 연락받고나서야 긴급하게 우리 모든 서버에 올라간 소스를 열어 log4j 라이브러리를 사용하고 있는 곳이 있나 다 살펴봤다. 다행인 점은 워낙 레거시라 그런지 log4j를 써도 버전 1을 사용 중이었고, 대부분은 slf4j를 사용 중이었다. 하지만 오히려 가장 최근 소스인 Spring Boot를 사용한 서버에서는 Spring Boot에 내장된 log4j 버전 2가 빌드되어 있었다. 사용하진 않지만 빌드되어 있는 것만으로도 문제가 될까 싶어 우선 build.gradle 파일의 dependencies에 log4j 버전을, 문..
* JAXB : 자바의 XML을 파싱할 수 있게 도와주는 라이브러리로, 기존의 XML 분석 방법이 XML 전체를 String 형식으로 받아와서 문자열을 자르는 방식이었다면 JAXB는 원하는 태그명, 어트리뷰트명을 기입한 클래스를 마련해두기만 하면 자동적으로 값이 클래스에 들어오게 해주는 자동화 라이브러리다. 우선 아래와 같은 XML 객체가 있다. @XmlRootElement(name = "packet") public class GetRequest { private Webspace webspace; public Webspace getWebspace() { return webspace; } public void setWebspace(Webspace webspace) { this.webspace = websp..