본문 바로가기

분류 전체보기

(101)
[Spring Boot] 스프링 스터디 4일차 # 과제 - JPA 기술 ORM: 객체를 관계형 데이터베이스와 매핑함. => Annotation을 활용, @Entity # 스터디 연관어: Hibernate, 다형성, interface, 정보 숨김 Java Application; Spring Boot, Spring Data JPA? JPA(interface. EntityManager em를 이용해 interface 구현) JDBC, Hibernate, ... (구현체; 어떻게 구현되든 JPA interface를 구현만 하면됨. void excute()-데이터베이스 연결 ) => JDBC, Hibernate, ... 등 종류에 따라 Spring Boot의 코드가 변경되어야함. 따라서 JPA 도입하여 어떤 동작을 할지 알리고, JDBC, Hibernate,..
[소프트웨어공학] Android Studio 이슈 #3 키워드: 비동기 함수, 콜백 와우.. 드디어 비동기 함수에 대해 이해를 했다. 역시 사람은 대가리 박으면서 해봐야 정신을 차린다. ExecutorService service = Executors.newSingleThreadExecutor();=> 하나의 쓰레드를 사용하여 동기적으로 처리하게 한다. 하지만, 결국 쓰레드 사용하기 어려워서 다른 방법 사용함.- AsyncTaskpublic class CalendarAsync extends AsyncTask{ @Override protected Void doInBackground(Void... voids) { stringDateList = new HashSet(42); databaseReferen..
[소프트웨어공학] Android Studio 이슈 #2 어댑터에 대한 이해! onBindViewHolder에서 데이터의 바인딩이 일어난다.-> 이때 제대로된 데이터베이스의 값을 가지지 못한다.=> 쓰레드 속도가 지멋대로임. 클래스 생성하여 함수를 실행하여 데이터를 읽는 것은 holder에 뷰가 바인딩되는 것보다 한참 느림. 이 함수로 데이터를 판별하려 하였으나 어댑터가 뷰를 바인딩하는 속도를 못 따라옴!public boolean isExist(){ try { databaseReference.child("TodoCell").child(currentUser).addValueEventListener(new ValueEventListener() { @Override public v..
[백준] S17086 https://www.acmicpc.net/problem/17086 17086번: 아기 상어 2 첫째 줄에 공간의 크기 N과 M(2 ≤ N, M ≤ 50)이 주어진다. 둘째 줄부터 N개의 줄에 공간의 상태가 주어지며, 0은 빈 칸, 1은 아기 상어가 있는 칸이다. 빈 칸과 상어의 수가 각각 한 개 이상인 입력만 www.acmicpc.net # 아이디어 1. N*M 크기의 map에서의 모든 자리에서 검색을 한번씩 한다. 2. 각 자리에서 가장 가까운 상어를 찾는다. 3. 각 자리에서 가장 가까운 상어와의 거리를 안전거리의 최댓값으로 저장한다. 4. N*M번 반복하는 검색을 하며 안전거리의 최댓값을 비교하며 업데이트 한다. # 오답 처음에는 bfs로 하려다가 2차원 배열로 구성된 map을 어떻게 검색해야 할..
[Spring Boot] 스프링 스터디 3일차 DB의 값을 자바에서 객체로 처리하기 위해 Domain을 사용함. 데이터베이스로부터 값을 읽어와서 자바에서 Domain의 하나의 클래스로 정의내린 후 값이 변화하면 안 됨. 주요 3계층: Controller, Service, DAO 주요 3계층간에 움직일 때, 보안성이 있고 일부의 데이터만 가지는 DTO를 사용함. 패러다임과 속성이 약간 다른 것들 Controller, Service, DAO: 자바에서 값을 다룸...? DTO, Domain: 데이터베이스의 값을 다룸...? 데이터베이스: 테이블 사용 Spring: Domain 사용 💯💯💯 과제 해결 중 이해한 것 사용자 -> Controller -> 데이터베이스 dto로 입력 ↓↑ @Entity를 활용하여 domain으로 변환 Dto 스프링에서 정의된 ..
[백준] S2606 https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net # 아이디어 간선의 정보를 2차원 배열에 저장하고 visited라는 1차원 배열을 통해 정점을 지났는지 아닌지 판별하여 dfs 탐색한다. 이를 통해, 네트워크 망이 연결된 컴퓨터를 찾을 수 있음!!! 이전에 풀었던 dfs와 bfs 문제와 아주 유사함!! 이번에는 정말로 코드를 다 이해한듯?? 블로그 안 보고 품 😎 # 오답 Sol 1. cnt의 값이 -1로 출력됨. package baekjoon; im..
[소프트웨어공학] Android Studio 이슈 #1 뷰의 Context는 ViewGroup이 하나만 존재하는 것처럼 하나만 존재함???Toast.makeText(rootView.getContext(), clickedDate, Toast.LENGTH_SHORT).show(); //리사이클러뷰 설정하는 법recyclerView_todo = dialog.findViewById(R.id.recyclerView_todo);recyclerView_todo.setHasFixedSize(true); //성능 강화linearLayoutManager = new LinearLayoutManager(getContext(), LinearLayoutManager.VERTICAL, false);recyclerView_todo.setLayoutManager(linearLayou..
[Spring Boot] 스프링 스터디 2일차 - 웹 어플리케이션 5계층에 대한 이해 Controller: 사용자로부터 Get요청을 받음. Service: transaction 처리, 비즈니스 로직 처리 DAO: 서버에 접근 Domain: 데이터베이스에서 객체 형태로 Spring에서 다루기 위한 데이터 타입 클래스. DTO: 보안 및 불필요한 내용 제외하고 필요한 내용만 다루는 곳. Spring Boot의 자바 상에서 Annotation 사용(Domain - 불변의 법칙: 생성자로 한번 Domain이 생성되면 이후에 바뀔 일이 없음) : 기본생성자 private 선언, setter 사용 X, getter는 꼭 필요할 때만 필드 단위로 사용 데이터베이스상의 필드: user_name, Spring에서 사용하는 필드: name @Column(name = ..