Dropzone.js란드래그 앤 드롭 이벤트가 가능한 javascript 라이브러리이다.완전한 오픈소스이며 웹사이트에서 서버에 파일을 쉽게 올릴 수 있는 것이 장점이다.또한 다중 멀티 업로드도 지원한다. Dropzone.js 기본사용법 Jquery를 이용해 드랍존을 생성했다.우선 드랍존을 생성할 태그에 id 값을 선언해 주고. dropzone 클래스를 추가해 준다.그리고 내가 필요한 옵션을 추가한다. 주요 옵션 옵션설명url업로드 urlmethodrequest 메소드 선택headers요청 헤더 설정autoProcessQueue자동으로 보내기clickable클릭 가능 여부autoQueue바로 서버에 전송할지 설정createImageThumbnails파일 업로드시 썸네일 생성 여부thumbnailHeig..
sql을 활용해 비교하기SELECT *,CASE WHEN(START_DATE now()) THEN 'Y' ELSE 'N' END as 원하는 필드명FROM 테이블명sql를 이용하는 경우 case when 조건문을 활용해 원하는 필드명으로 값을 받아온 후 처리해 줄수 있다. (진행중) (접수완료) jstl을 이용해 비교하기jstl을 이용하려면 페이지 상단에 jstl 태그 라이브러리를 기입해줘야 한다. java util 클래스의 데이트를 활용해 현재 시간을 구한다.날짜 비교를 하려면 패턴을 맞춰줘야 하는데 를 이용하면 날짜 정보를 담고 있는 객체를 포맷팅해 원하는 형식으로 출력할수 있다. 속성표현식/EL타입설명value사용가능java.util.Dat..
robots.txt란?robots.txt란 IETF에서 검색로봇의 웹페이지 수집 허용/제한을 하는 국제 권고안이다. 간단히 말해 검색엔진 크롤러 또는 검색 로봇이 사이트에서 정보수집을 해도 되는 페이지와 해서는 안 되는 페이지를 알려주는 파일을 뜻한다. 일반적인 사이트의 경우 검색엔진 최적화를 위해 여러 가지 봇들의 정보 수집을 허용하지만 때에 따라선 검색되지 말아야 할 페이지를 선언해주기도 한다. robots.txt 위치robot.txt 파일은 반드시 사이트 루트 디렉토리에 위치해야 하며 텍스트 파일로 접근이 가능해야 한다. http://사이트 주소/robots.txt 티스토리의 경우에도 각 블로그마다 루트 디렉터리에 robots.txt 파일이 존재한다. robots.txt 규칙1. user-agent..
java jdk 설치 Oracle Java Technologies | OracleJava Is the Language of Possibilities Java is powering the innovation behind our digital world. Harness this potential with Java resources for student coders, hobbyists, developers, and IT leaders.www.oracle.com위의 페이지에 접속해 설치하고자 하는 운영체제와 원하는 버전의 java jdk를 다운로드해 설치하면 된다. 환경 변수 설정1. jdk 설치 경로 복사java를 설치할때 경로를 수정하지 않았다면 C:\Program Files\Java\[자바버전]으로 설치가..
WebAuthenticationDetails webAuthenticationDetails = ((WebAuthenticationDetails) authentication.getDetails()); String ipAddr = webAuthenticationDetails.getRemoteAddress(); Spring Security에서는 WebAuthenticationDetails의 getRemoteAddress()를 이용해 클라이언트의 ip를 알아낼 수 있다. 하지만 getRemoteAddress만으로는 실제 클라이언트의 헤더값 ip정보를 정확히 알아낼 수 없다. 그렇기에 클라이언트의 정확한 ip를 알아내기 위해서는 HttpServletRequest가 담긴 메소드 파라미터를 사용해야 한다. 1. Sec..
인텔리제이에서 콘솔 창에 한글 깨짐이 발생할 경우에 해결방법은 여러 가지가 있다. 1. [File] - [Settings] - [File Encodings] Global Encoding과 Project Encoding, 그리고 Default encoding for properties files를 확인하고 UTF-8로 바꾸어준다. 2. [File] - [Settings] - [Editor] - [General] - [Console] Default Encoding이 Utf-8로 설정이 안되있으면 바꿔준다. 3. [Help] -> [Edit Custom VM Options..] 해당 메뉴를 클릭하면 인텔리제이 옵션 설정파일이 열리는데 아래 구문을 추가해 준다. -Dfile.encoding=UTF-8 -Dcon..
Map을 이용한 json 객체 반환 @ResponseBody @RequestMapping(value = "/jsondata") public LinkedHashMap getJson(HttpServletRequest request, HttpServletResponse response, Model model) throws IOException { LinkedHashMap resultMap = new LinkedHashMap(); resultMap.put("title", "인포메이크"); resultMap.put("link", "https://letsplaycoding.tistory.com"); resultMap.put("description", "티스토리 블로그"); ArrayList itemArray = n..
문자열에 포함된 html 태그를 지우고 싶을 때에는 정규표현식을 많이 이용한다. 정규표현식이란 문자열 데이터에서 원하는 조건을 패턴의 형식으로 찾아내는 것을 말한다. 정규식은 전화번호, 주민등록번호, 이메일처럼 특정한 패턴이 있는 경우에 특히 많이 이용하게 된다. 정규식을 이용한 문자열 html 제거 기본 앱 '메시지'에 RCS 규격 추가…애플 기기간 '아이메시지'는 유지 아이폰에 기본 탑재된 문자메시지 전송 앱 '메시지'에 한 세대 전 규격인 SMS/MMS만 고집하던 애플이 구글과 유럽연합(EU) 압박에 결국 백기를 들었다. html 태그가 들어있는 샘플 코드이다. 태그 안에 텍스트와 태그가 골고루 들어 있다. contents.replaceAll("]*)?(\\s)*(/)?>", ""); 정규식을 만들..
java에서 xml을 파싱 할 때 Xpath를 이용하면 Dom 트리의 노드를 쉽게 검색이 가능하다. 파싱을 해보기 위해 임의의 xml을 하나 생성했다. 안에 이 반복되고 그 안에 과 각각 들어 있다. XPath를 이용한 xml 파싱 방법 public LinkedList xmlLoarder() throws Exception { log.info("xmlLoarder start"); DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance(); domFactory.setNamespaceAware(true); DocumentBuilder builder = domFactory.newDocumentBuilder(); String file_path..
자바에서 파일 다운로드를 구현하다 보면 문제가 발생할 때가 있다. 그건 바로 다운로드는 되지만 파일명의 특수문자가 깨진다거나 한글파일명은 다운로드가 안 되는 경우이다. 그래서 오늘은 파일다운로드 할때 어떤 브라우저를 사용하더라도 최대한 다운로드가 실패하지 않게 구현하는 방법을 알아보자. 사용자페이지 ${파일명} ${파일명2} ${파일명3} 파일명을 A 태그로 감싸고 data값에 파일명과 파일경로를 써 주었다. 다운로드 클릭 이벤트가 일어나면 A tag에 있는 data 속성값을 가져와서 변수에 담는다. 미리 만들어둔 download form에 넣고 submit()을 실행한다. 파일 다운로드 컨트롤러 @RequestMapping(value = "/file/download") public void downlo..
java에서 html을 엑셀로 출력하는 방법은 여러 가지가 있다.(poi 등등) 오늘은 그중에서 header만 간단히 변경해 엑셀이나 한글, 워드로 출력하는 방법을 알아보자. 출력해 볼 HTML office print 제목 내용 ${list.title} ${list.content} 출력할 내용은 db에서 불러왔고 jstl을 이용해 테이블 형식으로 만들었다. 더 예쁘게 스타일을 줄 수 있지만 일단 선 구분을 하기 위해 table에 border 값 1만 추가했다. 문서 상단에 다운로드 선언하기 jsp 상단에 헤더값을 선언한다. filename은 출력되는 파일이름이니 본인의 입맛에 맞게 변경하면 된다. 한글이 깨진다면 charset값을 변경해 주자. charset=utf-8, charset=euc-kr (js..
회사에서 응모하기 페이지를 만들라는 지령이 떨어졌다. 응모를 하기 위해서 필요한 건 개개인마다 다른 응모코드. 응모코드는 자바랜덤함수를 통해 구해보기로 했다. Math.random() 함수는 0이상 1미만의 값으로 난수를 반환한다. 이는 사용자가 지정한 값을 통해 원하는범위내의 값으로 변형이 가능하다. boolean flag = false; String reception = ""; Map map = new HashMap(); while (!flag) { Random rnd =new Random(); StringBuffer buf =new StringBuffer(); for(int i=0;i < 10;i++){ if(rnd.nextBoolean()){ buf.append((char)((int)(rnd.ne..