본문 바로가기

Front-end (국비)/메모10

23.07.17 수업 메모 1. V >> V XXX V >> C >> V OOO V >> C >> V 일때, 가령 보내야할 데이터가 없다 할때, Action POJO 클래스를 만들어야 할까 ? 실제로는, 보내야할 데이터가 없을 수가 없기에, (정말 최소한 1개라도 보내야할 데이터가 있다.) Action POJO 클래스를 만들어서 모듈화를 한다. 이 Action POJO 클래스는 일반적으로, VO, DAO를 사용 하게 된다. 즉, DAO POJO 클래스의 비즈니스 메서드인, CRUD 메서드를 실행하고, DB에 데이터를 넣거나, 추출 한다. 모듈화의 이유 : 유지보수의 용이함을 위해. 2. 필터 클래스를 생성할 때, 매핑 하는 경우, *.do 로 작성 하는게 일반적인 연습시에 작성하는 방법이지만, 인코딩 필터 클래스 라고 가정 했을 .. 2023. 7. 18.
커스텀 태그로 View 모듈화 하기 1. JSP 에서, JS (자바스크립트) 언어는 모두, webapp 폴더 - js 폴더 - main.js 파일에 코드를 작성 했다. /* b_main.jsp */ function check() { var ans = prompt('비밀번호를 입력하세요.'); location.href = 'controller.jsp?action=mypage&mpw=' + ans; } /* d_board.jsp */ function delBoard() { var ans = confirm('정말 삭제할까요 ?'); if(ans == true) { document.form.action.value = 'deleteBoard'; document.form.submit(); } } /* f_mypage.jsp */ function re.. 2023. 7. 5.
프론트 엔드 특징 메모 View 작업자의 특징 >> 사용자의 동작을 담당 한다. JS (JavaScript), JQuery, .. 등을 사용 한다. 경량의 데이터를 요청 하고 응답할 때는, JQuery의 ajax() 와 JSON을 사용 하기도 한다. (큰 데이터는 서버의 데이터를 사용 한다..) 암튼, JS, JQuery, .. 은 JAVA 언어가 아니다. View 에서는 JAVA 언어를 거의 사용 하지 않고, Vue, NODE, React, .. 등을 사용하는데, 이는 모두, JS (JavaScript) 으로 부터 나온 것들 이다. JS 지식이 있으면, 모두 이해할 수 있다. 2023. 7. 4.
23.06.30 메모 3 (JSP_MVC 패턴으로) 1. V에서 V로 가는 흐름은 XXX 반드시, V >> C >> V 의 흐름 이어야 한다. 왜 그럴까 ? 지금은 공부 단계라, V에서 V로 바로 가더라도 전송되는 데이터 자체가 없을 수 있는데, 실무에서는 V에서 다음 페이지로 이동할 때, 무조건 그냥 데이터 전송이 있다고 보면 된다. 아주 작은 데이터라도 무조건 데이터를 전송 할 수 밖에 없다. 그래서, 데이터 전송이 이루어 지기에, V >> V가 아닌, V >> C >> V 이다. 2. V에서 C로 데이터를 전송 할 때, 데이터 전송도 전송이지만, 제일 중요한건, Controller 에서 어떤 기능을 수행 할건지를 구분 하기 위해서 필요한 action 값을 꼭 보내 줘야 한다. 그래야지, action 값을 받고, 어떤 기능을 수행 할지 구분을 할 수 .. 2023. 7. 1.
23.06.30 메모 2 (JSP_MVC 패턴으로) M-V-C 패턴으로 백엔드와 프론트를 완전 분리 시키기. 이번에는, 데이터 저장을, 자바의 배열리스트에 저장 하지 않고, MySQL (DBMS) 을 사용해서, 데이터를 DB에 저장 해보려 한다. JDBC 인터페이스 구현 하기. 홈페이지 연습 하기. >> Model (자바 / 백엔드) 1. JDBC 인터페이스 2. BoardDAO 3. MemberDAO [ MemberDAO ] 해당 클래스 내부에서 conn, pstmt, rs를 여러번 재 사용 해서, 반복을 피하기 위해 상단에 참조변수를 선언한 모습 이다. DB를 사용하기 때문에, 필요한 sql 구문 이다. preparedStatement (향상된 Statement) 를 사용하여, 문법상 자바의 개입이 사라져서, 클래스 상단에 배치한 모습이다. 모든 각각.. 2023. 7. 1.
23.06.30 메모 (JSP_MVC 패턴으로) M-V-C 패턴으로 백엔드와 프론트를 완전 분리 시키기. 이번에는, 데이터 저장을, 자바의 배열리스트에 저장 하지 않고, MySQL (DBMS) 을 사용해서, 데이터를 DB에 저장 해보려 한다. JDBC 인터페이스 구현 하기. 홈페이지 연습 하기. >> Model (자바 / 백엔드) 1. JDBC 인터페이스 2. BoardDAO 3. MemberDAO [ BoardDAO ] 해당 클래스 내부에서 conn, pstmt, rs를 여러번 재 사용 해서, 반복을 피하기 위해 상단에 참조변수를 선언한 모습 이다. DB를 사용하기 때문에, 필요한 sql 구문 이다. preparedStatement (향상된 Statement) 를 사용하여, 문법상 자바의 개입이 사라져서, 클래스 상단에 배치한 모습이다. 모든 비즈니.. 2023. 6. 30.
메모 1. 사용자가 submit 을 눌렀어. 2. form 태그 안에, value 값을 전송 하게 된다. 3. 근데 이 value는 select 태그 안에 있네 ? 3-2. for문을 돌리면서 상품을 전부 보여준다. 4. select 콤보박스 특성상, 1개만 선택할 수 있는거잖아 ? 5. 그러니까, 상품 1개를 선택 했고, 그러면, 그 상품 1개의 value 값이 전송 된다. 즉, v.getNum()이 1개만 전송이 된다. 근데, v.getNum() 이 뭐야 ? num 이야. 왜 ? VO 클래스에서 getNum()은 return 값으로 num을 뱉거든. 그니까 결국 num이 가는거야. a.jsp 폼 태그에서 name = num 으로 보내주니 num의 value값이 101번 상품이였어서 num 101 ㅇㅇㅇ n.. 2023. 6. 28.
23.06.28 메모 [ _작은티모_ ] [_가렌_] 다음 페이지에 1. 데이터가 몇개 전송 될까요? 3개 (사용자로부터 2개, value = "키위" 1개) 2. 전송된 데이터의 이름은 무엇 일까요? 1) apple 2) banana 3) kiwi 3. 도착한 데이터 값은 무엇 일까요? 1) 작은티모 2) 가렌 3) 키위 데이터의 이름이 banana인 데이터는, 설정된 value가 "사과" 였지만, 사용자에게 가렌을 입력받아서, value가 덮어 씌워 진다. pVO의 모든 setter를 호출하겠다. setter에 넣을 값을 request.getParameter()에서 자동으로 매핑해주겠다. 형변환도 서비스로 해준다. 2023. 6. 28.
<p> </p> 태그 & 블록 요소 & 인라인 요소 1. 태그 (요소) paragraph (문단) 의 약자로, 하나의 문단을 만들 때 쓰인다. 태그로 전체를 묶으면, 전체가 한 문단이 되어서, 아래와 같이 나오게 된다. 문장을 각 문단으로 나누고 싶으면 태그를 나눠서 작성 하면 된다. [ 참고 ] 태그 내부에서 직접 색 지정을 해주면 그 해당 부분에서는 색이 변하고, 나머지는, 위의 요소 선택자 로부터 영향을 받게 된다. 2. 블록 & 인라인 ? html의 요소는 크게 ~~ 블록 요소 (block element) 와 인라인 요소 (inline element) 로 구분 된다. css를 잘 적용하기 위해서는 해당 개념을 잘 알아야 한다. 블록 요소 >> 1) 사용 가능한 최대 가로 너비를 사용 한다. (기본 너비값은 100%) 2) 전체를 차지하기 때문에, .. 2023. 6. 21.