분류 전체보기 썸네일형 리스트형 [JSP_Servlet] 서블릿 방식 파일 업로드 1. 업로드폼을 만든후 파일 이름을 주고, 파일을 선택하여 전송을 누르면 톰캣 경로에 저장시키고, 다음 jsp파일을 지정하여 업로드한 파일을 뿌려보자. 2. 밑의 경로는 톰캣에 저장되는 경로이다. 이것을 알 수 있는 코드도 짜보자. 1. 업로드 form 생성 2. Form action : 서블릿명. 3. Enctype=”multipart/form-data” : 일반적인 form submit은 form안의 element들이 name으로 submit된다. 이때 파일을 서버에 저장시키기 위해서는 요놈을 써줘야한다. 4. Div id=target은 미리보기를 위한 div 5. Application.getRealPath : : jsp내장객체(표현식에 선언하지 않고 사용 가능한 변수, jsp가 서블릿으로 변환될 때.. 더보기 [JSP_서블릿] MODEL1 고전방식 게시판 여러 방식 중 톰캣 커넥션 풀 방식으로 함. 1. Tomcat에서 DBCP(커넥션풀)을 사용할 때에는 보통 Serverl.xml에 놓는 경우도 있지만, 매 프로젝트마다 변경해주어야하는 하드코딩이 될 수 있기에, META-INF > context.xml에 db접속 정보를 설정해두고 사용한다. 2. Resource : 프린터나 디스크 드라이브와 같은 장치, 네트워크상에서 활용 가능한 서버나 프린터, 데이터 리소스는 액세스 할 수 있는 파일이나 데이터베이스 등이 포함된다. 기본적인 뜻은 자원, 컴퓨터 과학에서는 웹 : URI가 정의한 아무 항목, 윈도우: EXE,DLL 파일 안에 들어 있는 데이터, 자바 : 응용프로그램 데이터 1) Name : 리소스 명칭 (JNDI Lookup시 사용할 명칭) 2) Auth.. 더보기 [MySQL_MariaDB] 전체텍스트 검색과 파티션 신문기사 테이블(아래표)을 생성하고, 일반 인덱스(위표)를 생성했다고 가정해보자. 1. 신문기사의 내용을 모두 알아서 검색하면 당연히 빠르다. 2. 앞글자 like검색도 인덱스를 통하여 위위사진(신문기사 인덱스)처럼 정렬되어 있기에 검색이 빠르다. 하지만 위처럼 보통 앞뒤로 like 검색을 하는 경우가 일반적이다. 이럴 경우 일반 인덱스가 있어도 FullScan을 할 수 밖에 없다. 10년치의 기사에거 검색이라고 생각해보자. 결과적으로 매우 느리다. 전체 텍스트 검색은 이러한 문제를 해결해준다. 첫글자 뿐만 아니라, 중간의 단어나 문장으로도 인덱스를 생성해 주기 때문에 지금과 같은 상황에서도 인덱스를 사용할 수 있어 순식간에 검색 결과를 얻을 수 있다. 전체 텍스트 인덱스를 생성하는 방법 3가지 MySQ.. 더보기 [MySQL_MariaDB] 커서_loop_select 한줄한줄 읽으며 처리 고객의 평균키를 구하는 프로시저. AVG 함수가 더 적절하지만, 홀수의 평균값이나 5의 매수에 해당하는 값의 평균 등 특별한 경우 커서는 사용된다. 41,42. 커서 선언시 파일을 읽어(select) 파일의 제일 시작을 가르키게됨. 10~15. 커서 선언 : 파일을 읽어(select) 시작부분을 가르킨다. 17,18. 행의 끝일 때 endOfRow 변수에 true 대입. 19. 커서를 연다. 21. 커서에서 읽은 1줄은 id, hap 변수에 대입 더보기 [MySql_mariaDB] 스토어드 함수 Function * 스토어드함수 > MySQL이 사용자가 원하는 함수를 전부 제공하지 않으므로, 필요에 따라 직접 만들어서 사용하는 함수를 스토어드 함수라 한다. * 스토어드 함수의 특징 1. 스토어드 프로시저와 달리 IN, OUT 등을 사용할 수 없다. 스토어드 함수의 파라미터는 모두 입력 파라미터로 사용된다. 2. RETURNS문으로 하나의 값을 반환해야 한다. 프로시저는 별도의 반환하는 구문이 없으며, 꼭 필요하다면 OUT 파라미터를 사용해서 값을 반환한다. 3. 스토어드 프로시저는 CALL로 호출하지만, 스토어드 함수는 SELECT 문장 안에서 호출된다. 4. 스토어드 프로시저 안에는 select 문을 사용할 수 있지만, 스토어드 함수 안에서는 집합 결과를 반환하는 select를 사용할 수 없다. * select.. 더보기 [SQL] JOIN 조인 5. inner join(내부조인 = join) : 가장 일반적인 조인 양쪽 테이블에 모두 있는 것만 조인된다. 위는 select ~ from ~ join ~ where 순의 구조로 이루어진다. Buytbl은 12개의 데이터 모두 아이디를 가지고 있다. Usertbl 10개의 데이터. 한번도 구매하지 않은 이승기, 김경호, 임재범, 윤종신, 조관우는 구매테이블에 없다. * inner join : 양쪽 테이블에 모두 있는 데이터만 추출한다. 즉, 구매한 이력이 있는 아이디만 출력되므로 구매테이블에 있는 데이터들이 기준이된다.(즉, 교집합) 6. 테이블명.컬럼명 : 어떤 컬럼명인지 테이블을 명시해 주어야한다. 별칭으로도 가능하다. * outer join(외부조인) : 조건에 만족하지 않는 행까지도 포함시키는.. 더보기 [mariadb_mysql] 대량의데이터(TEXT,CLOB) 3. longtext : 최대 4GB까지 저장할 수 있다. 7. 각각 1M, 3M의 크기가 입력되었다. 영문자는 한글자에 1Byte를 차지하고, 한글은 3Byte를 차지하기 때문이다. 각각 천만개의 문자를 입력하면 에러가 발생한다. Max_allowed_packet의 최대값이 4백만 바이트(=4M)이기 때문이다. 영문은 10M, 한글은 30M를 사용하기에 에러. * Max_allowed_packet : 서버로 질의하거나 받게되는 패킷의 최대 길이. 시스템변수. MySQL을 설치한 경로에 my.ini를 오픈하여, 1G(1000M)로 수정 Mysql 서비스 재시작 10M와 30M가 정상적으로 insert된다. 더보기 [mysql_mariadb] 내장함수_foreignkey수정 * 함수의 종류 1. 제어 흐름 함수 2. 문자열 함수 3. 수학함수 4. 날짜/시간 함수 5. 전체 텍스트 검색함수 6. 형 변환 함수 7. XML함수 8. 비트함수 9. 보안/압축함수 10. 정보함수 11. 공간 분석 함수 12. 기타함수 1. 제어 흐름 함수 : 프로그램의 흐름을 제어한다. 3. if(수식, 참, 거짓) > 수식이 참 또는 거짓인지 결과에 따라 2중 분기한다. 3. ifnull(수식1, 수식2) > 수식1이 null이 아니면 수식1이 반환, 수식1이 null이면 수식2가 반환된다. 3. nullif(수식1, 수식2) > 수식1이 수식2와 같으면 null을 반환, 다르면 수식1을 반환 3~8. Case ~ when ~ else ~ end > case는 내장함수는 아니며 연산자로 분류된.. 더보기 이전 1 2 3 4 5 ··· 21 다음