목록오늘 배운 자바 (10)
자바나라
문제상황 : boardId 라는 파라미터가 다중선택시엔 Array로, 단일 선택시에는 String으로 넘어오고 있다. 해결책 : 쿼리를 2개로 분리하는 방법도 해결책이 될 수 있겠지만, 향후 유지보수 용이성을 고려하여 파라미터의 type에 따라 동적으로 조회하는 쿼리를 짜보았다. 1. SQL 쿼리에서 array를 foreach로 전개하는 법 1 2 3 4 5 where boardId IN ( #{boardId[${index}]} ) Colored by Color Scripter cs → 이 쿼리에서 boardId에 String이 들어오는 경우 "boardId는 iterable 하지 않다." 는 문구가 뜬다. 프론트나 자바단에서 파라미터가 String인 경우 Array[0]에 넣는 전처리 로직을 추가하여 ..
http://hyeonstorage.tistory.com/248
1. JAVAJAVA는 네트워크상에서 쓸 수 있도록 미국의 선 마이크로 시스템즈가 개발한 객체 지향 프로그래밍 언어JAVA의 특징a. 자바가상머신(JVM)만 설치하면 컴퓨터의 운영체제에 상관없이 작동한다.(즉, 운영체제에 독립적)b. 기본 자료형을 제외한 모든 요소들이 객체로 표현c. 객체 지향 개념의 특징인 캡슐화, 상속, 다형성이 잘 적용된 언어d. Garbage Collector를 통한 자동적인 메모리 관리e. 멀티쓰레드(Multi-thread)를 지원 2. OOP(객체지향 프로그래밍)OOP란 Object-Oriented Programming의 약어로써 객체지향 프로그래밍을 의미데이터를 객체로 취급하여 프로그램에 반영한 것이며, 순차적으로 프로그램이 동작하는 기존의 것들과는다르게 객체와 객체의 상호..
# java.lang.IllegalArgumentException 의 원인 : 컨트롤러 에서 @ResponseBody 를 안 적었음
$("div").on("click","#boardNo",function(){ alert("테스트"); }); 원인 : javascript 동적으로 구현했을 때 셀렉터가 안 먹어서 위 예시처럼 div 안의 #boardNo 를 찾으라는 식의 이중 셀렉터를 사용함. alert 테스트를 해보니 2회 실행됨. div 에서 한번 #boardNo 에서 한번 해서 총 2회 이벤트가 실행되는 것으로 보임 시도 : 1) return false 해보니 되는 경우도 있었으나 나의 경우 셀렉터가 부트스트랩 이벤트를 갖고 있었다. 부트스트랩 기능이 죽어버려서 실패 2) event.stopPropagation() : 이것도 써봤으나 1)과 같은 이유로 해결하지 못했음 3) $().off().on('click',function(){..
하나의 게시글에 5개의 이미지를 첨부한 글을 리스트로 출력하고 싶을 때,5개의 이미지의 주소를 배열에 담아 게시판 Vo List 에 포함시켜 출력하려 했으나Service 영역에서 이미지를 배열에 담을 때 글마다 담고자하는 이미지의 갯수가 달라 배열을 사용할수 없음을 깨달았다. 결국 boardVo 에 List를 변수선언 해주어 vo 안에 list 형태로 담아 해결 했다. vo 에 list 를 선언하여 담을 수 있음을 생각해 두자. 결국 List 와 List 를 Map 하여 jsp 에 출력하는 방법을 선택했다. jquery 에서 map. xxxList 형태로 불러올 수 있으며 render 함수에 render(boardVo,boardImglist) 로 가면 글하나 당 이미지 여러개를 출력할 수 있다.
[그림1] Tomcat server 8080 포트 충돌시 오류 1. 시작메뉴 - cmd 실행 2. netstat -ano | findstr 8080(포트번호) : 해당 포트번호를 이용 중인 프로세스의 번호를 알 수 있다.3. taskkill /f /pid 2908(프로세스번호) : 해당 프로세스의 접근을 끊어낸다. [그림2] cmd에서 해결
* 스크롤에 대한 기초 지식1. $(window).scrollTop()2. $(window).height()3. $(document).height() 이 세 가지만 알면 스크롤이 맨아래 도달시에 조건을 핸들러로 사용하여 글을 불러오는 등의 동작을 할 수 있습니다. 1. $(window).scrollTop() : 스크롤의 위치에 따라 변하는 값 (세로 좌표): 맨 위에서 0으로 시작하여 맨아래 도달시 스크롤 길이 max값을 가짐. http://www.trandent.com/jsTest/22393920144658 위 사이트에서 한번 동작해보면 이해하기 수월합니다. 2. $(window).height() : 보여지는 창의 높이길이 3. $(document).height() : jsp, html 등 문서의 높이..
기존 방식으로 mybatis에서 insert 쿼리문을 사용할 때, 1234567 insert into guest_tbl values(seq_guestbook.nextval,#{name},#{password},#{content},sysdate) Colored by Color Scriptercs sequence.nextval 값을 테이블에 직접 넣어주었다.그러나 이러한 insert방식에서는 내가 방금 insert한 row를 다시 select 하는 것에 어려움이 있다. 이럴때 필요한 것이 selectKey이다. 123456789101112 select seq_guestbook2.nextval FROM dual insert into guest_tbl values(#{no},#{name},#{password},#..
**입문자를 위한 기초 설명 1. console.log("내용"); : 콘솔에 내용을 출력해주는 문장 : 크롬에서 F12버튼을 눌러 개발자도구를 불러오면 Console 탭에서 확인 가능합니다. 2. Selecter $("#btn").on("click", function(){}); 1) $("#btn") 은 id="btn" 키값을 통해 해당 태그를 select합니다. : 태그는 $("key") : id는 $("#key") 또는 $("[id=key]") : class는 $(".key") 또는 $("[class=key]") 로 불러옵니다. : $("key") 괄호 안에 들어가는 호출키를 selecter 라고 합니다. 2) on("handler" , function(){} ) ; : 이벤트 핸들러 영역입니다.:..