목록분류 전체보기 (108)
Keep going
첨부파일을 서버에 전송하는 방식은 크게 태그를 이용해서 업로드하는 방식과 Ajax를 이용하는 방식으로 나눠볼 수 있다. 태그를 이용하는 방식 : 브라우저의 제한이 없어야 하는 경우에 사용 일반적으로 페이지 이동과 동시에 첨부파일을 업로드하는 방식 을 이용해서 화면의 이동 없이 첨부파일을 처리하는 방식 Ajax를 이용하는 방식 : 첨부파일을 별도로 처리하는 방식
tbl_reply 테이블에 insert하고, tb1_board 테이블에는 댓글의 수를 의미하는 replyCnt라는 칼럼을 추가해서 해당 게시물 댓글의 수를 update 한다. tb1_board 테이블에는 replyCnt 칼럼을 추가 alter table tb1_board add (replycnt number default 0); cs 기존의 댓글에 존재했다면 replyCnt에 반영해 두어야 하므로 아래의 쿼리를 실행한다. update tb1_board set replycnt = (select count(rno) from tbl_reply where tbl_reply.bno = tb1_board.bno); cs 20.1 프로젝트 수정 데이터베이스가 수정 되었으므로 BoardVO 클래스, MyBatis의 S..
비즈니스에서는 쪼개질 수 없는 하나의 단위 작업을 말할 때 트랜잭션이라는 용어를 사용한다. 원자성 하나의 트랜잭션은 모두 하나의 단위로 처리되어야 한다. 좀 더 쉽게 말하면 어떤 트랜잭션이 A와 B로 구성된다면 항상 A, B의 처리 결과는 동일한 결과이어야 한다. 즉 , A는 성공했지만, B는 시래할 경우 A,B는 원래 상태로 되돌려져야 한다. 일관성 트랜잭션이 성공했다면 데이터베이스의 모든 데이터는 일관성을 유지해야 한다. 트랜잭션으로 처리된 데이터와 일반 데이터 사이에는 전혀 차이가 없어야 한다. 격리 트랜잭션으로 처리되는 중간에 외부에서의 간섭은 없어야 한다. 영속성 트랜잭션이 성공적으로 처리되면, 그 결관느 영속적으로 보관되어야 한다. 예를 들어, 트랜잭션의 가장 흔한 예시는 계좌 이체( bank..
AOP는 흔히 '관점 지향 프로그래밍' 이라는 용어로 번역되는데, 이때 관점 이라는 용어는 개발자들에게는 관심사라는 말로 통용된다. 관심사는 개발 시 필요한 고민이나 염두에 두어야 하는 일이라고 생각할 수 있는데, "파라미터가 올바르게 들어왔는지" "이 작업을 하는 사용자가 적절한 권한을 가진 사용자인지", "이 작업에서 발생할 수 있는 예외는 어떻게 처리해야 하는지" 등이 있다. 핵심 로직은 아니지만 , 코드를 온전하게 만들기 위한 고민들로, 전통적인 방식에선 개발자가 반복적으로 이 고민을 코드에 반영한다. AOP는 이러한 고민을 다른 방식으로 접근하는데. 바로 "관심사의 분리"이다. AOP는 개발자가 염두에 두어야 할 것들을 관심사로 분리하고, 핵심 비즈니스 로직만을 작성할 것을 권장한다. AOP는 ..
today's Spring framework 17 - Ajax 댓글 처리 java script 모듈 패턴을 이용해 게시판 댓글 등록 처리, 목록 처리, 삭제 갱신 작업을 하였다. wap 프로젝트 댓글 창을 개발할 때 많은 도움이 될 것 같다. DB 공부도 따로 챙겨서 해야겠다는 생각이 들었다. 이코테 - DP 1문제 학교 수업 - java 과제 , 데이터 베이스 1장 ECONOVATION 자소서 최종 수정 요즘 GitHub 1일 1커밋, 1일 1TIL 습관을 만드려고 노력하고 있다. GitHub은 잔디 채우는 재미도 있고 해서 어느정도 습관이 형성이 된 것 같은데 TIL은 자꾸 잊어 버리게 된다. 하루에 느끼고 반성한 점이라도 작성하는 습관을 가져야겠다. tomorrow's Spring framework..
REST 방식을 가장 많이 사용하는 형태는 역시 브라우저나 모바일 APP 등에서 Ajax를 이용해서 호출하는 것이다. 댓글은 데이터베이스 상에서 전형적인 1:N의 관계로 구성된다. 하나의 게시물에 여러 개의 댓글을 추가하는 형태로 구성하고, 화면은 조회 화면상에서 별도의 화면 이동 없이 처리하기 때문에 Ajax를 이용해서 호출한다. 17.1 댓글 처리를 위한 영속 영역 댓글을 추가하기 위해서 댓글 구조에 맞는 테이블을 설계한다. 댓글 테이블은 tbl_reply라는 이름의 테이블로 지정해서 생성한다. create table tbl_reply ( rno number(10, 0), bno number(10, 0) not null, reply varchar2(1000) not null, replyer varch..
이벤트 웹 브라우저나 사용자가 행하는 웹 문서 영역 안에서 이루어지는 동작 이벤트는 주로 마우스나 키보드를 사용할 때, 웹 문서를 불러올 때, 폼에 내용을 입력할 때 발생한다. 마우스 이벤트 click : 사용자가 HTML 요소를 클릭할 때 이벤트가 발생한다. dbclick : 사용자가 HTML 요소를 더블클릭할 때 이벤트가 발생한다. mousedown : 사용자가 요소 위에서 마우스 버튼을 눌렀을 때 이벤트가 발생한다. mousemove : 사용자가 요소 위에서 마우스 포인터를 움직일 때 이벤트가 발생한다. mouseover : 마우스 포인터가 요소 위로 옮겨질 때 이벤트가 발생한다. mouseout : 마우스 포인터가 요소를 벗어날 때 이벤트가 발생한다. mouseup : 사용자가 요소 위에 놓인 마..
여러 동작을 묶은 덩어리, 함수 자바 스크립트 프로그램은 단순히 동작 하나만 실행되는 게 아니라 여러 가지 동작이 연결된다. 이렇게 동작해야 할 목적대로 묶은 명령을 함수라고 한다. 함수 선언 및 호출 cs 재사용할 수 있는 함수 만들기 함수를 선언할 때부터 외부에서 값을 받아 줄 변수를 미리 만들어야 한다. 이것을 매개변수라 하고 함수를 호출할 때 괄호 안에 매개변수의 이름을 넣는다. Colored by Color Scripter cs 매개변수 기본값 지정하기 ES6부터는 함수에서 매개변수를 선언할 때 기본값을 지정하는 기능도 생겼다. 예를 들어 매개변수의 변숫값을 넘겨받지 못했을 때 기본값을 사용한다. function multiple(a, b = 5, c = 10) { // b = 5, c = 10으..