반응형 분류 전체보기338 [GitHub] 깃허브로 토이 프로젝트 시작하기 토이 프로젝트를 시작하기 전에... 깃허브에서 commit, push 기능만 사용하고 계시진 않나요? 토이 프로젝트를 진행하면서 이용하면 너무 좋을 것 같은 기능들을 소개하기 위해 글을 작성하게 되었습니다😄 GitHub에서 제공해주는 기능들을 이용하였기 때문에 특정 언어에 종속되지 않고 어떤 언어로 사용하는 프로젝트든 이용 가능합니다. 목차는 아래와 같습니다. Main - 프로젝트 소개하기 About README.md Issues - 할 일 정리하기 Pull Requests - 코드 리뷰 문화 도입하기 Discussions - 프로젝트 전용 커뮤니티 만들기 Projects - 편리하게 일정 관리하기 1. Main 예제 링크 - 우테코 학습 기록용 레포 About 프로젝트에 대한 부가 설명 추가 오른쪽의 .. 2022. 7. 9. 모든 요구사항을 한 엔드포인트로 처리하는 방법 🤔 서론 Java와 Spring으로 줍줍이라는 서비스를 개발하고 있다. 메시지 전송, 프로필 변경 같은 여러가지 슬랙 이벤트를 한 엔드포인트로만 관리해야 하는 상황이 발생했다. Front Controller? Handler Mapping? 뭘 사용해야 로직을 분기할 수 있지? 몇 개의 키워드만 주워듣고 팀원들 각자 해결할 방법을 생각해오기로 했다. 😂 상황 설명 "/test"라는 URL을 POST 메서드로 보내면 Controller의 testApi 메서드가 호출된다. HTTP Message Body에 담긴 데이터 중에 "type"이라는 값에 따라 실행해야 하는 로직이 다르다. @RestController @RequestMapping("/test") public class TestController { p.. 2022. 7. 8. .properties vs .yml 🤔 서론 나는 설정 파일을 application.properties만 써봤다. 필요하다면 application-prod.properties나 application-dev.properties 등을 추가로 만들었을 뿐 큰 변화가 없었다. 헌데 최근 들어 설정 파일을 yml 타입으로 사용하는 사람들이 보이기 시작했다. properties랑 yml이 어떤 차이가 있을지 왜 yml을 선호하는 건지 궁금해서 찾아보게 되었다. 📑 .properties 예제 spring.datasource.url=jdbc:log4jdbc:mariadb://localhost:3306/test spring.datasource.hikari.username=sa spring.datasource.hikari.password= # 리스트 my... 2022. 7. 5. [DB] group function 에러 ORA-00934: 그룹 함수는 허가되지 않았습니다 ORA-00934: group function is not allowed here MySQL Error 1111: Invalid use of group function ❓ 원인 그룹 함수가 허용되지 않는 위치에서 그룹 함수 사용 그룹 함수란? 👉 컬럼 값들을 특정 기준에 따라 그룹화하고 그룹별로 결과를 반환하는 함수 ex: COUNT, SUM, MAX, MIN, AVG, .... 예제 WHERE, GROUP BY 등에서 그룹 함수 사용하면 에러 발생 SELECT i.* FROM items i, buy b WHERE i.quantity > COUNT(b.id); 💡 해결 그룹 함수를 사용 가능한 위치에서 사용하도록 쿼리 개선 (서브 쿼리 이용) SELEC.. 2022. 7. 3. [1% 네트워크] chapter 1. 웹 브라우저가 메시지를 만든다. 이 글은 '성공과 실패를 결정하는 1%의 네트워크 원리'를 읽고 정리하는 글입니다. 웹 브라우저가 메시지를 웹 서버에 전송하기까지의 과정을 읽고 전체 글을 읽으면 좋을 것 같다. HTTP Request Message 작성 웹 서버의 IP 주소를 DNS 서버에서 조회 프로토콜 스택에 메시지 송신 의뢰 📕 1. HTTP Request Message 작성 📕 📑 1-1. 브라우저에서 URL 입력 브라우저 : 여러 클라이언트 기능을 겸한 복합적인 클라이언트 소프트웨어 ex: 웹 서버에 액세스하는 클라이언트, 파일 다운/업로드하는 FTP의 클라이언트, 메일의 클라이언트, ... 어떤 클라이언트를 사용하는지는 URL에서 알려줌 URL = Uniform Resource Locator http, ftp, mailto .. 2022. 7. 2. [우테코] 레벨2 인터뷰 우아한테크코스에서 진행되는 레벨로그의 경험을 기록한 글입니다. 목차 1. 레벨 로그 2. 피드백 📚 레벨 로그 제출한 레벨 로그를 바탕으로 좀 더 디테일하게 풀어냈다. JDBC 과거 DB마다 다른 연결 방법이 달라 어려움을 겪던 개발자들을 위해 등장 JDBC 기능 Connection: 연결 Statement: SQL을 담은 내용 ResultSet: SQL 요청 응답 JDBC를 구현한 것이 JDBC 드라이버 (각 DB 사에서 제공) 일반적으로 자주 사용하는 부분만 공통화 -> 한계 -> SQL Mapper와 ORM 등장 SQL Mapper ex: Spring의 JdbcTemplate JDBC 사용으로 인한 반복되는 코드 제거 SQL 응답 결과를 편하게 객체로 변환 SQL 수동 작성 ORM; Object R.. 2022. 6. 30. No newline at end of file 에러 No newline at end of file 에러 자동 줄맞춤 기능만 믿고 커밋하다가 위 문구와 마주치게 되었다😅 클래스의 마지막 라인은 줄바꿈 해주는 것이 컨벤션이라고 알고 있기는 했는데 에러(?)가 발생하는 줄은 몰랐다. 컴파일 하는데는 아무 지장 없지만 너무 거슬려서 원인을 찾아보았다. 에러 원인 파일의 끝에 줄바꿈('\n', aka CR, CRLF, ...)이 없음 C, C++ 헤더 파일 등에서는 언어 표준 자체에서 요구 UNIX에서 시작된 관습 (예전 도구와의 호환성을 위해 유지) 줄 바꿈이 있는 파일과 줄 바꿈이 없는 파일의 차이를 구분할 수 없음 (아래 예제 참고) 예를 들어 아래와 같은 test.txt 파일이 있다고 가정하자 yeonlog 아래 명령어를 통해 test.txt를 두 번 보려.. 2022. 6. 26. [Java] java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 에러 java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 에러 🤔 상황 Java 8에서 Java 11로 버전 업그레이드 😱 원인 Java 8 -> Java 9 버전업 시 해당 모듈이 제거됨 Java SE 9: JAXB API를 Java EE API로 간주해 기본 클래스 경로에 포함하지 않음 Java 11: JAXV API를 JDK에서 아예 제거 🔻 Java EE란? 더보기 Java EE: Java Enterprise Edtion = 엔터프라이즈 에디션 자바 플랫폼 Java SE: Java Standard Edition = 표준 에디션의 자바 플랫폼 더 자세한 설명 👉 IBM 링크 💡 해결 Maven javax.xml.bind jaxb-api 2.3... 2022. 6. 20. [IntelliJ] 편하게 디버깅하기 😊 서론 원래는 System.out.println()을 찍어가며 디버깅을 했었다. 좋지 않은 습관임은 알았지만 다른 공부할게 너무 많아서 우선순위가 뒤로 밀려났다. 이전 미션에서 페어 프로그래밍을 진행하며 페어인 호호가 몇 가지 팁을 가르쳐줬는데 그렇게 편할수가 없었다. 나같은 디버깅 초보자들을 위해 IntelliJ의 디버깅 기능을 소개해보려고 한다.🤭 현재 작성자는 Windows 사용자 입니다. Mac의 단축키가 불일치하는 경우 댓글로 알려주시면 감사합니다 ~ 이 글은 IntelliJ 2021.2.3 버전을 기준으로 작성하였습니다. 🤗 유용한 단축키 👉 파일 검색 Windows: ctrl + shift + N Mac: ⌘ + ⇧ + O 👉 코드 검색 Windows: ctrl + shift + F Mac.. 2022. 6. 18. 이전 1 ··· 9 10 11 12 13 14 15 ··· 38 다음 반응형