분류 전체보기

NumberFormatException mybatis에서 if,when 태그에서 비교값을 쓸 때 어떤 값이 문자열과 같은지 비교할 때 NumberFormatException이 발생했다. AND bo_title LIKE '%'||#{searchWord}||'%' AND bo_title LIKE '%'||#{searchWord}||'%' searchType은 String이다. 첫번째 경우 mybatis가 String searchType 과 String "T"값을 비교한다. 두번째 경우 mybatis가 String searchType 과 char 'T' 값을 비교한다. 자바는 char를 비교하려 할 때 'T'를 숫자로 바꿔서 비교한다. 'T'는 ASC코드표에서 116이다. 그리고 비교를 위해 String도 숫..
this의 잘못된 사용 버튼클릭이벤트 함수내에서 $(this), this는 버튼태그 자체를 가리킨다. 근데 함수내에서 ajax를 쓸 경우 success함수내에서(ajax성공 후) $(this),this는 버튼태그가 아니라 success함수 자체를 가리킨다. $("button").on("click", function(e){ e.preventDefault(); //$(this)는 내가 클릭한 버튼 console.log(this); // 버튼태그가 찍힌다. $.ajax({ url : "url" ,success: function(){ console.log(this); // success함수가 나온다. //$(this).closeset("div"); 등은 에러가 난다. // ajax 성공함수에서 내가 선택한 버튼..
· Spring
Person 클래스@Getter@Setter@ToStringpublic class Person { private String name; private int age;}    태그에서  데이터를 전달해보자.    @RequestParam,@ModelAttribute,@RequestBody 차이스프링에서 객체-파라미터 매핑은 요청상황이나 응답상황 모두 MessageConverter가 담당한다.상황에 따라 스프링이 적절한 MessageConverter의  구현체를 통해 객체-파라미터 매핑을 한다.요청에서 @RequestParam, @ModelAttribute가 붙은면 FormHttpMessageConverter가,@RequestBody가 붙으면 MappingJacksonHttpMessageCon..
· jsp
페이징,검색 개요페이징,검색은 List만 신경쓰면됩니다.  우리가 만든 List페이지에서는 DB에 있는 데이터가 한 페이지에 전부 나온다.하지만 몇 천번째 글을 읽기 위해 스크롤을 내리는것은 비효율적이고,UI도 깔끔해 보이지않는다.   또 원하는 글을 찾기도 힘들다.네트워크 사용량도 많아진다.그에 비해 다음 정부24 페이지를 보자. 화면에 딱 10개씩(페이징)만 나오고 검색기능 까지 있어서 내가 원하는 글을 찾기도 용이하다.  우리도 freeList.jsp와 memberList.jsp에 페이징,검색기능을 적용해 볼 것이다.       페이징페이징VOpublic class PagingVO { //입력받는 데이터 private int curPage=1; // 현재 페이지 번호 privat..
· jsp
코드사용시 장점 1.같은 데이터를  다르게 인식하는 경우개발자가 '스프링 입문을 위한 자바 객체지향의 원리와 이해'를 DB에 넣을려고한다.근데 책에 굵은 글씨로 표시된  '자바 객체지향의 원리와 이해'로 저장할 때도 있고,풀네임인 '스프링 입문을 위한 자바 객체지향의 원리와 이해''로 저장할 때도 있다.이 때 DB는 각각 모두 다른 데이터로 인식하게 된다.-> 코드를 사용할 경우  서로 다른 데이터가 들어갈 일이 없다. 해당책에 대한 코드가 BOOK1이라면 BOOK1만 DB에 들어갈 수 있다.BOOK1에 해당하는 책은 한개밖에 없어 헷갈릴 일이 없다.  2. 다른 데이터이지만 똑같이 인식하는 경우 '스프링 입문을 위한 자바 객체지향의 원리와 이해'가 잘팔려서 개정판이 나왔다고 해보자.구판과 개정판은 다른..
개발을 하던 도중 다음과 같은 에러를 만났다. response.sendRedirect(""); response.addCookie(cookie); //쿠키가 전달되지 않음 response.addCookie(cookie); response.sendRedirect(""); //쿠키가 제대로 전달됨 sendRedirect와 addCookie 순서에 따라 쿠키가 저장에 영향을 주는지 원인을 찾아보았다. addCookie()의 메소드는 사실 단순히 Header를 변경해주는 것과 같다. @Override public void addCookie(final Cookie cookie) { // Ignore any call from an included servlet if (included || isCommitted()) ..
· 배포
https://brilliantdevelop.tistory.com/171에 이어 Travis CI, S3, CodeDeploy를 연동해 실제 배포와 배포자동화까지 하도록 하겠습니다. Travis CI, S3, CodeDeploy 연동 먼저 S3에서 넘겨줄 zip 파일을 저장할 디렉토리를 하나 생성하겠습니다. EC2서버에 접속해서 다음과 같이 디렉토리를 생성합니다. mkdir ~/app mkdir ~/app/ch && mkdir ~/app/ch/zip Travis CI의 Build가 끝나면 S3에 zip파일이 전송되고, 이 zip파일은 /home/ec2-user/app/ch/zip으로 복사되어 압축을 풀 예정입니다. AWS CodeDeploy의 설정은 appspec.yml로 진행합니다. appespec.y..
· 배포
https://brilliantdevelop.tistory.com/170에 이어 Travis CI, S3에 CodeDeploy까지 연동하는걸 목표로, Travis CI, S3, CodeDeploy가 서로 연동 될 수 있도록 설정을 하겠습니다. EC2에 IAM 역할 추가하기 EC2가 CodeDeploy를 연동 받을 수 있게 IAM역할을 추가합니다. 이전 글에서 만든 IAM의 사용자와 지금부터 만들IAM의 역할은 다음과 같은 차이가 있다. 사용자 AWS 서비스 외에 사용할 수 있는 권한 로컬PC,IDC 서버 등 역할 AWS 서비스에서만 할당할 수 있는 권한 EC2, CodeDeploy,SQS 등 지금 만들 권한은 EC2에서 사용할 것이기 때문에 역할로 처리합니다. 검색창에 IAM 검색 - 역할 - 역할만들기..
· 배포
본격적인 배포 전 준비 배포된 프로젝트에서 사용할 DB는 앞글에서 설정한 RDS이다. 이는 mariaDB이기 때문에 build.gradle에 추가해주자. implementation 'org.mariadb.jdbc:mariadb-java-client' 운영용 applcation-real.properties 구성하기 spring.profiles.include=oauth,real-db spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect spring.session.store-type=jdbc 그리고 EC2에서 배포할 springboot 프로젝트의 포트 8080 인바운드도 확인해주자. 아마 되어있을 것이다. 만약 안 되..
· 배포
RDS 생성 먼저 AWS 검색창에 RDS를 검색해줍니다. 왼쪽 탭에 '데이터베이스'를 선택 후 오른쪽에서 데이터베이스버튼을 누릅니다. 원하는 DB를 선택합니다. 자기가 선호하는 DB를 선택하면 되지만 여기서는 mariaDB를 선택하겠습니다 . mardiaDB의 버전과 템플릿을 선택합니다. 버전은 특별히 원하는 버전이 있으면 해당버전을 선택하고 그렇지 않은 경우는 기본 버전을 사용합니다. 템플릿은 역시 프리티어! 설정은 다음과 같이 설정한다. 여기서 설정한 것이 나중에 DB에서 연결할 때의 username과 password가 된다. (workbench에서 접속할 때의 예시) 이후 데이터베이스 생성버튼을 눌러 DB를 생성해줍니다. RDS 파라미터 설정하기 RDS에서 설정해야할 파라미터는 다음과 같습니다. 타..
기발개발
'분류 전체보기' 카테고리의 글 목록 (2 Page)