1. GetAsyncKeyState() 함수와 GetKeyState() 함수GetAsyncKeyState() 함수와 GetKeyState() 함수는 키보드의 키가 눌렸는지를 체크하는 함수들이다.C++에서 해당 함수들을 이용하여 사용자가 해당 키보드의 키를 눌렀을 때 관련된 이벤트들을 코딩할 수 있다.그렇다면 GetAsyncKeyState() 함수와 GetKeyState() 함수의 차이는 무엇일까?2. GetAsyncKeyStatus() 함수GetAsyncKeyState() 함수는 이름에도 적혀있듯이 비동기(Asynchronism)로 처리한다. 즉, 호출된 시점에서 키 상태를 확인하여, 메시지 큐를 거치지 않고 바로 리턴을 해준다.메시지 큐를 거치는 GetKeyState() 함수와 달리 메시지 큐를 거치..
갑자기 C언어를 왜 하게 되었냐 하면,,이러쿵 저러쿵 사연때문에 전환배치를 받았다. 동시에 사용하는 언어도 변경되었다.Java -> C++..C와 C++를 대학교 1학년 때 배운 후 오랜만이라 많이 잊어버렸지만 ㅎ 다시 잘 적응할 수 있을 거라고 생각한다.하지만 Java를 놓을 생각은 없다. 그러므로 Java는 업무시간 외에(혹은 몰래?) 개발을 쏙쏙 해 볼 예정이다. 아무튼.. 이유여하를 막론하고 새롭게(?) 다시 배우는 C언어.. 정리 가보자고~ 1. 포인터포인터는 말 그대로 '가르킨다' 라는 뜻으로 이해하면 좋을 것이다.C언어에서 모든 변수는 주소(address)를 갖고 있다. 이 주소를 통해 값을 가져오고, 변경하기 위해 포인터는 사용된다.먼저, 변수의 주소를 알기 위해서 & 연산자를 사용한다. ..
1. Enum 이란? Enum이란 Enumeration의 앞 글자로 열거라는 의미를 갖습니다. 관련이 있는 상수들의 집합입니다. 자바에서는 final로 String과 같은 문자열이나 숫자들을 나타내는 기본 자료형의 값을 고정할 수 있습니다. 이렇게 고정된 값을 상수라고 합니다. 영어로는 constant입니다. 어떤 클래스가 상수만으로 작성되어 있으면 반드시 class로 선언할 필요는 없습니다. 이럴 때 class로 선언된 부분에 enum이라고 선언하면 이 객체는 상수의 집합이다. 라는 것을 명시적으로 나타냅니다. 2. Enum의 특징 1) 상수로 사용할 수 있다. 생성자는 private로 작성해야됩니다. Default 생성자 또한 private입니다. public enum BodyPart { BACK, ..
--%>이순신1. JSTL이란?JSTL은 JavaServer Pages Standard Tag Library의 약어로 Java EE 기반의 웹 애플리케이션 개발 플랫폼을 위한 컴포넌트 모임이다. JSTL은 JSP의 확장 태그로, XML 데이터 처리와 조건문. 반복문 같은 일을 처리할 수 있다.(위키백과 참고) 2. JSTL 사용하기JSTL을 사용하기 위해서는 JSTL 라이브러리를 선언해줘야 한다. 여기서 prefix는 JSTL 태그를 사용할 때 사용되는 접두사를 의미한다. 3. JSTL core 태그태그명설명출력문을 만드는 태그변수명에 값을 할당하는 태그조건식이 true면 실행되는 태그다른 언어의 switch-case와 같은 기능을 하는 태그switch-case문의 case에 해당되는 태그switch-c..
2023.05.03 - 2023.05.12 게시판 프로젝트 (7) 유효성 검사 1. Validator 프로젝트 진행 중 회원가입 시 중복된 아이디라던지, 필수 입력 내용 확인 등 유효성 검사가 제대로 실행되지 않았다. 패스트캠퍼스 강의를 다시 듣던 중 그 이유를 알아내게 되었다. 두둥탁 일단 유효성 검사에 대한 지식이 부족하기에 정의와 설명을 한 뒤에 내가 구현한 내용을 설명하려고 한다. 해당 내용들은 블로그(https://midas123.tistory.com/187)를 참고했다. 스프링은 유효성 검사에 사용할 수 있는 Validator 인터페이스를 제공한다. 객체 검정, 에러 메시지 지원 등의 기능을 사용할 수 있다. Validator 인터페이스에서는 supports(), validate() 메서드를 ..
2023.04.13 - 2023.04.14 게시판 프로젝트 (6) 탈퇴하기 1. 탈퇴하기 마이페이지 수정 기능을 추가 후에 어떤 기능이 더 있으면 좋을지 생각하던 중, 탈퇴하기 기능이 있으면 좋겠다는 생각이 들었다. 탈퇴하기는 마이페이지에 수정하기 버튼 아래에 생성해서 마이페이지에 들어가야만 탈퇴를 진행할 수 있도록 해야겠다고 생각이 들었다. 1) 탈퇴하기 버튼 생성 2) 탈퇴하기 버튼 클릭 시 경고창 띄우기 3) 확인 버튼을 누른다면, 탈퇴 진행하고 로그아웃 된 상태로 메인 페이지로 이동 4) 취소 버튼을 누른다면, 탈퇴 진행하지 않고 그대로 마이페이지 화면 출력 탈퇴하기 버튼을 클릭하면, confirm으로 '정말 탈퇴하시겠습니까?' 경고창이 뜨도록 설정했다. 만약 확인을 누른다면 form의 actio..
2023.04.03 - 2023.04.12 게시판 프로젝트 (5) 마이페이지 수정기능 1. 마이페이지 수정 기능 로그인 후에 자신의 정보를 확인할 수 있는 "마이페이지" 메뉴 추가 후, 좀 더 세밀한 기능과 마이페이지 수정 기능을 추가하였다. 1) 로그인을 하지 않았다면, 로그인 페이지로 넘어가는 기능 2) 마이페이지 수정 기능 먼저, 로그인을 하지 않았다면, 로그인 페이지로 넘어가는 기능은 RegisterController.java에서 추가하였다. @GetMapping("/info") public String registerInfo(HttpServletRequest request) { if(!loginCheck(request)) return "redirect:/login/login?toURL="+req..
2023.03.29 - 2023.03.31 게시판 프로젝트 (4) 마이페이지 만들기 1. 마이페이지 추가 로그인 후에 자신의 정보를 확인할 수 있는 "마이페이지" 메뉴를 추가하였다. 현재는 자신의 정보를 확인할 수 있는 기능만 하지만, 추가적으로 수정할 수도 있는 기능을 추가할 예정이다. 사용자가 로그인을 하면 LoginController에서 session.setAttribute를 통해 아이디, 비밀번호, 이름, 이메일, 생일, SNS을 저장한다. 저장된 내용은 registerInfo.jsp에서 ${sessionScope.id}, ${sessionScope.pw} 등의 방식으로 해당 값을 받아올 수 있다. session이란 브라우저에 할당되는 메모리 공간이다. session은 브라우저가 종료될 때까지 서..