본문 바로가기

dev151

[Javascript] DOM DOM : 문서객체모델 (Document Object Model)은 HTML 또는 XML에 접근하기 위한 인테페이스로, 문서내의 모든 요소를 정의하고, 각각의 요소에 접근하는 방법을 제공한다. 자바스크립트는 이러한 객체 모델을 이용하여 다음과 같은 작업을 할 수있다. - 자바스크립트는 새로운 HTML 요소나 속성을 추가할 수 있습니다. - 자바스크립트는 존재하는 HTML 요소나 속성을 제거할 수 있습니다. - 자바스크립트는 HTML 문서의 모든 HTML 요소를 변경할 수 있습니다. - 자바스크립트는 HTML 문서의 모든 HTML 속성을 변경할 수 있습니다. - 자바스크립트는 HTML 문서의 모든 CSS 스타일을 변경할 수 있습니다. - 자바스크립트는 HTML 문서에 새로운 HTML 이벤트를 추가할 수 있.. 2022. 3. 27.
[Javascript] 2차원배열 2차원 배열이란 [ [ 1, 2, 3 ], 0 [ 4, 5, 6 ], 1 [ 7, 8, 9 ] 2 ]; 위와 같은 방식으로 배열안에 배열이 들어가있는 형식이다. 이때 주로 data[][] []를 2번 표시하여 나타내준다. 이때 첫번쨰 []는 행의 숫자를말하는 것으로 현재는 0,1,2 총 3행이있고 1행안에서 3열이 존재하는 것이다. 즉 [0,1] = 1 [0,2] = 2 [0,3] = 3 [1,1] = 4 [1,2] = 5 [1,3] = 6 [2,1] = 7 [2,2] = 8 [2,3] = 9 가된다. 위와 같이 주로 2차원 배열의 경우 forEach문을 2개 사용하여 만들며, 첫번쨰로 선언한 data 배열안에 rowData 배열을 넣어준후에 rowData에 0을 넣어주고 있다. 이때 4번 4번씩 반복되.. 2022. 3. 25.
[Javascript] .map forEach와 Map의 차이점을 말하자면 수정된 배열의 return 여부로 나뉜다. Map의 경우는 원본 배열을 수정하여 새로운 배열을 return할 수 있으나 forEach는 불가능하며, forEach의 경우는 기존배열을 가공하여 값을 변경할 수 있다. 일단 기본적으로 map의 경우 사용방법은 다음과 같다. Map의 원본 배열을 가공하여 새 배열을 만드는것을 확인해보자 보시다 시피 원본배열을 수정하여 새로운 배열을 만들수 있다. 동일한 방법으로 forEach를 활용해보자 동일한 방법으로 수행했지만 undefined 가 찍혀서 나왔으며, 원본 파일을 수정하여 새로운 배열을 만드는것이 불가능 함을 확인 할 수있다. 위와 동일하게 rearr 은 undefined 되어 값이 출력되지않았찌만 기존의 arr 배.. 2022. 3. 10.
[Spring] HttpServeltRequest, HttpServeltResponse, Session 로그인 로그아웃시 세션 생성 및 세션 삭제 방법.. 오랜만에 구현하려고 했더니 생각이 안나서 다시 정리해봤다. 웹브라우저에서 클라인언트로부터 서버로 요청이 들어오면 서버에서는 HttpServletRequeset가 생성되며, 요청정보에 있는 PATH로 맵핑된 서블렛에게 전달된다. 즉 Client가 Server로 요청을 보내면 해당 Client의 요청에 맞는 Servlet으로 데이터가 전달되는데 해당 데이터를 Server 측에서 HttpServletRequest로 요청을 받아 들일수 있다. 해당 Client의 요청 데이터를 HttpServletRequest res의 getParameter("변수명") 으로 받을수 있다 String value = res.getParameter("name"); 또한 Model을.. 2022. 3. 10.
[Spring] Bean 생성 Bean 설정을 하면서 Bean 생성이 뭐 어떻게 되는거지 라는의문점이 생겨서 직접 JAVA로 Bean을 생성해 봤다. 일반 Bean의 속성에 대해서 알아보자면 class : 정규회된 자바 클래스 이름 id : bean의 고유 식별자 scope : 객체의 범위(Singleton, Prototype) -singleton : 하나의 Bean정의에 대해 Spring IocContainer 에서 단 하나의 객체만 존재, (default : singleton) -prototype : 하나의 Bean 정의에 대해서 다수의 객체가 존재할 수 있음 constructor-arg : 생성자에 전달할 인수 property : 생성시 Bean setter에 전달할 인수 init Method와 Destory Method 첫번째.. 2022. 3. 4.
[JUnit] JUnit 사용하여 단위테스트 하기 JUnit을 사용하기 위해서는 dependecy를 추가해줘야 한다. dependecy를 추가해주는데 spring-test를 추가해주는데 이때 version을 선택해줘야 하는데 이때 spring의 버전과 동일하게 맞춰줘야 한다. 이렇게 dependency를 추가하면 @Runwith 어노테이션과 @ContextConfiguration을 사용할 수 있다. @RunWith(SpringJUnit4ClassRunner.class) @RunWith는 JUnit 프레임워크의 테스트 실행방법을 확장할 때 사용하는 어노테이션이다. SpringJUnit4ClassRunner라는 클래스를 지정해주면 JUnit이 테스트를 진행하는 중에 ApplicationContext를 만들고 관리하는 작업을 진행해준다. @RunWith 어노.. 2022. 3. 2.
[외부설정파일 가져오기] property-placeholder 외부 파일 설정시에 사용하는 property-placeholder방법에 대해서 여러가지로 알아보자. property-placeholder를 사용할경우 bean 설정시에 외부 파일에서 정의한 내용을 가지고 사용할수 있다 ${....} 형식으로. 일단 3가지 방법이있다. 1. context property-placeholder를 설정하는방법 2. PropertyPlaceholderConfigurer를 Bean으로 등록하여 사용하는 방법 - locations로 위치를 정해주는 방법과, 외부설정파일을 다시 bean으로 등록하여 참조하는 방법이있다. 1. context property-placeholder를 설정하는방법으로는 --root-context.xml에서 등록을 해주는데. 우선 namespace에서 con.. 2022. 3. 2.
[문제해결] The fully qualified name of the bean's class, except if it serves only as a parent definition for child bean definitions. root-context.xml을 통해서 bean등록을 하려고 할경우. "The fully qualified name of the bean's class, except if it serves only as a parent definition for child bean definitions." 라는 경고문구를 본적이 있는가? 이는 해당 class가 dependency등록이 되어 있지 않아서 해당 bean등록을 할 수 없음을 말한다. bean 설정에 필요한 class를 dependency를 추가하면 해결된다. 2022. 3. 2.
[DB/Oracle] ORACLE 개념 1. ROWNUM / ROWID -ROWNUM은 where 절에 의해 추출된 data에 ROW단위로 붙는 순번으로 자료의 순서를 다른 목적으로 이용하고자 할때 유용하게 쓰이는 정보이다. -where절에 ROWNUM을 조건이 들어갈때는 항상 다른 조건을 모두 만족시킨 data에 의해서 조건이 반영된다. 또한 where절에 rownum으로 = = 등의 연산자를 붙여서 조건절을 만들면 rownum 5 또는 rownum = 5 와 같은 행을 보고 싶다면 IN LINE VIEW를 이용하여 자료를 한번더 가공해야 한다. ** IN LINE VIEW - 서브쿼리가 FROM절 안에서 사용되는 경우 해당 서브쿼리를 '인라인뷰'라고 한다. - FROM절에서 사용된 서브쿼리의 결과가 하나의 테이블에 대한 VIEW처럼.. 2022. 2. 22.
[DB/Oracle] SUB QUERY SUB QUERY : SELECT 한 결과를 조건비교에 사용하거나 UPDATE OR INSERT할때 사용한다. 조건 비교에 SELECT한 결과를 사용할 수 있다는 말은 SELECT, DELETE, UPDATE시의 WHERE절에 사용될 수 있다는 의미 이므로 DML 어디서든 사용 될 수 있다는 의미이다. 서브쿼리는 InnerQuery, OuterQuery로 구성되어 있다. Query의 조건에서 컬럼과 비교되는 상대값으로 또 다른 쿼리의 결과가 사용되는 경우를 예로 들어 사용하면, 또다른 쿼리를 InnerQuery라 하고 InnerQuery에서 나온 결과를 비교조건으로 사용하는 쿼리를 OuterQuery라 칭한다. 서브쿼리를 종류별로 나눠보면 SINGLE ROW, MULTI ROW, MUTI COLUM, C.. 2022. 2. 22.