목록분류 전체보기 (33)
pat coding
이번엔 DB 데이터 출력(select)에 대해서 글을 작성하려고 한다. 회사 관리자 페이지가 있는데 운영초반엔 1초안에 페이지 출력이 되어 별 문제를 못느꼈었다. 근데 데이터가 점점 쌓이다보니 최근들어 화면출력하는데 5초정도 시간이 걸려 이 문제를 해결하고자 원인을 찾기 시작했다. 쿼리를 출력해서 프론트페이지에 바로 출력해주는 형태이기때문에 DB 쿼리문을 처리하는데 걸리는 시간이 오래걸리는 것이었다ㅠㅠ 하여 쿼리문을 뜯어보니 문제점을 발견했다. 첫번째문제는 DATE FORMAT을 통한 GROUP BY, WHERE 사용 이었다. 날짜별로 group by 를 해주려고 형식을 전부 DATE FORMAT 형식으로 변경하여 조건과 그룹핑을 해주고 있었다. 이렇게하면 검색조건에서 KEY가 안걸리고 형식변경하는데 시..
MyBatis 를 통한 Mysql DB 연동 중 IllegalArgumentException 오류발생..ㅠㅠ 찾아보니 SpringBoot는 원래 tomcat-jdbc를 기본 Datasource 로 사용했었는데, 2.0 버전부터 HikariCP 가 기본 Datasource로변경되었다고한다.. Java Config 로 DataSource Bean 객체를 직접 만들어서 할때 문제가 발생했다. application.yml spring: datasource: url: jdbc:mysql://localhost:3306 username: ukpyo password: 1234 driver-class-name: com.mysql.cj.jdbc.Driver config.java 기존엔 이렇게 설정을 했었는데, 서버가 바뀌..
빌드란? 소스코드 파일을 컴퓨터에서 실행할 수 있는 독립적인 형태로 변환하는 과정과 결과 사용이유? 라이브러리 추가, 버전 동기화에 특화적임 1. Maven 메이븐은 자바프로젝트의 빌드를 자동화해주는 툴이다. 설정 파일 1) settings.xml 메이븐 툴 자체에 관련된 설정을 담당 2) pom.xml 4.0.0 org.springframework.boot spring-boot-starter-parent 2.0.5.RELEASE 위의 예시처럼 xml 방식으로 작성해야한다. 엘리먼트 - modelVersion : POM model의 버전 - parent : 프로젝트의 계층 정보 - groupId : 프로젝트를 생성하는 조직의 고유 아이디를 결정한다. 일반적으로 도메인 이름을 거꾸로 적는다. - artif..
CURL 이란? - 다양한 프로토콜을 지원하는 데이터 전송용 툴이다. - 지원 프로토콜 : DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, Telnet, TFTP CURL 설치 sudo apt-get install curl curl --version curl 버전정보... 등 으로 나오면 정상 설치 CURL 옵션 -X : 사용할 방식 메소드 선택하기 -d : 함께 전달할 파라미터값 설정하기 -G : 전송할 사이트 url 및 ip 주소 -H : 헤더 정보를 전달하기 -i : 사이트의 Header 정보만 가져오기 -I : 사이..
stripos - 대상 문자열을 앞에서 부터 검색하여 찾고자 하는 문자열이 몇번째 위치에 있는지를 리턴 stripos([대상 문자열], [조건 문자열], [검색 시작위치]); strripos - 대상 문자열을 뒤에서 부터 검색하여 찾고자 하는 문자열이 몇번째 위치에 있는지를 리턴 strripos([대상 문자열], [조건 문자열], [검색 시작위치]); strcmp() - 문자열을 비교해서 일치하는 경우 0(false)을, 불일치하는 경우 1(true)을 리턴 strcmp("문자열1" , "문자열2") result() - 쿼리 결과를 객체배열로 리턴, 실패시 빈 배열을 리턴 $query = $this->db->query("YOUR QUERY"); foreach ($query->result() as $row..
CI(CodeIgniter) 란? - PHP 프레임워크로써 빠른 속도의 장점 - MVC 패턴을 지원 - 가벼운 프레임워크 - 컨트롤러와 URL매칭 URL 패턴과의 매칭 http://example.com/news/latest/10 http://example.com/컨트롤러 클래스 명/컨트롤러에 존재하는 메소드/인수 CI 동작 개념 The index.php 는 프론트콘트롤러(front controller)로 동작하여 CI가 동작하기 위한 기반리소스들을 초기화 합니다. 라우터모듈(Routing)은 http 요청을 분석하여 어떤 동작을 해야할지를 결정합니다. 캐쉬파일이 있다면 그파일을 바로 브라우저로 보내고 일반적인 동작절차는 무시합니다. 보안모듈(Security)은 프로그램 컨트롤러가 로딩 되기전에 HTTP ..