본문 바로가기

전체글

(354)
Retrofit - 구글 Glide 이미지 로더 Picasso 대신 Glide 사용하기 https://github.com/bumptech/glide bumptech/glide An image loading and caching library for Android focused on smooth scrolling - bumptech/glide github.com Glide는 구글에서 만든 이미지 로더 라이브러리이다. Glide의 with는 Picasso와는 다르게 Context뿐 아니라 Activity와 Fragment도 인자로 사용할 수 있는 장점이 있다. ​ 1. 이미지 용량 그리고 Glide는 기본적으로 Picasso보다 메모리 용량을 적게 차지 한다. 그 이유는 이미지를 다운로드할 때 작은 이미지 사이즈로 변환해주기 때문이다. 그래서 원본에 이미..
안드로이드 gradle, 버전 정보 확인 사이트 버전 정보 확인하기 https://search.maven.org/ Maven Central Repository Search search.maven.org 피카소 implementation 'com.squareup.picasso:picasso:2.71828' retrofit implementation 'com.squareup.retrofit2:retrofit:2.1.0' implementation group: 'com.squareup.retrofit2', name: 'converter-gson', version: '2.1.0'
Retrofit - 피카소 이미지 로드 https://github.com/Moonseonhyeon/android-Picasso/commits/master 1. 이미지 주소가 http, https (안드로이드 9.0부터 보안 -> http) -> 보안 규칙을 해제 (매니페스트) http://www.topstarnews.net/news/photo/201803/380832_25485_2752.jpg 2. 통신 통신을 할 수 있는 권한 (INTERNET권한) (매니페스트) 3. 통신을 하기 때문에 시간!! - UI쓰레드(X) => 새로운 쓰레드 생성(o) 쓰레드로 작동해야 한다. 4. 라이브러리 Glide (이미지 통신) Picasso Universial Image https://square.github.io/picasso/ Picasso Intro..
Android - Retrofit https://square.github.io/retrofit/ Retrofit 쓰레드 돌리고 콜백도 해주고 오브젝트도 만들어 준다. rest template 버전은 낮춰봐야한다. 최신 꺼 쓰지말고 gson 어노테이션 @SerialzedName JSON으로 serialize 될 때 매칭되는 이름을 명시하는 목적으로 사용되는 field 마킹 어노테이션이다. @Expose object 중 해당 값이 null일 경우, json으로 만들 필드를 자동 생략해 준다. 예를들어, @SerializedName("index_name") @Expose private String indexName; 이라고 하면, index_name과 indexName을 서로 매칭시켜 주고, 만약 indexName이 null이라면 생략한다. ..
ConstraintLayout 체인 첫번째 버튼 우클릭
Android - 핸들러 thread / runOnUIThread(); handler.post(new Runnable(){ 이거 보다 Task말고 Retrofit 배울 예정 Thread https://recipes4dev.tistory.com/m/143 핸들러 473page ~ 484page Thread 3가지 main thread (=UI thread) handler thread event thread 안드로이드는 main thread로 onCreate가 끝나야 그림을 그립니다. 이 일을 담당하고 있는 쓰레드가 main thread=ui thread 가 하고 있다. 예를 들어 새로운 쓰레드로 다운(I/O)을 받거나 한 후 그 걸 직접적으로 UI thread에 접근해서 그린다고 방해..오류! 그러지말고 핸들러 쓰레드에 접근하면 된다! 모든 쓰레드는 main쓰레드에 접근해서 그림 그리고 싶으면 이벤트 핸들러에 등록하면 된다. 그럼 차례대로 해준다. 언제 쓰레드 끝나고! 아래와..
MySQL 한글설정 윈도우와 리눅스가 달라요!! mysql에 아래와 같이 적어주세요! show variables like 'c%'; 1. 윈도우 (1) my.ini 파일 찾기 C:\ProgramData\MySQL\MySQL Server 5.7 (2) 관리자 권한으로 my.ini 파일 열어서 수정하기 [client]] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] collation-server = utf8_unicode_ci init-connect='SET NAMES utf8' init_connect='SET collation_connection = utf8_general_ci' character-set-server=utf8 (3) mysql 재..
게시글 보기, 상세글 보기, 수정, 삭제 버튼(권한 있어야함. 없으면 Exception 던짐) 게시글 보기 index.jsp 타이틀을 누르면 해당글의 상세보기로 간다. PostController.java 컨트롤러에 상세보기 누를때 id값으로 이동하게 한다. 이때 model을 이용하면 view까지 dto를 들고 갈 수 있음. PostDetailRespDto 모델명+하는일+리퀘스트or리스펀스+Dto dto는 컨트롤러 패키지안에서 만든다. model도 아니고 데이터를 왔다갔다 하기때문에 더보기 안드로이드는 PostApiController로 만들고 /v1/posts/로 짠다 만약 v2 넘어가더라도 v1은 남겨뒀다가 나중에 완벽해지면 삭제를 한다. PostService.java 서비스의 함수 이름은 가독성 때문에 매우 중요하다. post.xml Controller에 API 글 상세보기는 Post하나의 테이..