codenvy ( https://codenvy.io ) 라는 온라인 실습실에서 자바(스프링), Mysql-DB(하이버네이트JPA) 기반의
petclinic 애완동물관리 사이트를 샘플로 제공해 준다.
(*주, 무료계정에서는 로그인해서 작업할 때만 웹서버를 온라인에서 접속해서 결과를 볼 수가 있다. 즉, 로그아웃하면, 확인이 불가하다. 그리고, DB는 수정한 내용이 로그인 상태에서만 유지된다. 단, 자바나 jsp파일은 수정한 내용이 그대로 유지된다.!)
작업시, 첫번째 당면하는 문제는 한글 입출력이 되지 않는 다는 것이다.
총 3가지 작업을 해 주어야 한다.
1) 무료계정에서는 DB설정(my.cnf)을 바꿀수 없기 때문에 접속할때 마다 캐릭터셋 DCL문을 실행 해 줍니다.
ALTER DATABASE petclinic CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER TABLE owners CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
2) 해당jsp페이지의 인코딩 설정 지시문장을 입력해 줍니다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
3) JAVA의 클래스에서 해당 클래스변수들의 인코딩을 변경한다.(아래 try{}catch{} 구문이 추가된 부분이다.)
public void setFirstName(String firstName) {
try{
firstName = new String(firstName.getBytes("8859_1"), "UTF-8");
}catch(Exception e){}
this.firstName = firstName;
}
public void setLastName(String lastName) {
try{
lastName = new String(lastName.getBytes("8859_1"), "UTF-8");
}catch(Exception e){}
this.lastName = lastName;
}
위 작업 결과 petclinic 의 동물주인 이름등록하는 부분이 정상작동 하는 것을 볼수 있게 됩니다.
펫클리닉의 기본DB구조는 아래와 같습니다.
동물병원 테이블구조
owners(동물주인테이블), pets(동물정보), visits(병원방문정보), types(동물의종류:개,고양이,새 등)
vets(수의사이름), specialties(전공명), vet_specialties(수의사의 해당전공)
앞으로는 자바(스프링기반)로 jsp 연습을 위 온라인 실습실에서 하기로 합니다.
new전자정부프레임웍_1/3 사전기술검토(3.6.0버전) (0) | 2017.12.05 |
---|---|
codenvy 온라인실습실에서 petclinic 사이트 작업02 (0) | 2017.07.26 |
자바 AWT를 사용하여 class파일 디컴파일러를 제작해 보았습니다. (0) | 2017.04.13 |
이번에 스프링프레임웍 작업하면서, gitlab.com 에서 소스공유(비공개)로 공동작업을 하게 되었습니다 (0) | 2016.08.30 |
스프링 MVC로 입력 작업중 Mysql NOT NULL 조건이 먹히지 않을때 입니다. (0) | 2016.06.06 |
댓글 영역