。゚(*´□`)゚。

코딩의 즐거움과 도전, 그리고 일상의 소소한 순간들이 어우러진 블로그

강의 43

[js] a href = #

또 코드를 분석하던 중 관리자모드에서 링크를 누르면 설정한 페이지로 안 가고 자꾸 메인페이지로 넘어가서 한참 뜯어봤다. a href = "#다른 코드 아이디값" 요소의 href 속성에 #을 사용하면 보통은 현재 페이지 내의 특정 위치를 가리키며, 연결된 요소가 iframe인 경우 해당 페이지 정책에 따라 해당 iframe 링크로 이동할 수 없어서 페이지의 최상위로 돌아간다고 한다. 맡은 기능을 뚝딱뚝딱 만들기에 급급했는데 속에 이런 비밀들이 숨어있는 줄 몰랐다.

[js] 함수 재정의, 파라미터 추가, undefined

header에서 정의한 함수 A(name, url)가 body에서 A(name,url,seq)로 다시 정의되고 사용이 되는데 어떻게 연결이 되고 실행이 되는지 이해가 안 돼서 한참 분석해니 ,,!! 자바스크립트는 함수를 새로 정의하면서 새로운 매개변수를 추가하더라도 기존에 전달하던 파라미터는 그대로 전달되고, 새로운 함수 정의에서는 기존 매개변수 이후에 새로운 매개변수를 추가하여 호출할 수 있단다 ! 그리고 전달되지 않은 파라미터 seq를 어떻게 처리하는 건지 이해가 안 됐는데 전달되지 않은 파라미터는 'undefined'로 간주된다고한다. body의 함수 내에서 seq가 undefined인 경우 seq를 1로 선언한다는 내용이 있었다. 자바 밖에 모르는 자바순이여서 상상도 못한 흐름이라 너무 깜짝 놀랐..

연산자

연산자 + : 문자끼리 더하기 가능. 그대로 이어 붙여진 형태 '문자1' + '문자2' === '문자1문자2' '문자를' + 123 === '문자를123' / : 나누어 떨어지지 않을 땐 올림, 내림 등 메서드 사용 10 / 2 = 5 Math.ceil(10 / 3) = 4 비밀번호 만들기 - 비밀번호를 생년월일에 회사 설립연도를 더한 숫자로 설정 - 팀원 생년월일: birth, 설립연도: date - retrun "비밀번호는 @@@@입니다." function solution(birth,date) { const password = birth + date; return "비밀번호는 "+password+"입니다."; } //모범답 function solution(birth,date) { return '비밀번..

변수 만들기 const / let

# 변수 만들기 const 변수명 = 값; let 변수명 = 값; * let : 선언만 먼저 가능, 할당 값 변경 가능 * const: 선언과 함께 값 할당해야하고 변경 불가 / 의도하지 않게 값이 바뀌는 일 방지 # let let을 이용해 company라는 변수명으로 a를 할당하여 선언한 후에 b로 재할당한 후 company라는 변수를 return하는 함수 solution 만들기 function solution(a,b) { let company = a; company = b; return company; } # const 추천메뉴 recommend가 매개변수로 주어질 때, 해당 추천 메뉴를 menu 상수에 선언 및 할당하여 return 하는 solution 함수 만들기 function solution(..

[Spring 입문] 5. 웹 MVC 개발/Thymeleaf

Thymeleaf를 사용하는 웹 페이지에서 XML 네임스페이스를 정의하는 부분 Thymeleaf는 서버 사이드 및 클라이언트 사이드 템플릿 엔진으로 사용되며, th:로 시작하는 속성을 사용하여 템플릿에서 서버 변수 및 표현식을 사용할 수 있음. 이렇게 정의된 네임스페이스는 Thymeleaf 속성을 사용할 때 사용. th:text="${pageTitle}"는 서버 변수 pageTitle의 값을 출력하는 Thymeleaf 속성 Default Title 회원 웹 기능 - 홈 화면 추가 package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.ann..

강의/Spring 2023.12.11

[Spring 입문] 4. 스프링 빈과 의존관계

스프링 빈(Spring Bean) 스프링 프레임워크에서 관리되는 객체 스프링은 객체 지향 프로그래밍의 장점을 활용하여 애플리케이션을 개발하는데, 이때 많은 객체들이 생성되고 관리되어야 합니다. 스프링 빈은 이러한 객체들을 스프링 컨테이너가 생성, 관리, 조립하여 제공하는 것입니다. 특징: 생성과 소멸의 관리: 스프링 컨테이너가 객체의 생성과 소멸을 담당하므로 개발자는 객체의 생명주기를 직접 다룰 필요가 없습니다. 의존성 주입(Dependency Injection): 스프링은 빈을 생성하고 조립할 때 의존성 주입(DI)을 통해 필요한 의존 객체들을 자동으로 주입합니다. 이로써 객체 간의 결합도가 낮아지며 유지보수와 테스트 용이성이 향상됩니다. 스코프 관리: 스프링은 빈의 스코프를 관리하며, 싱글톤, 프로토..

강의/Spring 2023.12.11

[Spring 입문] 3. 회원 도메인 개발

일반적인 웹 어플리케이션 구조 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 회원 객체 public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 회원 ..

강의/Spring 2023.12.11

[JSP 게시판 만들기] 14. 웹 사이트 메인 페이지 디자인

jumbotron 폰트꾸미기 캐러셀 만들기 폰트꾸미기 위한 css 파일 생성 @import url(http://fonts.googleapis.com/earlyaccess/nanumgothic.css); @import url(http://fonts.googleapis.com/earlyaccess/hanna.css); * { font-family : 'Nanum Gothic'; } h1 { font-family : 'Hanna'; } main 페이지 웹사이트 소개 이 웹사이트는 부트스트랩으로 만든 JSP 웹 사이트입니다. 최소한의 간단한 로직만을 이용해서 개발했습니다. 디자인 템플릿으로는 부트스트랩을 사용했습니다. 포트폴리오 전체보기 캐러셀 만들기!

[JSP 게시판 만들기] 13. 게시글 수정 및 삭제 기능 구현하기

onclick BbsDAO 에 update 메서드 추가 post method 설정 및 기존 글 내용 출력되게 표시 게시판 글수정 양식 넘어온 BbsTitle과 BbsContent 값이 null이거나 빈문자열인 경우 체크 if (request.getParameter("bbsTitle") == null || request.getParameter("bbsContent") == null || request.getParameter("bbsTitle").equals("") || request.getParameter("bbsContent").equals("")) { update 메서드 실행 BbsDAO BbsDAO = new BbsDAO(); int result = BbsDAO.update(bbsID, request..