본문 바로가기

728x90

Dev

Native와 Mobile Web통신 시 반환 메서드명 랜덤 생성 Android Native와 Mobile Web 사이 API 정의 후 통신 할때, Native 반환 메서드명을 시간값과 랜덤 함수를 이용하여 임의로 생성되도록 하고, Map과 같은 형태로 저장하여,async로 호출하도록 한다. //** 1. 반환 시 실제 동작할 함수 정의var project={//** Start ResponderResponder :{//** 1-1. Start successRequestList:: 리스트 반환 성공successRequestList : function(param) {alert("반환 ======== successRequestList " + param);jsParingResponseList(param);}, //** End successRequestList :: 리스트 반환.. 더보기
Server to Server Http 요청 내용을 Fiddler에서 관찰하기 위한 설정 import org.apache.http.HttpHost;import org.apache.http.conn.params.ConnRoutePNames;..................................public String requestPOST(String reqUrl, String reqParam, HashMap extendedHeader, String contentType, String charset) {String serverResponse = new String();try { DefaultHttpClient httpClient = new DefaultHttpClient();HttpHost proxy = new HttpHost("127.0.0.1", 8888); httpClient.get.. 더보기
다국어 Message Resource 브라우져 언어 / 파라미터 처리 설정 #2 지난번 설정(하단에 다시 표기 되어 있음)으로 다국어 Resource 적용은 완벽하게 되었다고 생각했다.ㅇ ㅏ...그런데 이게 웬일인가요. 요청 언어 코드, 반환 언어 코드, 화면 표시 언어 모두 따로 놀고 있었다. EL 태그를 사용해서 다음을 출력 해 보았다. #1. 첫번째 테스트${pageContext.request.locale} = en_GB${pageContext.request.locale.language} = en${pageContext.response.locale} = en${pageContext.response.locale.language} = en화면 표시 언어 = en #2. 두번째 테스트- 파라미터로 ?langCode=ko를 넘긴 경우${pageContext.request.locale}.. 더보기
다국어 Message Resource 브라우져 언어 / 파라미터 처리 설정 #. Spring 3.0.7.RELEASE mvc-config.xml 파일 설정..... 더보기
생각하지 못 했던, 자바스크립트 호출이 안 된 이유 #. 현재 내 페이지 구성 Resource include : .css / .js 파일 Body : html tag 내가 선언한 자바스크립트 함수 태그에 onclick 함수를 호출 하도록 이벤트를 걸었다. 그런데, 화면에서 해당 버튼을 클릭해도 함수가 호출이 되지 않았다. 왜??왜 안 되는 거야??혹시, Element가 중간에 삽입이 되어서 그런가?아닌데... 그냥 onClick 이벤트여서 그런 것과 상관없이 동작해야 하는데 왜 안 되는지 모를 일이었다. 혹시나 해서페이지 하단에 해당 버튼에 jQuery live() 함수로 click 이벤트를 바인딩 시켰더니 동작 했다.jQuery로만 동작하나?말이 안 되는데....;; ㅇ ㅏ!!! 퍼블리싱 팀에서 작업 해 줬던 걸 내가 잘 못 가져왔나 싶어, 그쪽 작업물.. 더보기
MySQL의 BETWEEN 조건절 결과 데이터 범위 #1. 쿼리 작성할 때마다 헷갈리는 내용 "BETWEEN 조건A AND 조건 B"에서 조회되는 데이터의 범위는?1) 조건A & 조건B 모두 포함2) 조건A 포함 & 조건B 비포함3) 조건A 비포함 & 조건B 포함4) 조건A & 조건B 모두 비포함 #2. 테스트 결과1) 조건A & 조건B 모두 포함 e.g) 2일전(2013년 03월 05일) ~ 오늘 (2013년 03월 07일) 데이터 조회[Query]SELECT --- ,로 구분지어지는 조회할 컬럼 ---FROM --- 조회할 테이블 ---WHERE DATE_FORMAT(--- Data Type이 날짜형식인 컬럼명 ---, '%Y%m%d') BETWEEN DATE_FORMAT(DATE_ADD(NOW(),INTERVAL -2 DAY), '%Y%m%d') A.. 더보기
Server to Server Http POST 요청 시 파라미터 처리방법 2가지와 Entity 클래스 #. 테스트 했을 때 성공한 방법 1. 일반적인 Form 파라미터 형식(?로 시작하고 &표시로 연결되는 일련의 스트링값) 전송 - 반환 형식 json import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client.HttpClient; import org.apache.http.client.entity.UrlEncodedFormEn.. 더보기
Windows XP 탐색기에서 이미지 미리보기 제거 ※Windows XP에서 적용되는 팁입니다.한폴더에 이미지나 동영상 파일등이 엄청 많이 쌓이게 되면그 폴더에 접근 할때마다 속도가 엄청 느려지거나 멈추기 까지 합니다.옵션에서 바꾸는 것도 한계가 있고 기능을 끄는 방법입니다.시작 - 실행regsvr32 /u shmedia.dllZIP 압축/해제 기능은 zipfldr.dll 그림 미리보기 기능은 shimgvw.dll 동영상 미리보기는 위의 shmedia.dll 복원은 /u 를 제거하시고 마찬가지로 입력해주시면 됩니다.  [출처] http://crave.tistory.com/4 더보기
Windows XP 자동실행 기능 막는 방법 컴퓨터가 오래 되다보니윈도우8를 사용하는 사람들도 있는데난 여전히 XP를 사용하고 있고, 그것도 이미지 미리보기 기능이 켜있거나대용량 외장 하드를 연결할라치면 컴퓨터 반응 속도가 현저히 떨어진다.이렇게 느낄 정도로 나쁜 사양은 아닌 것 같은데 왜그러는 건지.. 여튼, 컴퓨터 사용 중간중간갑자기 마우스 반응이 멈추는 것 처럼 보이다가폴더에서 폴더로 파일 옮길 때 표시해 주는 것처럼 작은 윈도우 창이 뜨면서"자동 실행" 이라는 구문과 함께 내 모든 자원을 점유하다가 아무일도 없었다는 듯이 사라지는 현상이 발생하여다음과 같이 조치 했다. USB에 자료가 많거나, 특히 외장하드 등을 연결할 때 자동실행 때문에 시간을 꽤 뺏길 수가 있다. 게다가 USB를 통해 전염되는 바이러스들이 과거 디스켓을 쓰던 시절 이상으.. 더보기
입력 Form을 위한 몇 가지 Validation check /** * @author SujeongYeom */$(document).ready(function(){ /******* 멤버 추가 취소 ************/$("td img").bind("click", fnDeleteField)/******* 멤버 추가 *************/$(".btn_mem_add").click(function(){var $addableMemNum =parseInt($(".c97ad49").html(),10); var $addedMemNum = $(".iv_module").size(); /** 1명 -> 2명일 때 X표시 첫번째 라인에 추가 **/if($addedMemNum == 1)$("td img").toggle();if($addableMemNum > $addedMemNu.. 더보기
IE9으로 테이블 표시할 때 칸(Cell) 밀림 현상 해결 조건에 따라 테이블 형태의 데이터를 Ajax로 호출 해서 표출해주는 화면을 작성하였다.웬만한 버그는 해결했다는 확신하에 페이지를 오픈 하였는데, IE9에서 많은 데이터를 뿌릴 때, 테이블에 중간에 간헐적으로 공백이 삽입되면서 테이블이 깨지는 문제가 발생하였다. 퍼블리싱 팀과 소스를 하나하나 뜯어보고, 변경해 보고 했지만 해결되지 않는,데이터가 잘 못 되었는지 디버깅을 해보고 해봐도 해결되지 않는 이 문제는 브라우저 문제였다고 잠정 결론 내렸다.같은 문제를 해결해 놓은 다른 좋은 개발자들의 포스팅에 따라서. 감사합니다. [ 문제 화면 ] [ 해결책 ]Ajax로 호출되는 페이지 내에 다음 추가. [ 반영 후 운영 중 후기 2013년 03월 현재 ]다른 브라우저보다IE로 화면을 볼 때 로딩 속도가 느리다는 피.. 더보기
Data from X509Certificate #. X509Certificate 얻기 from a Base54 encoded String /** * * * @param encodedCertificate * @return */ public static X509Certificate getCertificateObject(String encodedCertificate) { X509Certificate x509Certificate = null; try{ // PEM encoding -> DER certificat + making InputStream InputStream inputStream = new ByteArrayInputStream(Base64.decode(encodedCertificate.getBytes())); CertificateFactory c.. 더보기
Facebook "Like"버튼 별 & "Share" 기능의 내보낸 글 구성의 차이점 1. "Facebook"에서 일반 사용자 계정이 아닌 "Page", 즉, 내부에 있는 "Like" 버튼의 결과 2. 일반 웹 페이지에 연결된 "Like" 버튼의 결과 현재 진행되고 있는 "Open Graph" 에서는 일반 웹 페이지에서 Like 해도 프로필에 추가되도록 하는 기능을 지원하는 듯. 아마도. 3. "Share" 기능 #. 내가 해야 할 일. 일반 페이지에서 Like 버튼 클릭했을 때와 Share 기능을 실행 했을 때처럼 해당 페이지의 대표 이미지와 원하는 Posting 내용을 어떻게 설정해서 해당 기능 버튼을 연동할 것인가 숙지하는 것. 더보기
속도 비교 : For문 비교하여 값 얻어내기 vs 디비 접속하여 값 얻어내기 작업 중에 정말 궁금한 것이 생겼다. 필요한 데이터를 매번 디비에 가서 가져오는 것이 빠를까, 아니면 모든 데이터를 다 가져온 뒤, 메소드 안에서 for문으로 돌려서 비교하여 필요한 값을 가져오는 것이 ㄷ ㅓ 빠를까. #. 테스트 소스 : 테스트라 빠른 결과값을 얻기 위해 컨트롤러에서 모든 걸 구현. 1. 언어 : JAVA 2. Framework : Spring 3.0.5 3. 기능 : Depth를 가지는 트리형 카테고리 리스트를 뿌릴 때, 최상단 부모까지 정보를 모두 표시 해 준다. 예 ) Entertainment > Game > Puzzle 4. 문제 : 최말단 카테고리 정보를 가져와 상단의 부모 카테고리의 이름을 얻어 올 때, 전체 리스트 정보를 가지고 하나하나 디비에 접속해서 값을 얻어 오는 것이.. 더보기
XHR(Ajax) > Comet > HTML5 WebSockets 1. WebSodkets 란? }하나의 TCP소켓 연결로 쌍방향 통신을 지원하는 기술. 웹서버와 브라우저에서 구현되기 위해 고안되었지만 모든 클라이언트와 서버 프로그램간에서 사용 가능. WebSocket API는 W3C(http://www.w3.org/TR/websockets/#network-intro)에서 정의하고 있고, WebSocket 프로토콜은 IETF(Internet Engineering Task Force) 에 의해 정의 됨. }HTTP, FTP, TELNET 등과 같은 Application layer의 프로토콜 사용. }80번 이외의 포트로 시도되는 일반적인 TCP 연결은 관리자의 보안 정책에 따라 막히는 경우가 많기 때문에 이런 제약을 극복할 수 있는 방법이 될 수 있음. 2. 배경 }19.. 더보기
Default Locale setting of HttpServletRequest Browser language setting -> the language setting is used for the default locale setting of HttpServletRequest object -> the locale information is used by org.springframework.web.servlet.i18n.SessionLocaleResolver -> the locale information of org.springframework.web.servlet.i18n.SessionLocaleResolver is used by org.springframework.context.support.ReloadableResourceBundleMessageSourc to load mes.. 더보기
Window 7 Oracle Client 설치시 javaw 에러 Oracle client 설치 시, javaw.exe 에러 메세지가 발생하면서 설치가 더 이상 진행되지 않는 문제 발생. -- 해결책-- 1. 다운 받은 설치 폴더 안에서 install 폴더 찾는다. 내 작업 환경 = D:\Util\Oracle10gClient\client\Disk1\install ./orapram.ini 에 빨간색 부분 추가 [Certified Versions] #You can customise error message shown for failure, provide value for CERTIFIED_VERSION_FAILURE_MESSAGE #Windows=5.0,5.1,5.2,6.0,6.1 2. stage 폴더로 이동 내 작업 환경 = D:\Util\Oracle10gClient\c.. 더보기
jxl 사용해서 Excel 출력하기 1. 워크북 만든다. 2. 워크북 안에 시트를 생성한다. 3. 쉬트 안에 원하는 데이터를 한 셀, 한 셀 넣는다. (여기에는 텍스트 데이터를 삽입하는 Label 클래스만 사용했으나 Number 형도 있고 여러가지가 있은 것 으로 보인다. 필요에 따라 알아보고 사용하도록 한다.) import jxl.Workbook; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; ...... List dataList = null; dataList = acceptService.getMailingList(1, count,getAgreeYN()); /* 엑셀 파일 생성 */ String filePath ="/exc.. 더보기
웹에서 파일 다운로드 코드 HttpServletResponse response = ServletActionContext.getResponse(); response.setHeader("Content-Disposition", "attachment; filename="+"사용자에게 내보낼 파일이름"); response.setHeader("Content-Description", "JSP Generated Data"); //헤더설정 FileInputStream finput = new FileInputStream(file); long flengh = file.length(); byte b[] = new byte[(int)flengh]; finput.read(b); OutputStream os = response.getOutputStream(.. 더보기
<s:form> 태그 <form> 태그로 변환 되었을 때의 id 속성 값의 변화 고객사 사이트에 문제가 발생했다. IE8 에서 호환성 보기를 했을 때 발생하는 문제 였는데, 내가 파악한 원인은 이렇다. 문제의 페이지에서는 사용자가 글을 등록하는 활동이 이루어진다. 글을 등록하기 위해서 에디터가 사용되었고, 그 에디터와 관련된 스크립트에서는 "summary" 라는 id 속성 값으로 hidden type 의 input field 에 어떤 내용을 전달한다. 그리고 submit 이 일어 날 때, 스크립트에서는 이 hidden type 의 input field 에 내용이 있는지 없는지를 체크한다. ㅈ ㅏ. 그렇다면 처음에 내가 생각했던 문제가 발생한 원인은 에디터에서 hidden field 에 데이터를 넘겨 주지 못 했거나, 제대로 넘겨 줬는데 스크립트에서 체크할 때 읽지 못했거나. 문제가 .. 더보기
Web Logic 에서 Java 코드로 new File 했을 때의 파일 생성 경로 따로 특정 경로 지정 없이 파일명만 파라미터로 넘겨 주었을 경우 new File 로 파일 객체 생성 했을 때 생성되는 파일의 경로는 엔진이 구동되는 각 도메인의 홈 경로. 내 경우 D:\dev\bea\weblogic92\common\templates\domains\test_domain 하위에 파일이 생성 되었다. 더보기
Web Logic 9.2 는 Servlet 2.5 지원하지 않는다. jboss-5.1.0.GA 에서 돌아가는 소스를 Web Logic 9.2 에서 실행하려고 했는데 다음과 같은 오류가 발생했다. 여기저기 검색을 해 보다가 발견한 해결책. Web Logic 9.2 에서는 Servlet 2.5 를 지원하지 않으니 web.xml 파일에있는 네임스페이스 값을 변경하라. 을. 으로. 웹 어플리케이션 실행됐다. 더보기
[Struts 2] Token Interceptor 안 쓰고 페이지 분기 #. Class file source public class SendEmailAction extends ActionSupport { ........ private String statusFlag = null; // 처리 결과 private String altMessage = null; // 사용자에게 보여줄 결과 메시지 @Override public String execute() throws Exception { try{ ........ }catch (Exception e) { e.printStackTrace(); setStatusFlag(ERROR); setAltMessage(getText("mail.message.error")); // xx.properties 파일에 있는 값 가져와서 넣기 retur.. 더보기
사용자에게 서버 메시지 뿌리는 방법 중 하나 #. Class file source public class SendEmailAction extends ActionSupport { ........ private String statusFlag = null; // 결과 Flag private String altMessage = null; //사용자에게 보여줄 결과 메시지 @Override public String execute() throws Exception { try{ ........ }catch (Exception e) { e.printStackTrace(); setStatusFlag(ERROR); setAltMessage(getText("mail.message.error")); return ERROR; } setStatusFlag(SUCCESS).. 더보기
JAVA로 SMTP 메일 보내기 - "제목" 항목 한글 깨짐 #. 송신된 메일 제목 부분 한글 깨졌던 소스 ...... Authenticator auth = new PopupAuthenticator(getSmtpAccount(),getSmtpPasscode()); Properties props = new Properties(); props.put("mail.smtp.host", getSmtpHost()); props.put("mail.smtp.port", getSmtpPort()); props.put("mail.smtp.auth","true"); Session session = Session.getInstance(props,auth); Message message = new MimeMessage(session); message.setFrom(new Internet.. 더보기
[Struts2] 최초 프로젝트 구성 #. 제공되는 예제로 기본적인 틀 구성하기. #. 환경 - Java jdk : jdk1.6.0_20 - tomcat : 6.0.29 - Maven : 2.2.1 - eclipse : 3.5.2 ( Galileo ) 1. 예제 "Web Application" Download. (ㄱ) 웹브라우저에서 "http://struts.apache.org/2.2.1/index.html" 접속 > "Get Started" 라는 붉은 단추 클릭. (ㄴ) 경로 "Apache Struts 2 Documentation > Home > Tutorials > Getting Started > How To Create A Struts 2 Web Application" 로 들어가면 두 가지의 다른 Web Application 예제를 설.. 더보기
AJAX 호출 + iBatis 쿼리 + JSON 형태의 결과 값 1. AJAX 호출 $('#btnSearch').click(function(){ $.ajax({url:"${pageContext.request.contextPath}/masterComNet.do?page=selectManHoleList4Search", dataType:"text", success:function(data) { data = eval("("+data+")"); $.each(data,function(){ var v_TR = ""+ ""+ ""+this.transmanhole_id+""+ ""+this.transmanhole_nm+""+ ""+this.transmanhole_type+""+ ""+this.gis_x+""+ ""+this.gis_y+""+ ""+this.install_date+"".. 더보기
5초 간격으로 DB 조회 & POPUP 공지 더보기
웹페이지 만들 때 생각해야 할 것 #. 지금 하고 있는 "아산배방 U-City" 프로젝트에 특히 적합한 순서일 수 있다는 것을 기본으로 한다. 1. 화면에 무엇을 보여 줄 것인가? 2. 그 화면의 디자인이 어떠냐에 따라 보여줄 내용이 달라지는 경우가 많지만, 우선 화면에 보여줄 데이터를 저장하기 위해서 데이터베이스 테이블이 필요하다. 테이블 컬럼에 필요한 내용들이 잘 맞는 데이터 TYPE 으로 정의되어 있는가? 2. 쿼리를 작성한다. (현재, iBatis를 사용하고 있고, 기존의 쿼리를 참고하여 사용가능) 3. Spring MVC 패턴에 맞게 DAO, Model, Service, Controller 파일을 작성한다. 4. 화면을 구성하고 적당한 값을 불러와서 넣어준다. 더보기
VMware Virtual machine 에 Debian 설치하기 1. 인터넷 검색으로 Debian 5 버전을 무료 다운 받았다. Red Hat, Suse, Ubuntu 등 여러가지가 있는데 Debian을 선택한 특별한 이유는 따로 없고, 그냥 언젠가, 그래도 나보다 리눅스에 대한 식견 있는 친구가 추천해 준 적이 있기 때문이다. 다운받은 Debian 사이트 : "http://www.debian.org/CD/http-ftp/ --> Official CD/DVD images of the stable release -->[i386]" 이렇게 따라가다보면 "http://cdimage.debian.org/debian-cd/5.0.4/i386/iso-cd/" 페이지에 닿는데 이 페이지에서 이미지 파일 " debian-504-i386-CD-1.iso ~ debian-504-i38.. 더보기