Total

Salesforce/지식창고

[Salesforce] 작지만 소중한 꿀팁들

Salesforce 파트너사에 취업하고1년 조금 안되는 시간이 흘렀습니다! 트레일헤드를 봤다 하더라도실무를 경험해보면 확실히 많은 걸 배우게 되더라고요! 원래 노션에 야금야금 정리해두었는데블로그에 보기 쉽게 정리할 겸Salesforce 관련 한국 블로그는 많지 않기에 정보 공유도 할 겸지금까지 배운 꿀팁들을 정리해보려 합니다! 앞으로는 한 포스팅 글에 다 정리해두는 것이 아닌회고록처럼 매일 혹은 주기적으로 올릴 예정입니다 :) 1. 인터페이스하며 마주하는 이런 저런 에러들과 해결 방법들System.CalloutException: You have uncommitted work pending. Please commit or rollback before calling out"인터페이스를 다른 메소드에서 호출하..

Diary

지금 저는 이렇게 지내요 (취업 성공!)

엄청 오랜만에 블로그 글을 작성하는 거 같아요 취업하고나서 회사 적응하고 매일 출퇴근하다보니 정신없어서 잊고 있었어요 제가 작성한 글들을 다시 읽다보니 취준하며 열정적이던 때가 생각나고 좋네염ㅎㅎ 글 제목에서처럼 저는 취업을 했습니다! 원래 계획에 있던 Java 백엔드 개발자가 아닌 Salesforce 파트너사에서 근무를 하고 있어요 :) Salesforce가 생소한 당신에게! 살짝 설명 들어갑니다~ 일단 Salesforce는 미국 회사에요! Apex라는 자체 언어를 사용해서 고객 유입부터 주문, 사후 처리까지에 데이터 및 관리를 하는 CRM보다 좀 더 폭 넓은 게 Saleforce랍니다. 백엔드개발자 vs 세일즈포스 개발자 각각 장단점이 있지만 세일즈포스 개발자를 하는 사람이 드문 만큼 오히려 더 경쟁..

JAVA

[JAVA] JDBC, JPA, Spring Data JPA 차이 그리고 Hibernate와 ORM

Spring을 인강을 통해서 배웠기에 무지성으로 Spring Data JPA를 사용했어요.강의에서도 JDBC를 다루긴 했지만 차이에 대해서는 명확히 다루질 않았기에JPA에 어떠한 점이 JDBC보다 좋은지그리고 JPA와 Spring Data JPA는 무슨 차이가 있는지한번 알아보려 합니다! 0. 그림으로 한 눈에 확인하기 1. JDBCJava Database ConnectivityJDBC는 인터페이스라고 생각하면 된다.DBMS 종류에 무관하게 DB 관련 코드를 작성할 수 있게 도와주는 자바 표준 인터페이스이다. JDBC로 데이터를 삽입하는 코드의 예시이다.출처) [10분 테크톡] 올레의 JPA와 JDBCpublic class ChessBoardDAO{ private Connection connecti..

Computer Science (CS)/CS

CSR VS SSR

개인 프로젝트에서 Controller 반환값을페이지 반환에서 JSON 반환으로 바꾸면서그럼 페이지 반환은 어떻게 해줘야 할까 고민이 생겼어요😥 ViewResolver, ModelAndView, ResponseEntity에 대한 개념을 확립하고ResponseEntity와 ModelAndView를 함께 사용하려 했는데이게 맞는지 확신이 안들었어요 더 알아보다보니 CSR과 SSR 방식에 대해 알게 되었고이참에 확실히 개념을 정리하고 싶어 포스팅하게 되었습니다 :) CSR 방식Client Side Rendering초기 로드 시 빈 HTML과 모든 로직이 담겨있는 Javascript를 다운로드한다.그 후 빈 HTML에 Javascript를 이용하여 Dom을 동적으로 생성하여 그려낸다.위와 같이 클라이언트에서 렌..

JAVA

[Spring Security] 일반 로그인과 소셜 로그인 (oauth2) 그리고 JWT

완성된 프로젝트를 돌아보면 든 생각이 있어요.구현은 했는데.. 내가 다 이해하고 사용한게 맞나?그래서 주요 개념들에 대해 학습하고그 내용들을 포스팅하며 정리하는 시간을 가지려 해요.정리 후에는 리팩토링하는 시간도 가지고요! 첫 번째 공부 주제는 로그인입니다!로그인은 사용자의 주요 정보를 다루는 기능이기 때문에보안이 굉장히 중요해요. spring에서는 보안이 튼튼한 로그인 구현을 위해여러 가지 기능들을 제공합니다. 한번 살펴볼까요?  1. 인증과 인가먼저 인증(Authentication)가 인가(Authorization)에 대해서 알고 넘어가야 한다. 1) 인증사용자의 신원을 확인하는 과정이 인증이다.비행기 티켓을 구매하려면 여권을 보여줘야 하는 것처럼 어떠한 사이트에 접속하기 위해서는 아이디와 패스워트를..

JAVA

[Spring 외부 API 호출] RestTemplate, WebFlux (WebClient) 그리고 WebSocket

개인 프로젝트를 진행하면서 Flask 서버와 Spring 서버가 통신해야했어요즉, 외부 API와 소통해야했습니다! 어떻게 코드를 작성해야할지 전혀 감이 잡히지 않아서많은 삽질을 한 결과 연결을 성공했습니다!🤩 그 과정에서 알게 된 여러 통신 방법들에 대해 정리하면서어떤 상황에서 어떤 통신 방법을 사용해야 하는지 작성해서또 삽질하지 않으려 합니다ㅎㅎ  1) RestTemplateSpring 3부터 지원된다.REST API를 호출할 수 있는 내장 클래스이며 JSON, XML 응답을 모두 받을 수 있다. Spring 5부터는 WebClient가 도입되어 WebClient 사용을 강력 권고하고 있다.Blocking VS Non-BlockingBlocking : 호출되는 함수가 호출하는 함수에게 제어권을 넘기지..

JAVA

[Spring Boot] 최고의 프로젝트 구조는 무엇일까?

Spring Boot를 활용한 첫 프로젝트를 완성했습니다.아직 부족한 부분이 많지만 고치다 보면 완성이 계속 미뤄질 거 같더라고요😥추후 리팩토링을 위해 프로젝트를 다시 보며 든 궁금증이 생겼습니다. 어떠한 구조가 최고의 프로젝트 구조일까?controller, service, dto, dao, repository 등spring boot 프로젝트를 위해 필요한 요소들은 꽤 다양합니다.이 요소들에 대해 살펴보고 최고의 프로젝트 구조란 무엇일지포스팅해보려 합니다🤩 MVC 패턴을 전제로 합니다.잘못된 정보가 있다면 댓글로 꼭 알려주세요!   1. 필요한 요소들1) Entity (Domain)실제 DB 테이블과 매핑되는 요소이다.하나의 객체가 DB의 하나의 Column처럼 작용한다.// Entity 예시 코드@..

IDE

[Intellij] Spring Java 버전 변경할 때

기술이 나날이 발전하면서 사용하던 버전이 구식이 되면 버전을 변경해줘야 해요 아래 사이트가 너무너무 설명을 잘해주셔서 링크남깁니다! [IntelliJ] JAVA 버전 바꾸는 방법(JDK버전) 기존에 8버전을 쓰다가 11버전으로 변경해야 하는 프로젝트가 생겨서 기록해보는 "버전변경방법" 인텔리제이에서 6곳을 변경해주면 된다 (5곳 - 버전변경선택 / 1곳 - 원하는 JDK선택) Project Structure dev-emmababy.tistory.com

JAVA

[JAVA] Selenium으로 구글 로그인 자동화 만들기

구글 로그인을 자동화시키기 위해 접근하면 보안상 구글은 자동화를 막아요ㅠPython의 경우 undetected_chromedriver 기능을 제공하지만 JAVA는 없습니다..검색을 해봐도 Python보다는 정보가 적어서 포스팅하게 됐습니다!마지막의 최종 코드를 첨부해두었으니 급하신 분들은 제일 아래로 내려가주세요!   1. 크롬 디버깅 모드보통은 아래 코드로 원하는 페이지에 접속하실 거에요. 적용 이전 코드@SpringBootApplicationpublic class SeleniumApplication { public static void main(String[] args) { SpringApplication.run(SeleniumApplication.class, args).getBea..

Computer Science (CS)/알고리즘

[백준/Java] 1018번 체스판 다시 칠하기

문제 정답 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int N; static int M; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); N = Integer.parseInt(st..

eune7
'분류 전체보기' 카테고리의 글 목록 (5 Page)