반응형

Java 54

[JSTL] Core태그

Spring에서 JSP로 개발을 하다보면 용어는 몰라도 다음과 같은 표현을 자주 쓰곤합니다. ${name} 은 html에서 제공되는 폰트를 굵게 보여주는 태그이고, 이 ${name}은 무엇일까? 실제 페이지에서는 저 ${name}은 ${name}가 아니라 첫번째 줄에 설정된 로이팩토리가 html에서 보여주게 됩니다. 이를 JSTL이라고 하는데 과연 JSTL은 무엇일까요? 자바서버 페이지 표준 태그 라이브러리(JavaServer Pages Standard Tag Library, 약칭 JSTL)은 Java EE 기반의 웹 애플리케이션 개발 플랫폼을 위한 컴포넌트 모음이다. JSTL은 XML 데이터 처리와 조건문, 반복문, 국제화와 지역화와 같은 일을 처리하기 위한 JSP 태그 라이브러리를 추가하여 JSP 사..

개발 창고/Web 2020.08.26

[Spring] FCM Push서버 개발시 고려사항

FCM Push서버 시 만약 Maven을 적용하였다면 pom.xml에 아래와 같이 추가할 것입니다. com.google.firebase firebase-admin 6.7.0 하지만 해당 의존만 추가하면 아래와 같은 오류가 발생하기도 합니다. (제가 최근에 겪은 오류) Uncaught exception from servlet java.lang.NoClassDefFoundError: com/google/common/base/MoreObjects at io.grpc.internal.AbstractManagedChannelImplBuilder.build(AbstractManagedChannelImplBuilder.java:284) at com.google.api.gax.grpc.InstantiatingChann..

개발 창고/Web 2020.08.20

[Android] 기기별 고유식별을 위한 UUID

과거에는 기기별 Mac Address를 활용했지만, 보안 문제 등으로 인해 사용이 어려 어려워졌습니다. 때문에 이를 대체해서 개인 식별번호를 위한 UUID를 활용가능합니다. String uuid = UUID.randomUUID().toString(); Log.d("TAG", "UUID >> " + uuid); 다음과 같이 키가 발급됩니다. 때문에 이 키를 저장해 두고 활용하면, 캐시 삭제/어플 삭제 이전에는 계속 동일한 식별번호로 활용 가능합니다. // UUID 초기화 private void initUuid(){ SharedPreferences mPref = getSharedPreferences("KEY_PREF", MODE_PRIVATE); String uuid = mPref.getString("KEY..

[Spring] Movie Streaming 처리

최근에 카페24에 스프링 프레임워크를 설치하고 운영중에 버그가 한개 발생했었습니다. 그 버그는 동일 서버내에서 영상 재생을 다이렉트로 하면, Stack Overflow가 발생하면서 재생동안 에러로그가 쌓여 카페24에서 할당받은 용량을 catalina.out이 꽉 차면서 용량이 사용할 수 없는 문제였습니다. 확인해보니, 컨트롤러단에서 스트리밍 링크를 직접 연결해주면 해당 문제가 해결되는것을 확인했습니다. private final String FOLDER_MOVIE = "{폴더경로}"; /** * @reference : http://aodis.egloos.com/5962812 * @modified : whiteduck */ @RequestMapping(value="/stream/{video_name:.+}"..

개발 창고/Web 2020.08.10

[Kotlin] 코틀린이란?

최근에 코틀린에 대해 공부를 할 이유가 많아졌습니다. 그 이유 중 하나는 구글이 안드로이드 개발 선호 언어로 코틀린을 들기 때문이고 (구글은 젯브레인스사와 협업으로 IntelliJ IDEA 기반으로 만들었고, 코틀린은 이 젯브레인사에서 만든 언어라 호환성이 좋다고 보여집니다) 또 개발자 입장에서 소스가 대부분 복사 붙여넣기가 많은데, 최근 안드로이드 소스는 자바 소스가 줄어들고 코틀린 소스가 많아지기 때문입니다. 그렇다고 코틀린 소스로 개발은 신규 프로젝트에서 중요하지만, 기존의 자바기반 어플을 유지보수하기위해서도 코틀린 소스를 읽을 줄 알아야 하는 부분이 많아 코틀린에 대한 니즈가 많이 늘어나게 되었습니다. 기본적으로 코틀린은 위키백과에 아래와 같이 정의하고 있습니다. 코틀린(Kotlin)은 JVM에서..

[Spring] 프로그램의 로깅을 위한 기술 Log4j

이 버전에서는 TOC를 지원하지 않습니다. (ex. 모바일) 웹 개발뿐만 아니라 안드로이드 개발 등등에서 콘솔에 보일 로그는 때로 매우 중요하기도 합니다. 로깅은 여러 방법이 있는데 그중에서도 아파치재단에서 제공하는 Log4j는 최근까지도 많이 활용되는 기능입니다. (Spring에서 주로) Log4j란? log4j는 프로그램을 작성하는 도중에 로그를 남기기 위해 사용되는 자바 기반 로깅 유틸리티이다. 디버그용 도구로 주로 사용되고 있다. log4j의 최근 버전에 의하면 높은 등급에서 낮은 등급으로의 6개 로그 레벨을 가지고 있다. - 위키백과 Log4j - 위키백과, 우리 모두의 백과사전 ko.wikipedia.org 로깅의 등급으로 총 6가지가 있는데 다음과 같습니다. FATAL ERROR WARN I..

개발 창고/Web 2020.08.03

[Android] SeekBar 적용하기

자주 쓰기도, 자주 쓰지 않기도 하는 기능 중 하나가 SeekBar인데요 주료 옵션/설정 등을 숫자가 아닌 배율로 조정할 경우 적용하는 경우가 많은데요 이렇게 SeekBar를 등록하면 아래와 같이 적용된 화면이 노출됩니다. 이를 Activity에서 활용하려면 다음과 같이 적용해 주면 됩니다. 해당 소스는 SeekBar를 반정도 Active 된 상태로 SeekBar를 수정 시 LogCat에 현재 Progress값을 호출되도록 작업한 소스입니다. @Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.test); // STEP01. layout의 See..

[Android] ListView에 SimpleAdapter 적용하기

이 버전에서는 TOC를 지원하지 않습니다. (ex. 모바일) 이전 게시글에서는 ArrayAdapter를 적용하는 가장 기본적인 방법에 대해 이야기했습니다. 이번에는 작성하다 보면 한 번쯤 드는 궁금증 layout.simple_list_item_1이 있으면, layout.simple_list_item_2도 있지 않을까? 라는 궁금증을 해결해드리기 위해 작성하게 되었습니다. 2020/07/25 - [개발 창고/안드로이드 개발] - [Android] ListView에 ArrayAdapter 적용하기 [Android] ListView에 ArrayAdapter 적용하기 안드로이드 어플을 개발하다 보면 리스트뷰를 쓰는 경우가 많습니다. 웹이든 모바일이든 주로 사용자가 원하는 기능은 게시판형이 가장 많은데 (게시판만..

[Android] ListView에 ArrayAdapter 적용하기

안드로이드 어플을 개발하다 보면 리스트뷰를 쓰는 경우가 많습니다. 웹이든 모바일이든 주로 사용자가 원하는 기능은 게시판형이 가장 많은데 (게시판만 개인화 잘해놔도 활용이 어마어마합니다.) 웹 화면의 경우 PC의 가로화면이 특화되어 테이블 형태가 주를 이루었습니다. 모바일 환경으로 넘어오면서 기존의 PC세대의 사용들은 테이블 형태의 게시글을 원하는 경우가 많은데, 실제로 핸드폰은 세로모드이기 때문에 사용자가 원하는 요구를 만족하지 못하는 경우가 많습니다. 서두가 좀 길었는데, 이런 게시글의 목록을 보여주기 위해서는 ListView를 활용하는 경우가 많습니다. (물론 최근엔 좀 더 기능이 풍부한 PagerViewer를 활용하기도 합니다) 이번 시간에는 이를 가장 간단하게 사용해 보도록 하겠습니다. @Over..

[Android] Shape를 다중으로 사용하기

2020/07/23 - [개발 창고/안드로이드 개발] - [Android] round box 만들기 [Android] round box 만들기 가끔 버튼을 만들다보면 리스트나 특정 박스를 만들어 내부에 정보를 표기하고 싶은 경우가 생기곤 합니다. 이미지를 통한 라운드 박스의 경우 고정 크기 아니면 이미지가 깨지는 단점이 있기�� royzero.tistory.com 일반적으로 이전 게시글에서 이야기한 것과 같이 shape를 단일로 호출해주면 도형을 적용할 수 있습니다. 그런데, 이용하다 보면 한가지 제약사항이 발생하곤 하는데, 그건 바로 한쪽만 선을 그어주고 싶은 경우입니다. 보통 활용 예시는 다음과 같습니다. 1. 입력창을 개인화 하는경우 2. 제목과 내용을 분리하는 바를 넣고 싶은 경우 3. 제목과 같..

반응형