목록Java (38)
진이의 Developer Story
1. Credentials 생성 Credentials을 클릭합니다. (SSH Private Key를 등록해야 합니다) 이 작업을 하기 이전에 public 키와 private 키를 한쌍 만드셔야 합니다. $ ssh-keygen -t rsa Enter file in which to save the key (/root/.ssh/id_rsa): # 경로 적고 엔터 Enter passphrase (empty for no passphrase): # 비밀번호를 쓸 경우 입력하고 아닌 경우는 엔터 이렇게 하시면 ssh-key 한쌍이 만들어집니다. Add Credentials 를 누르시고 Credentials 를 만듭니다. $ vi ~/.ssh/id_rsa vi 편집기로 private key를 열어 복사해주신 후, Ke..
// smtp 서버주소 // port : smtp 서버포트 // 사용자 아이디 // 사용자 비밀번호 // 인코딩 방식 smtp // 메일서버 프로토콜 (smtp) false // 인증여부 (false라면 미인증, 단 서버에서 허용IP 설정이 되어야 함.) true * username 과 password는 인증없이 사용한다면 공백으로 두어도 됩니다. @Resource(name = "mailSender") private JavaMailSender javaMailSender; // DI MimeMessagePreparator preparator = new MimeMessagePreparator() { @Override public void prepare(MimeMessage paramMimeMessage) t..
안녕하세요. 저희는 ckeditor를 사용하고 있었는데요. 클라이언트가 불편하다고 해서, 대체 에디터를 찾다가 스마트에디터를 발견했습니다. (클라이언트가 가장 많이 쓰는건 엑셀에서 작업한 내용을 올리는 것이라고 했습니다.) * 스마트에디터는 네이버에서 개발한 오픈 위지윅스입니다. 가장 좋은건 엑셀에서 표 붙여넣기 할때 가장 똑같이 만들어서 복사가 되더군요. 표를 제어할때도 편리하고요~ 일단 변경하기에 앞서서 적용이 일단 잘 되어야 변경계획을 수립할지 결정을 하겠지요. 스마트에디터의 기능으로 html은 잘 작성이 되는데요. 문제는 이미지를 첨부할 때가 문제란 말이죠. 스마트에디터 내에서도 php는 기본적으로 지원이 되는데, 자바로는 포팅해서 사용해야 하더라구요. 인터넷을 찾아봐도 스프링에 맞춘 셋팅 방법은..
파일업로드를 할때 PDF를 업로드할 경우, 이미지 형식으로 변환하여 올려달라는 요청을 받았습니다. (PDF뷰어가 설치되지 않은 PC도 있기 때문에 몇몇 이용자는 볼 수 없다는 이유였습니다.) 그런고로 PDF 파일 형식을 이미지로 바꾸는 작업을 하게 되었습니다. 생각보다는 간단하네요. 일반적으로 변환을 하게 되면 페이지 당 1개의 이미지 파일이 생성됩니다. 저는 하나의 이미지에 합쳐서 출력했습니다. MultipartFile file; // 스프링 MultipartFile /* * 파일이 PDF라면 이미지로 변환 */ if ("application/pdf".equals(file.getContentType())) { // 파일타입이 pdf형식 일 경우, PDDocument document = PDDocumen..
기본적인 틀만 잡아놓고 방치한지 한참 되었습니다만, 콩콩님 요청으로 수정 및 삭제를 추가해보려고 합니다. 1. BoardService.java (인터페이스) 수정 public interface BoardService { public List getBoardList(); public BoardVO getBoardView(int idx); public int insertBoard(BoardVO board); // updateBoard 추상메소드 추가 public int updateBoard(BoardVO board); // deleteBoard 추상메소드 추가 public int deleteBoard(int idx); public int updateHit(int idx); } 위와 같이 인터페이스의 2개의 ..
고객이 에디터로 작성한 글의 내용을 EXCEL, PDF로 출력해달라고 요청을 해왔습니다. 보통 에디터로 작성할 경우, HTML로 저장이 되겠죠. 해당 HTML을 가지고 EXCEL과 PDF로 출력하는 방법은 서버단, 클라단에서 할 수 있는데요. 저는 서버 사이드 측면에서 해결을 해봤습니다. 1. HTML TO EXCEL 엑셀로 출력하는 방법은 간단합니다. 엑셀 다뤄보신 분들은 알겠지만 저장할때 파일형식을 htm, html로 저장이 가능하다는 점 아시겠죠. 그 방법을 이용해보는거에요. 여러가지 어플리케이션에 적용할 수 있겠지만, 저는 웹서비스를 가정하고 작성하겠습니다. 게시판은 글제목과 글내용이 있겠죠. 그리고 글내용은 에디터로 저장이 되어, HTML 로 저장됩니다. 따라서 전제조건은 (1) DB에서 저장된..
어느덧 8월이 되었습니다. 더운 날씨에 잘들 보내고 계신가요? 저는 프로젝트도 완료되고, 많이 안정화되었답니다. 다시 블로그에 포스팅할 시간이 생겼네요. 프로젝트 유지보수 도중, 파일을 업로드 할 수 있도록 해달라는 요청건이 들어왔습니다. 일반적으로 파일 업로드 & 다운로드, 어렵게들 생각하시는데요. 스프링을 이용하면 간단하게 파일을 업로드할 수 있습니다. 스프링을 사용하지 않는다면, I/O에 대해 이해를 하고 InputStream, OutputStream으로 바이트를 받아서 만드는게 옳겠지만, 스프링이라는 좋은 프레임워크를 이용한다면 간단한 설정만으로 가능하다는 사실! 스프링 너무 좋아요. 아무튼, 파일을 업로드 하기 위해서는 사전 설정이 필요합니다. 일단 라이브러리가 필요한데요, commons-fil..
이번 프로젝트 도중 구글 통계를 사용해야하는 경우가 생겼다. 아래는 구글에서 제공하는 레퍼런스와 p12 파일을 사용하여 엑세스 토큰을 가져오는 예제이다. 이거 때문에 하루종일 고민했다... 한국어로 된 가이드도 없을뿐더러, 스택오버플로우에 올라온 내용 중에서도 제대로 된게 없었다. 이리저리 삽집하다가 겨우겨우 해결했다. 나와 비슷한 누군가가 이글을 보고 도움을 얻었으면 좋겠다. Using OAuth 2.0 for Web Server Applications | Google Identity Platform | Google Developersw String accountId = ""; JsonFactory jsonFactory = JacksonFactory.getDefaultInstance(); File p1..
%-12.12d %5p %50.50C:%4.4L - %m%n
var Array = [1, 2, 3, 4]; var JsonObject = { "JSON" : Array }; JsonObject는 명백히 말하면 자바스크립트 오브젝트이지, JSON 형식이 아닙니다. 다음은 개발자 도구로 확인해본 JsonObject변수에 담긴 오브젝트 정보입니다.출력결과 JsonObjectObject {JSON: Array[4]}JSON: Array[4]0: 11: 22: 33: 4length: 4__proto__: Array[0]__proto__: Object 출력결과에서도 확인할 수 있듯이 이 객체의 prototype은 Object형입니다. 이를 JSON 타입으로 변경하여 웹서버와 통신을 하고자 할때 JSON.stringify(JsonObject) 를 사용하면 JSON 형식에 맞게..