본문 바로가기
728x90

분류 전체보기654

여수, 순천(23.08.26. - 23.08.28) 남원을 거쳐 여수로 가게됐다. 남원은 시골이라 교통이 썩 좋진 않은 편 남원ktx역 남원공용터미널역 사이는 버스로 13분만 타면 되지만 버스가 언제올지 모른다. 운이 나쁘면 택시를 타고 가야할수도. 제일 먼저 간 곳은 이순신광장. 여수에 놀러왔다면 모두가 가는 곳일 듯. 의외로 광장이 크진 않다. 유명하다는 여수당 아이스크림. 줄을 길게 서있지만 대부분 아이스크림만 사가기때문에 줄이 빨리 줄어들어 금방 사먹을 수 있다. 놀러왔으니 줄도 서서 사먹어보고 좋은경험이지만 크게 특별하진 않은편 이순신광장 근처는 볼거리는 없는것같음.. 광장 중앙에 동상 하나 세워진것이 다다. 주변에 음식점, 카페, 간식가게가 많았다 광장 중앙부는 간식가게가 많다. 대부분 간식가게들은 이런것들을 판다: 쑥아이스크림, 바게트버거, .. 2023. 8. 29.
대구 프라이탁 세컨드 프로젝트 외 2 대구에 단 하나뿐인 프라이탁 판매점 세컨드 프로젝트 경대병원역에서 걸어서 7분정도면 도착한다. 평일은 예약 없이 입장 가능했다. 나는 수요일 오후3시쯤 방문했는데 매장에 손님이 아무도 없어서 편하게 볼 수 있었다. 들어가면 프라이탁 제품들이 좍 보인다 파우치, 악세사리류는 책상 서랍을 열어보면 여러 제품들을 볼 수 있다. 나는 나름 무난하면서도 프라이탁 느낌이 나는 무늬였으면 했는데... 이 무늬가 제일 예뻐서 이걸로 결정했다. 지갑,파우치는 종류가 많아서 취향껏 고르면 될 것 같다. 개인적으로 장지갑, 반지갑 형태는 프라이탁이랑 잘 안어울리는거같아서 안 했다. 가방류는 영 마음에드는것이 없어서 블레어 하나랑 키링 구매. 동전지갑 작년만해도 44000원이었던것같은데 왜 58000원이나 됐는지 이해가 안되.. 2023. 8. 23.
첫 해커톤 참석 동아리에서 해커톤을 한다고 해서 서울로 갔다. 서울도착 널찍널찍하고 건물들이 거대한게 마치 도쿄에 온 것 같음 사당역. 갑자기 스크린도어는 열려있고 앞에 열차는 없고 낭떠러지가.... 서울은 무서운 동네구나 강남역. (서울은 어딜가나 번화해있어서 어디가 어딘지 잘 모르겠다) 초밥 런치세트가 8500원? 초밥집가면 젤 저렴한거 시켜도 12000원은 넘는데 어떻게 이 가격을 구현했을까 맛은? 개인적으로는 맛있게 먹었다. 행사장소 도착 사실 행사이름만 해커톤이지 가서 밤새면서 코드짜는게 아니라 다 만들어놓은거 가져와서 제출하고 행사장에서는 친목다지는 느낌이 강했다. 요런 자잘한 선물같은것들도 주심. 그와중에 우리팀은 아직 프로젝트 미완성이라서 가서 뼈빠지게 수정하고 배포해야했다. (프론트엔드분들이 많이 고생했.. 2023. 8. 21.
대구 여행, 반월당 닭강정 8월 17일 팀프로젝트 회의가 있어 시내에 간 날 지하철역에 있는 반월당 닭강정 사실 평생 대구에 살면서 반월당 닭강정을 사먹어 본 적은 없었다. 이 날은 내가 혼자 대구여행 왔다고 생각하면서 돌아다녔는데 (최근 여행을 많이 다녀왔는데 이것저것 많이 사먹으면서 다니는게 행복했었다. 그래도 매번 여행을 갈 순 없으니, 여행간다는 마음가짐만 가지고 폰여행을 시작했다) 대구 여행왔는데 반월당닭강정 한번 먹어봐야지 하고 들어갔다. 싱글컵 4000원 양이 적어보일수도 있지만 그릇이 오목해서 안에 많이 들어있다. 떡은 서비스로 주셨다. (타지사람인줄 알고 멀리서오느라 고생했다면서 날씨가 많이 덥지않냐고 그러셨다) 맛은? 솔직히 튀김인지 잘 가늠이 안갈정도로 눅눅해서 닭강정보다는 찐득한 지코바치킨 먹는것 같았다. 반.. 2023. 8. 21.
광복절 추억여행 8월15일 광복절 8월은 방학이라 빨간날도 별 감흥이 없어서 광복절도 생각없이 스쳐지나갈 뻔 했다. 아침에 헬스장을 가려고 집을 나왔다가 몇몇 집이 태극기를 게양한것을 보고서 광복절을 실감했다. 내가 초등학생일 때는 집집마다 태극기를 다 달았던것 같은데 요즘은 좀 적어진 것 같다. 초등학교 6학년 때 학교에서 태극기 그리기 대회를 했었다. 거기서 우수상을 받았었는데 광복절 기념으로 그 상장을 찾아보고 싶었다. 근데 상장은 못 찾고 다른거만 찾았다. 유치원에서 받은 으뜸 배려상 다시 만날 때 까지 안녕 장점: 누나는 쿠니주고 동환이는 누나에게 6000원 주기 학원에서 사용하는 쿠니라는 화폐가 있어서 이걸로 연말파티때 떡볶이같은걸 사먹을 수 있었는데 작은누나가 쿠니를 현금으로 바꿔달라해서 내가 바꿔줬던것 같.. 2023. 8. 21.
ngrok CORS 해결하기 ngrok으로 팀원들과 api 테스트를 해보는데, CORS 에러가 발생했다. @Configuration @EnableWebMvc public class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOriginPatterns("*") .allowedMethods("GET", "POST", "PUT", "DELETE") .allowedHeaders("*") .allowCredentials(true) .maxAge(3600); } } 백엔드에서 CORS를 모두 허용했음에도 불구하고 CORS에러가 여전히 나타났.. 2023. 8. 17.
ngrok: 로컬 서버를 인터넷에 공개하기 Springboot 프로젝트를 만들고 있는데, 프론트엔드 팀원이 api 테스트를 해보고싶다고 하는 상황이다. 하지만 아직 클라우드 서버는 준비가 되지 않았고, 팀원이 Springboot 프로젝트를 내려받아서 실행시키기는 시간이 오래 걸릴 것 같다. 이런 상황에서 ngrok을 활용하여 내 로컬 서버를 인터넷에 공개하고, 팀원들은 공개된 내 로컬서버에 접근하여 테스트를 할 수 있도록 했다.(ngrok은 외부에서 내 로컬 서버에 접근할 수 있는 퍼블릭 URL을 제공하는 도구이다) ngrok 사용 방법 1. 회원가입 https://ngrok.com/ ngrok How it Works ngrok delivers instant ingress to your apps in any cloud, private networ.. 2023. 8. 15.
황폐한 뿌리, 아보카도의 비극 최근 들어 영 자라지 않고 잎 끝부터 타들어가던 아보카도 무엇이 문제일까 유심히 지켜봤다 물을 자주 안 갈아줬더니 뿌리 잔해 같은 부유물이 떠다니고 물이 좀 탁해진 것 같았다. 근데..... 뿌리 잔해같은 부유물이.... 자꾸 위아래로 흔들리는 것이다. 난 화분을 건드리지 않았는데... 장구벌레였다. 5급 썩은물에 산다는 장구벌레가 내 화분에 산다는 것이 충격적이었다. 바로 들고나가서 물 다 버리고 깨끗한 물로 헹궜다. 자세히 보니 뿌리도 절반이상 썩어버렸길래 다 뜯어버렸다 얼마 전 흙 화분에서는 버섯이 자라더니 이번엔 장구벌레 난리다 관리 제때 안 해준 내 잘못이지만 이젠 더 이상 식물이든 뭐든 안 키우고 싶다 2023. 8. 11.
뚜레주루에서 빵을 산 날 오늘은 뭐랄까 좀 신기한 하루였다. 10시 30분쯤에 일어났었던것 같다. 왜이렇게 늦게 일어났냐면 난 선풍기를 항상 120분 예약으로 틀어놓는데(계속 틀어놓으면 감기걸릴까봐) 선풍기가 꺼질때마다 더워서 깨고 선풍기 120분 예약 걸어놓고 또 선풍기 꺼지면 깨고... 반복하면서 잠을 많이 설쳤기 때문에 너무 피곤해서 더 잤다. 그러고선 일어나자마자 뜬금없이 고깃집에 가서 점심특선으로 돼지갈비를 구워먹었다. 그리고 운동을 하고 집에 왔는데 집앞에 뚜레주루가 오픈했다는 전단지가 붙어있었다 근데 좀 의아했다 집앞 뚜레주르는 내기억상으로 10년전부터 쭉 있었고 문 닫은적이 없었다. 맨날 지나치며 보는 뚜레주루인데 오픈기념으로 할인한다는 전단지를 보고 이게뭐지 한참을 생각했다 아직도 왜그런진 모르겠다. 그리고 스터.. 2023. 8. 9.
칠보산 자연휴양림 (23.08.04. - 23.08.06) 소떡소떡 먹으며 출발 대구에서 무려 2시간넘게 걸린다 산을 계속 구비구비 올라감 도로폭도 좁고 커브구간에서 맞은편에 차가 올까봐 무서웠다 아주 산 중턱에 있어 나무들이 우거짐 숙소는 이런 느낌 근데 원룸이다. 거실 하나에 화장실 하나가 끝 벌레도 참 많았는데 예쁜 나비도 있었다. 이런 나비 얼마만에 보는거지? 이렇게 알록달록 예쁜 나비는 살면서 처음 본 것 같다. 귀여운 고양이가 있었는데 뽀송뽀송하고 사람을 안무서워하더라 먼저 다가와서 머리를 비벼댔다. 저 멀리 바다가 보인다 속 시원한 경치 바베큐도 해먹었다 고기는 초지일밋에서 파는 송아지고기 티본스테이크 송아지고기라 그런가 부드러운 맛이 있다. 조카들이랑 마시멜로 도원결의. (이후 숯불에 구워먹음) 다음날 해수욕장에 갔다 애들 놀기 좋을정도로 얕은데 .. 2023. 8. 7.
부산 (23.08.02. - 23.08.03) 부산에 살고있는 J군. 최근 일본여행을 가려다가 배를 놓쳐 여행을 취소하게 되었다는데. 그 여파로 정신병이 온 듯해서 구경하러 갔다. 동대구역에 도착. 동대구역하면 떠오르는 생각 나는 군생활을 대구에서 했는데 간간히 수도권에 살던 친구들도 있었다. 나는 대구가 낯선 친구한테 동대구역 진짜 크다고 자랑하듯 말했다. (동대구역에 붙어있는 신세계백화점 포함하면 전국에서 가장 큰 역이라는 정보가 있었음) 별로 자랑거리가 아니란걸 말하고 나서 깨달았다. (별 얘긴 아님) 삼송빵집 가서 한우고로케 한개 먹었다. 맛있었고, 오븐에 구웠다는 사실은 몰랐었는데 먹으면서 보니 안 기름져서 좋았다. 부산역 도착 난 다이나믹 부산이 좋은데 부산이즈굿으로 바꿨구나 점심으로 장승진 스시 먹으러 옴 정말 오랜만에 보는 회전초밥집이.. 2023. 8. 7.
영천 치산관광지 (23.07.23. - 23.07.24.) 자연으로 구비구비 들어가야 한다 영천인데 왜 부산교회지 신기해서 찍었다. 카라반들이랑.. 뒤에는 집이 있음. 집은 이렇게 생겼다 2층 다락방은 천장이 너무 낮아서 앉아서 이동해야 한다. 옆에는 얕은 물가가 있다. 깊은곳은 골반까지 물이 차는데, 계곡이 좁고 물살이 세서 놀기에는 좀 아쉬운면이 있었다. 그리고 계곡이라 물이 차가운 편. 저녁에는 고기를 구워먹었다. 고기는 무려 송아지고기. 티본스테이크와 토마호크 스테이크. #초지일밋 맛있고 부드러우니 다들 한번씩 사먹어보길. 고기냄새 맡고 고양이가 왔다. 왜인지 자꾸 생닭모양으로 앉아있었다. 가서 뭘 했는지 기억이 잘 나진 않는데 나오기 직전 베트남컵라면을 먹었던 것이 사진으로 남아있다. 2023. 8. 7.
파일 업로드 구현하기 게시물 작성시 파일을 업로드할 수 있게 하고, 게시물 조회시 업로드한 파일을 보고, 다운로드받을 수 있도록 해보자. 1. 파일 업로드 화면 만들기 ... Upload save 게시물 작성 화면에 파일 업로드 input을 생성한다. ``` 2023. 7. 27.
네이버 검색 API를 이용하기 외부 API를 이용해보는 경험을 쌓고자 백과사전 검색기능을 프로젝트에 추가해보기로 했다. 네이버 검색(백과사전) API를 이용해서, 검색어를 입력하면 검색결과를 보여주도록 만들어보자. 사전 준비 https://developers.naver.com/docs/serviceapi/search/blog/blog.md#%EB%B8%94%EB%A1%9C%EA%B7%B8 검색 > 블로그 - Search API 검색 > 블로그 블로그 검색 개요 개요 검색 API와 블로그 검색 개요 검색 API는 네이버 검색 결과를 뉴스, 백과사전, 블로그, 쇼핑, 영화, 웹 문서, 전문정보, 지식iN, 책, 카페글 등 분야별로 볼 수 developers.naver.com 위 링크로 접속해서, API 이용방법을 숙지. (로그인 후 이용.. 2023. 7. 26.
검색 기능 적용하기 게시물을 제목으로 검색할 수 있는 기능을 만들어본다. (페이징 적용) 검색 기능 적용하기 1. Repository public interface ArticleRepository extends JpaRepository { ... Page findByTitleContaining(String keyword,Pageable pageable); } JpaRepository를 상속받는 레파지토리 인터페이스에, findBy{필드명}Containing({타입} 검색어) 형식으로 메소드를 작성한다. 나는 Article엔티티에 String타입의 title이 있고, 이 title을 이용해서 검색할것이기 때문에 findByTitleContaining(String keyword) 로 작성했다. 그럼, title필드에 keywo.. 2023. 7. 26.
페이징 기능 적용하기 예전에 혼자 만들던 프로젝트에 페이징기능과 검색기능을 추가해보기로 했다. (1로 표시해놓은 페이지 전환버튼까지 적용함. 2번은 게시물 검색기능인데 이건 다음 글에서...) 페이징 1. Repository public interface ArticleRepository extends JpaRepository { ... Page findAll(Pageable pageable); } JpaRepository를 상속받는 레파지토리 인터페이스에서, 메소드 파라미터로 Pageable을 넣으면 Page로 엔티티를 반환받을 수 있다. Pageable은 SpringDataJPA에서 제공하는 인터페이스로, 페이지 번호, 페이지 크기, 정렬 기준 등의 정보를 가지고 있다. Page는 SpringDataJPA에서 제공하는 인터.. 2023. 7. 26.
JPQL JPQL(Java Persistence Query Language) 기본 문법과 기능 JPQL은 엔티티 객체를 대상으로 쿼리한다. JPQL은 SQL로 변환된다. select m from Member as m wehere m.age > 18 기본적인 문법은 SQL과 거의 동일하다. 유의할 점 - 엔티티와 속성은 대소문자를 구분한다. - 테이블 이름이 아닌 엔티티 이름을 사용한다. - 별칭이 필수이다. TypeQuery: 반환 타입이 명확할 때 Query: 반환 타입이 명확하지 않을 때 TypedQuery query = em.createQuery("select m from Member m", Member.class); TypedQuery query1 = em.createQuery("select m.usern.. 2023. 7. 22.
JPA가 지원하는 다양한 쿼리 방법 JPA는 다양한 쿼리 방법을 지원한다. JPQL JPA Criteria QueryDSL 네이티브 SQL JDBC API 직접 사용, MyBatis, SpringJdbcTemplate 함께 사용 JPQL JPA를 사용하면 엔티티 객체를 중심으로 개발하는데, 검색을 할때도 테이블이 아닌 엔티티 객체를 대상으로 검색할 수 있어야한다. 모든 DB데이터를 객체로 변환해서 검색하는 것은 불가능하므로 결국 검색 조건이 포함된 SQL이 필요하다. JPA는 SQL을 추상화한 JPQL이라는 객체 지향 쿼리 언어를 제공한다. SQL과 문법이 유사하지만 JPQL은 엔티티 객체를 대상으로 쿼리하고, SQL은 데이터베이스 테이블을 대상으로 쿼리한다는 점이 다르다 JPQL은 객체 지향 SQL이라고 말할 수 있다. List resu.. 2023. 7. 22.
chatgpt api를 이용해보다 https://platform.openai.com/docs/libraries/community-libraries OpenAI Platform Explore developer resources, tutorials, API docs, and dynamic examples to get the most out of OpenAI's platform. platform.openai.com 여기 openAI 홈페이지에서 api사용법이랑 다 나와있다. 라이브러리도 많이 나와있는데, https://github.com/TheoKanning/openai-java GitHub - TheoKanning/openai-java: OpenAI Api Client in Java OpenAI Api Client in Java. Contr.. 2023. 7. 20.
[Springboot] Jsoup라이브러리를 이용하여 크롤링하기 크롤링해서 현재 날씨와 기온을 가져와보자.. (아래 문장은 chatgpt api를 이용해서 만든건데.. 현재 서비스중인 chatGPT3.5보다 더 형편없는듯한 답변이..) //크롤링 implementation 'org.jsoup:jsoup:1.15.3' 크롤링을 위해 jsoup 라이브러리를 사용한다. build.gradle 파일에 dependencies에 위 코드를 추가한다. @Getter @Builder public class Weather { private String condition; private String temperature; } 날씨와 온도 정보를 저장하기 위해서 Weather클래스를 정의했다.(예시) 그리고 WeatherService라는 서비스 클래스를 만들었고, getWeather메소.. 2023. 7. 20.
728x90