본문 바로가기

programming35

Recursive(재귀 함수) Recursion : 자기 자신을 호출하는 함수를 지칭함ex)func() {print("hello world!");func();}무한루프를 방지하기 위한 조건base case: 적어도 하나의 recursion에 빠지지 않는 경우가 존재해야 함Recursive case: recursion을 반복하다보면 결국 base case로 수렴해야 함 순환 함수와 수학적 귀납법- ex) 정리: func(int n)은 음이 아닌 정수 n에 대해 0~n 까지의 합을 계산한다증명:n=0인 경우 0을 반환임의의 양의 정수 k에 대해 n=n인 양의 정수 m, n에 대해 m이 n의 배수라면// gcd(m,n)=n이고, 그렇지 않으면 gcd(n,m%n)이다if(n>m)swap(m,n);if(m%n==0)return n;else r.. 2017. 7. 8.
[spring]첨부파일 등록 첨부파일 등록사용자 처리 프로세스 게시판 등록 화면에서 여러 첨부파일 등록프로그램 처리 프로세스 DB 설계게시판 등록 화면 c처리 게시판 ||첨부파일테이블key게시판 no(참조키)파일명기타등록명 spring 첨부 파일 필요 부분파일을 업로드/다운로드 하는 viewResolve setting이 필요 - dispatcher-servlet.xml에 파일 다운로드, 업로드 모듈을 설정파일 업로드 모듈 파일 다운로드 모듈 - 사용자 정의로 클래스 선언 json이나 파일 처리 시 필요로 하는 viewResolver 선언 첨부 파일 처리 시 controller, serverController에서 Param -view단 -controller list(@RequestParam("id") String id list 2017. 6. 22.
[spring]동적 SQL XML에서 동적 SQL 처리OGNL(Object Graph Navigation Language)ex) AND deptno = 20 AND deptno = 30 AND deptno = 40 trim(where) 엘리먼트if 엘리먼트가 조건 처리에서 where 구문에 대한 처리를 보완하기 위해 사용한다. (WHERE 1=1) prefix : 처리 후 엘리먼트의 내용이 있으면 앞에 붙여줌 prefixOverrides: 처리 후 앞에 해당 문자가 있으면 자동으로 지움 select * from emp where 1 = 1 ename = #{ename} AND job = #{job} foreach 엘리먼트동적 sql을 loop 문으로 반복처리 해야 할 경우조회 조건에서 부서를 여러 개 검색조건으로 처리할 때 SEL.. 2017. 6. 13.
[spring]mybatis 연결 mybatis 연결 컨테이너(dispatcher-servlet.xml)에 모듈DB 연결정보mybatis 모듈 등록, 설정 파일dao interface 위치 등록Mybatis 설정공통 vo를 등록, alias 이름업무별 XXXmapper.xml을 등록mapper.xmlnamespace 설정resultMap 선언.. : vosql 선언: select입력값: parameterTypereturn: resultMap(ArrayList), resultType(vo)update, insert mybatis MVC 패턴 dispatch-servlet.xml(조립기)연결: BasicDataSource : dataSource드라이버DB 서버 정보(ip, port, sid, 계정, 비밀번호)mybatis 설정연결 정보를 받.. 2017. 6. 8.