public class YoilTeller { //년월일을 입력하면 해당 날짜의 요일이 출력됨
public static void main(String[] args) {
//입력
String year = args[0];
String month = args[1];
String day = args[2];
// int로 변환
int yyyy = Integer.parseInt(year);
int mm = Integer.parseInt(month);
int dd = Integer.parseInt(day);
// 날짜 계산
Calendar cal = Calendar.getInstance();
cal.set(yyyy, mm-1, dd);
int datOfWeek = cal.get(Calendar.DAY_OF_WEEK);//요일이 숫자로 나온다 1:일요일, 2:월요일
char yoil = " 일월화수목금토".charAt(datOfWeek);//숫자를 문자로 바꿔줌 1이면 '일'
System.out.println(year +"년 " + month + "월 " + day +"일은 ");
System.out.println(yoil + "요일입니다. ");
}
}
메서드들로 불러온 값으로 이루어져 있다
@Controller
public class RequestInfo {
@RequestMapping("/requestInfo")
// public static void main(String[] args) {
public void main(HttpServletRequest request) {
System.out.println("request.getCharacterEncoding()="+request.getCharacterEncoding()); // 요청 내용의 인코딩
System.out.println("request.getContentLength()="+request.getContentLength()); // 요청 내용의 길이. 알수 없을 때는 -1
System.out.println("request.getContentType()="+request.getContentType()); // 요청 내용의 타입. 알 수 없을 때는 null
System.out.println("request.getMethod()="+request.getMethod()); // 요청 방법
System.out.println("request.getProtocol()="+request.getProtocol()); // 프로토콜의 종류와 버젼 HTTP/1.1
System.out.println("request.getScheme()="+request.getScheme()); // 프로토콜
System.out.println("request.getServerName()="+request.getServerName()); // 서버 이름 또는 ip주소
System.out.println("request.getServerPort()="+request.getServerPort()); // 서버 포트
System.out.println("request.getRequestURL()="+request.getRequestURL()); // 요청 URL
System.out.println("request.getRequestURI()="+request.getRequestURI()); // 요청 URI
System.out.println("request.getContextPath()="+request.getContextPath()); // context path
System.out.println("request.getServletPath()="+request.getServletPath()); // servlet path
System.out.println("request.getQueryString()="+request.getQueryString()); // 쿼리 스트링
System.out.println("request.getLocalName()="+request.getLocalName()); // 로컬 이름
System.out.println("request.getLocalPort()="+request.getLocalPort()); // 로컬 포트
System.out.println("request.getRemoteAddr()="+request.getRemoteAddr()); // 원격 ip주소
System.out.println("request.getRemoteHost()="+request.getRemoteHost()); // 원격 호스트 또는 ip주소
System.out.println("request.getRemotePort()="+request.getRemotePort()); // 원격 포트
}
}
[실행결과] http://localhost:8080/ch2/requestInfo?year=2021&month=10&day=1
request.getCharacterEncoding()=UTF-8
request.getContentLength()=-1
request.getContentType()=null
request.getMethod()=GET
request.getProtocol()=HTTP/1.1
request.getScheme()=http
request.getServerName()=localhost
request.getServerPort()=8080
request.getRequestURI()=http://localhost:8080/ch2/requestInfo
request.getRequestURI()=/ch2/requestInfo
request.getContextPath()=/ch2
request.getServletPath()=/requestInfo
request.getQueryString()=year=2021&month=10&day=1
request.getLocalName()=localhost
request.getLocalPort()=8080
request.getRemoteAddr()=0:0:0:0:0:0:0:1 <--- AWS에 배포(deploy)한 다음에 실행하면, 실제 ip주소를 확인할 수 있음.
request.getRemoteHost()=0:0:0:0:0:0:0:1 <--- AWS에 배포(deploy)한 다음에 실행하면, 실제 ip주소를 확인할 수 있음.
request.getRemotePort()=54855
@Controller
public class YoilTeller { //년월일을 입력하면 해당 날짜의 요일이 출력됨
// public static void main(String[] args) {
@RequestMapping("/getYoil")
public void main(HttpServletRequest request) {
// System.out.println(year +"년 " + month + "월 " + day +"일은 ");
// System.out.println(yoil + "요일입니다. ");
response.setContentType("text/html"); //타입을 지정해줘야한다
response.setCharacterEncoding("utf-8"); // 한글로 인코딩
PrintWriter out = response.getWriter(); //response 객체에서 브라우져로의 출력 스트림을 얻는다
out.println(year +"년 " + month + "월 " + day +"일은 ");
out.println(yoil + "요일입니다. ");
텍스트 파일의 장점: 사람이 읽기 쉽다
- 2진법: 0, 1
- 10진법 : 0 ~ 9
- 16진법 : 0 ~ 9, ABCDEF
- 64진법 : 0 ~ 9, A ~ Z, a ~ z, +, /
= 6비트 2의 6승- 아스키 코드는 128개, 특수문자 포함