Author Archives: itpsolver

[펌글] javascript window.open() 으로 팝업 호출시 팝업이 화면의 중앙에 뜨도록(screen center align) 하는 방법 (듀얼모니터 고려)

By | 2월 28, 2017

아직 완전히 검증한 것은 아니고 그냥 코드만 퍼 옴. – 출처: http://stackoverflow.com/questions/4068373/center-a-popup-window-on-screen –    function PopupCenter(url, title, w, h) { // Fixes dual-screen position Most browsers Firefox var dualScreenLeft = window.screenLeft != undefined ? window.screenLeft : screen.left; var dualScreenTop = window.screenTop != undefined ? window.screenTop : screen.top; var width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ?… Read More »

[펌글] Spring MVC 사용시 Controller Method 없이 View Jsp를 매핑해 주도록 하는 설정 (mvc:view-controller)

By | 2월 28, 2017

– 출처: http://kdarkdev.tistory.com/105 –   별도의 모델이나 컨트롤러가 없이 URL요청이 왔을때 뷰로 연결만 해주는 경우는 굳이 컨트롤러가 필요없이 <mvc:view-controller>태그를 사용하면 URL과  뷰를 매핑해 줄 수 있습니다. 아래의 태그는 /common/gg 라는 URL을  요청 받았을때 gg라는 뷰 이름을 리턴 받게 됩니다 만약 InternalResourceViewResolver 에서 prefix/suffix가 각각 /WEB-INF/jsp/ 와 .jsp 라고 가정 한다면 결과적으로 /WEB-INF/jsp/gg.jsp 라는 jsp view를 찾게 됩니다.   <mvc:view-controller path=”/common/gg”… Read More »

[Android] Android Studio에서 JUnit 테스트를 할 때 Logcat을 사용할 수 있도록 하는 설정 (powermock 설정 관련)

By | 1월 18, 2021

원래는 JUnit 같은 거 잘 안쓰는 스타일인데, 하도 Test 클래스의 main() 실행이 안되길래(클래스를 못 찾는다나 어쩐다나) JUnit으로 방향을 돌려 봤다. 그런데 unit test를 하다 보니, Logcat 을 실행하는 부분에서 에러가 발생해서 진행이 되질 않았다.  구글링을 해 보니 powermock 이란 걸 써야 한다네? 그래서 dependency 들을 찾아서 build path 에 추가해 주는데, 이것도 워낙 라이브러리가 세분화… Read More »

[펌글][Android] SharedPreferences 에 저장한 데이터가, 앱을 삭제해도 지워지지 않는 경우

By | 1월 18, 2021

– 출처: http://stackoverflow.com/questions/41808957/sharedpreferences-not-reset-on-reinstall –      In Android Marshmallow Google introduced the “Auto Backup” feature which is turned on by default if your targetSdkVersion is >=23. This will back up your database and SharedPreferences by default and restore it when you re-install the application. To turn this feature off you have to add android:allowBackup=”false” to your… Read More »

[Android] 세션쿠키 제거하기 (웹뷰의 로그인 정보 제거 등을 위해)

By | 1월 18, 2021

원래 매개변수 없는 removeSessionCookie() 를 사용했었다고 하는데, 비동기 콜백을 인수로 받는 removeSessionCookies(new ValueCallback<Boolean>(){}) 로 변경되었다고 한다. 그래서 짜본 코드가 아래의 것. 안드로이는 생초보라 맞능가 몰겄어~   public void onSessionCookieRemoveClicked(View v) { CookieManager cookieManager = CookieManager.getInstance(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { cookieManager.removeSessionCookies(new ValueCallback<Boolean>() { @Override public void onReceiveValue(Boolean value) { Log.d(“”, “## 롤리팝 이상 버전의 removeSessionCookie() 호출… Read More »

[Android Studio / 개발PC DRM이슈] Rendering Problems Exception raised during rendering: Index: 0, Size: 0 (Details)

By | 1월 18, 2021

Android Studio 에서 android_main.xml 등을 선택하여 layout preview를 볼 때 Rendering Problems   Exception raised during rendering: Index: 0, Size: 0 (Details) 오류가 발생하면서 레이아웃이 표시되지 않는 문제가 있었다.    구글링을 해 봐도, API버전을 바꿔보라는 말 정도 밖에 나와있지 않았고,  IndexOutOfBoundsException 이 발생하는 문제는 한 건도 검색되지 않았다.   그런데 Android Studio 를 재설치하면 문제가… Read More »

Android SDK Manager 에서 sdk 콤포넌트들을 다운로드 받을 때 peer not authenticated 오류가 발생할 경우

By | 1월 18, 2021

정확한 해결방법인지는 모르겠지만, 일단 이 방법을 써서 통과함.   프로젝트 루트(ex: MyApplication) > build.gradle 파일을 열어서 jcenter() 라고 되어 있는 부분을 jcenter{ url “http://jcenter.bintray.com/” }  로 수정한 후 다시 실행하니 성공하였다.   이거 되는 줄 알았는데 아니었네… ㅠㅠ..      

[펌글] 안드로이드 @+id, @id, @android:id 의 의미

By | 1월 18, 2021

– 출처:  http://blog.daum.net/sift/28 –    1. @+id : 새로 추가(+)하는 리소스 아이디  - 다른 Activity와 동일한 리소스 아이디를 생성해도 괜찮다  - 즉, @+id/test 를 A.xml 과 B,xml 에서 동일하게 사용해도 괜찮다. 그러나, 유니크하게 가는게 좋을듯..   2. @id : 이미 추가되어 있는 리소스 아이디를 가리킴.   3. @android:id : 안드로이드에 예약되어 있는 리소스 아이디      

Jackson 2 를 사용하여 json 을 이쁘게 출력하기 (beautifier, formatter)

By | 11월 24, 2016

(1) 심플한 방법 ObjectMapper mapper = new ObjectMapper(); String beautifiedJson = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(mapper.readValue(srcJson, LilnkedHashMap.class));   (2) (1) 을 수행했는데 마음에 들지 않을 경우, 사용자정의를 할 수 있는 포인트가 있다. (내 경우에는 indent가 tab이 아니라 space 2개로 되어 있는 것이 마음에 들지 않아서 적용해 보았다.)      

오라클(Oracle) 피벗(pivot) 샘플 (행을 열로, row를 col로)

By | 11월 19, 2016

  select * from ( select “API명”, “응답기관”, “성공건수”, “실패건수”, from ( … 대단한 쿼리.. 중략 … ) ) PIVOT (SUM(“성공건수”) AS 성공, SUM(“실패건수”) AS 실패 FOR “API명” IN (‘계좌등록’ AS “계좌등록”, ‘잔액조회’ AS “잔액조회”, ‘입금이체’ AS “입금이체”))    

엑셀(Excel) 사용시 셀 값의 합계가 계산되지 않을 때의 처리

By | 11월 19, 2016

분명히 이상한 부분이 없는데, 왜 셀 합계가 계산이 되지 않을까? 상당히 답답한 적이 있었는데(딥빡! >, <), 대략 아래와 같이 정리할 수 있었다.     *  셀이 숫자 형식이 아니기 때문이다. * DB조회 결과를 직접 엑셀에 붙여넣거나 할 경우에 발생한다. * 셀 서식 > 맞춤 > 가로 > 일반 설정시 값이 좌측에 정렬되면 텍스트(계산불가), 우측에 정렬되면… Read More »

Java 에서 정규식(Regex)을 사용하여 substring 하기

By | 11월 19, 2016

담에 또 써먹을 일이 있을까 모르겠지만… 일단 끄적여 본다~   // 이 문자열에서 시간표시 이전만 남기고 제거하고 싶다. String msg = “블라블라블라블라 (09:01 13:57:14) 블라블라블라”; String msgSubStr = “”; // 잘라낸 결과 Pattern pattern = Pattern.compile(“\\(\\d\\d”); // 위 msg 문자열에서 “(09” 에 해당하는 정규식패턴 Matcher matcher = pattern.matcher(msg); int foundIdx = 0; if(matcher.find()){ foundIdx =… Read More »

MariaDB를 외부에서 접속시 Can't connect to MySQL server on '도메인' (10061) 에러가 발생할 때

By | 11월 13, 2016

– 출처: https://mariadb.com/kb/en/mariadb/configuring-mariadb-for-remote-client-access/ –   패스워드가 맞지 않는 등 여러 경우가 있을 수 있겠지만,  내 경우에는 root 유저에 대하여 모든 호스트에서의 접근을 허용하지 않고 있기 때문이었다. 다음과 같이 해결하였음.   (1) root 유저 로그인 mysql –user=root –password=패스워드   (2) 모든 클라이언트 호스트에 대하여 접근 허용 (아래 % 가 모든 것을 허용한다는 의미) GRANT ALL PRIVILEGES ON… Read More »

Windows 10 에서 파일이나 폴더 생성시 탐색기(explorer)에 바로바로 반영되지 않고, F5 키로 새로고침(refresh)을 해야 적용되는 현상 해결

By | 10월 30, 2016

– 출처: http://support.hp.com/kr-ko/document/c00641058 –    레지스트리 편집기를 연다. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ 경로를 찾아간다. 해당 경로 하위에 update 라는 키(폴더)를 생성한다. 새로 만든 update에 커서가 있는 상태에서 우측 창에 UpdateMode 라는 DWORD(32bit) 를 생성하고 값은 16비트값 0 으로 설정해 준다. 탐색기에서 F5로 새로고침 해 본 후 다시 폴더나 파일을 생성해 보자 (안되면 재부팅~)      ※ 근데 이렇게 해도… Read More »