본문 바로가기

분류 전체보기520

달력 예제 const calendar = document.getElementById('calendar'); function renderingCalendar(year, month) { const firstDay = new Date(year, month, 1).getDay(); const lastDay = new Date(year, month + 1, 0).getDate(); calendar.innerText = ''; for (let i = 0; i < firstDay; i++) { const emptyCell = document.createElement('div'); emptyCell.classList.add('cell'); calendar.appendChild(emptyCell); } for (let i = 1; i 2023. 8. 27.
로그인 폼 로그인 1. 태그를 사용 해서 submit을 해도 되고, 태그를 사용 해서 submit을 해도 된다. 2. DOM (Document Object Model) DOM은 웹 페이지의 구조를 트리 형태로 표현 하는 모델 이다. 웹 페이지의 HTML 요소들을 자바스크립트로 조작할 수 있는 방법이다. 3. getElementById() getElementById() 메서드는 주어진 아이디 값을 가진 HTML 요소를 찾아서 반환 한다. 웹 페이지에서 고유한 아이디를 가진 요소를 찾을 때 사용 된다. 위의 경우라면, loginForm, mid, mpw 가 고유한 식별자 == 아이디 이다. 4. addEventListener('submit', function (event) { ... } ) addEventListene.. 2023. 8. 27.
생성자 함수 개념 1. 객체 생성시, 아래와 같이 생성 할 수 있다. 2. 그런데, 객체를 여러개 생성 해야 할 때, 위와 같이 코드를 작성 하면, 불리 하다. 그래서, 생성자를 작성 해서, 객체를 생성 할 수 있다. 3. 생성자 함수명은 관례적으로 대문자로 시작 하는것으로 작성 한다. 함수명 앞에 new 키워드를 붙히면, 즉, new 함수명(); 을 작성 하면, 아래와 같은 알고리즘으로 동작 하게 된다. 6번째 라인과 같이, 빈 객체를 생성 하고, this에 할당 한다. 그 다음에, this에 프로퍼티들을 추가 한다. 실제로 this = {} 코드는 작성된 코드가 아니지만, 저렇게 동작 한다는 것이다. 일일히 객체에 리터럴을 작성 하지 않고, 훨씬 빠르고 일관성 있게 객체를 생성 할 수 있게 된다. 4. 예시 01) 위.. 2023. 8. 27.
예외처리 15 ~ 18 - 사용자 정의 예외 만들기, 예외 되던지기, 연결된 예외 사용자 정의 예외 만들기, 예외 되던지기 사용자 정의 예외 만들기 - 우리가 직접 예외 클래스를 정의 할 수 있다. - 조상은 Exception과 RuntimeException 중 에서 선택 하기. Exception 예외 >> 사용자가 발생 시키는 예외. (예외 처리 필수) RuntimeException 예외 >> 개발자의 실수로 발생 시키는 예외. (예외 처리 선택) 예시) class MyException extends Exception { MyException(String msg) { // 문자열을 매개변수로 받는 생성자. super(msg); // 조상인 Exception 클래스의 생성자를 호출. } } 예외 되던지기 (exception re-throwing) - 예외를 처리한 후에 다시 예외를 발.. 2023. 8. 27.
예외처리 11 ~ 14 - 메서드에 예외 선언 하기, finally 블럭 메서드에 예외 선언 하기, finally 블럭 메서드에 예외 선언 하기 - 예외를 처리 하는 방법 : try-catch 문, 예외 선언 하기. try-catch 문 : 직접 처리 O. 예외 선언 하기 : 직접 처리 X. (떠넘기기 / 던지기) - 메서드가 호출시 발생 가능한 예외를 "호출 하는 쪽" 에 알리는 것. 참고 : 예외 발생 키워드 : throw 예외를 메서드에 선언 하는 키워드 : throws 둘을 잘 구별 하기. void method() throws Exception1, Exception2, .. ExceptionN { // 메서드의 예외 선언 (throws 키워드 사용) // 메서드의 내용. } void method() throws Exception { // 모든 종류의 예외가 발생 하는 .. 2023. 8. 27.
Map (링크드 해시맵) 예제 02 package practice; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Scanner; public class Hashmap { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(true) { System.out.print("텍스트 입력 >> "); String text = sc.nextLine(); if(text.equals("종료") || text.equals("end") || text.equals("END")) { Syste.. 2023. 8. 26.
Spring 프레임워크 - 다국어 처리 기능 과거에는 다른 언어로 웹 브라우저 서비스를 제공 해야 할 때, .jsp 파일 자체를 여러개 제작 해서 서비스를 했었다. 하지만, Spring 프로젝트 에서는, "메세지 파일" 을 제작 해서, 하나의 Xxx.jsp 파일에서 버튼을 간단하게 클릭 하는 것으로, 사용자가 원하는 언어로 서비스를 제공 할 수 있는 기능이 존재 한다. 1. src/main/resources 에 message 라는 이름으로 패키지 생성. 2. message 페키지 내부에 언어에 관한 파일을 생성. 이때, 파일 이름은 크게 상관 없지만, 파일 이름 곧바로 나오는 _ (언더바) 뒤의 "언어형식" 은 반드시 지켜 줘야 하고, 파일 생성시, 파일 형식은 반드시 .properties 로 생성 한다. 예시) messageFile_ 까지는 공통.. 2023. 8. 24.
Spring 프레임워크 - 어노테이션을 활용하여 비동기처리 구현 하기 1. 비동기처리를 구현 하기 위해서, ajax 메서드를 사용 할 수 있다. 따라서, jQuery를 활용 해야 하므로, jQuery 링크를 CDN 방식으로 가져왔다. https://releases.jquery.com/ jQuery CDN jQuery CDN – Latest Stable Versions jQuery Core Showing the latest stable release in each major branch. See all versions of jQuery Core. jQuery 3.x jQuery 2.x jQuery 1.x jQuery Migrate jQuery UI Showing the latest stable release for the current and legac releases.jq.. 2023. 8. 22.
NullPointerException (예외) a) 메인 페이지 에서, 구독 버튼을 클릭 했을 때 발생 하는 예외. b) java.lang.NullPointerException. c) java.lang.NullPointerException 예외 ? : this.jdbcTemplate is null 이라 발생 하는 이슈 이다. d) 해결 방안 우선, 구독 버튼을 누르면, SubscriptionController 로그가 뜨기 때문에, 해당 페이지를 확인 하기. 문제 없이 들어와지고, selectOne() 메서드를 수행 한다. selectOne() 메서드를 사용하는 주체는 subscriptionService 이므로, 해당 참조변수가 있는 클래스로 이동해보자. 서비스 레이어가 구현된 클래스 이고, 해당 클래스 내부에서 selectOne() 메서드를 호출하면.. 2023. 8. 21.