묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
spring GCP 배포 mysql 문제
현재 spring boot 프로젝트를 GCP를 통해 배포하는 중인데요,rds 만들어서 연동도 잘 해두었고 ssh로 들어갔을때 mysql 연동도 잘 됩니다.근데 jar 파일로 서버를 실행하려고 할 때 이런 에러가 나더라구요ㅜㅜ 찾아보니까 mysql 연동 문제라고 하던데 아무리 봐도 모르겠습니다...제발 도와주세요ㅜㅜㅜ
-
해결됨[백문이불여일타] 데이터 분석을 위한 기초 SQL
중급반 결재하러 가요!! 기초반 좋았습니다
기초반 들었는데 너무 쉽게 설명해주셔서 좋았어요중급반 들으러 갑니다
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
영상이 검정색으로 화면이 안보여요...
영상 실행은 되는데 화면이 검정색으로 뜨고 아무것도 안보여용...어제만 해도 별문제 없엇는데 확장프로그램 문제인가 해서 사파리로도 들어갔는데 똑같이 어둡게 나오네요... 혹시 다른 강의도 그런가 하고 다른분 강의 켜봤는데 그분 강의는 잘 화면이 나오고 여기 해당 강의만 어둡게나와요! 근데 아이패드로 접속해서 틀면 제대로 나오는데.. 노트북에서 보고 싶은데 해결방법이 뭘까요... 추가적으로 강력새로고침해서 캐시도 지워보고 시크릿모드에서도 해보고 다해봤는데도 같은 현상입니다. 혹시해서 확장프로그램 삭제하고 노트북도 껏다 켜봤습니닥 ㅠㅠ...
-
해결됨MySQL 성능 최적화
실무에서 prefix index를 어떤 요구사항이 있을때 사용하는지 궁금합니다!
실무 요구사항에서 blob, text, 긴 varchar와 같은 칼럼을 인덱싱하는 경우가 있을까요?당장 기억나는건 게시글 내용 검색 밖에 생각이 안나네요.. 그리고 요 아래글에 나와있는 prefix index의 한계점도 맞는 말일까요?https://stackoverflow.com/questions/31526618/mysql-prefix-index-vs-index(아래는 챗지피티가 요약해준거라 정확하지 않을 수 있습니다 ㅠ)인덱스를 통해 "가능한" 행들을 먼저 찾고, 이후 실제 데이터 행을 검색하여 추가 필터링을 수행(두 단계를 거치므로 인덱스를 사용하지 않을때보다 더 많은 시간 소요..?)2.정렬(sorting)이나 그룹화(grouping) 작업에는 사용되지 않음.ORDER BY 절을 명시적으로 사용하지 않는 한 결과의 순서는 보장되지 않음커버링 인덱스로 사용 불가
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
MVC와 API의 차이점
안녕하세요 강사님!!다름이 아니라 공부를 하다가 MVC와 API의 차이점(?)에 대해 알아보게 되었습니다!그래서 내린 결론이Spring MVC구조의 @Controller는 컨트롤러의 리턴값이 ViewResolver에 의해 해석되어서 특정 View가 html응답으로 전송된다.반면 REST API구조의 @RestController에 의한 호출은 View를 리턴하는 것이 목적이 아닌, 데이터를 전송하는 것을 목적으로 응답이 전송되어 진다.라고 내렸습니다.첫번째로, 위에서 제가 내린 결론이 맞는 말인지와두번째로, 그럼 MVC를 쓰는 경우와 API를 쓰는 경우가 언제인지가 궁금합니다.제가 아직 개념이 부족해서 그런건지는 몰라도 MVC를 쓰면 프론트엔드의 역할이 없어지는게(?) 아닌가 하는 착각이 들어서...답변 부탁드리겠습니다!!
-
해결됨인프라공방 - 그럴듯한 서비스 만들기
서버 구성하기 미션에서 서버 실행후 요청 실패
서버 구성하기 미션을 진행중입니다.서버 실행을 하고 curl http://localhost:8080 명령어에 의해서 응답까지는 옵니다. 외부망 보안그룹에서 다음과 같이 설정했습니다.브라우저에서 요청이 가는지 확인하고https의 443 포트는 tls 설정을 하지 않으면 접속이 안되는걸로 알고 있어서브라우저에서 요청하기 위해서 80포트를 전체대역대에 대해서 열어줬습니다.인터넷 게이트웨이도 생성이 되어있고, 외부망의 라우팅 테이블에서 인터넷게이트에 대해서 전체대역대로 설정이 되어있습니다.curl명령어를 통해서 요청을 보내봤는데 connection refuesed 가 뜹니다.브라우저에서 http://3.36.115.136:80 으로 보내봤는데도사이트에 연결할 수 없음3.36.115.136에서 연결을 거부했습니다.와 같은 오류가 뜹니다.ping 체크 잘 되고port 체크에서도 telnet: Unable to connect to remote host: Connection refused 와 같은 오류가 발생합니다.어떤점을 더 체크해봐야할까요?3tier 구성하기 강의를 들으면서 진행하다가 미션을 하지 않을것을 확인하고 중간에 미션을 진행하고 있는데혹시 이점에서 문제가 있었을까요?
-
미해결
맥북 m1칩 Mysql workbench 튕김 오류
mysql workbench를 사용하려고 합니다. 근데 최신버전(8.0.36)을 다운받으면 튕기진 않지만 인터페이스 대부분이 안보여서 사용에 불편하고 이전 버전을 다운받으면 erd 다이어그램을 만들기 위해 model를 생성하려고 +버튼을 누르면 바로 튕깁니다. 8.0.28버전까지 다 다운받아봤는데 튕김 현상이 계속 발생하네요. 무슨 문제일까요?
-
해결됨성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법
case when에 count를 넣으면?
select * from members m where m.idx=(case when count(m.idx)=1 then 2 else 1 end)이렇게 하면 에러가 나오는데 이유를 모르겠네요
-
해결됨장래쌤과 함께하는 쉽고 재미있는 SQL 이야기
컬럼 안 공백 문자열 제외
선생님 어제 알려주신대로 잘 따라했더니 연결 성공했습니다 정말 감사합니다. 한 가지 궁금한 게 더 있는데요! 정규식 사용해서 특수문자 등을 모두 제거하니 공백 문자열이 생겼는데요trim 이나 is not null 이렇게 해도 null 값이 아니다보니 공백 문자값이 계속 추출이되서요 공백 문자값 자체를 데이터에서 제외하려면 어떻게 해야될까요?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
과제 답안
두번째 과제 풀고 있는데 답이 혹시 어디 있을까요?
-
미해결MySQL 성능 최적화
no offset 최적화를 사용할 수 없을 것 같은 경우에는 어떻게 최적화를 해야할까요?
안녕하세요. 강의를 보다보니 no offset 최적화를 보니 순차정보(ex: id, datetime, ...)가 기준값으로 사용될 수 있는 경우에는 충분히 사용할 수 있을 것 같은데, 복잡한 조건들이 들어가는 검색 기능(ex: 다나와 상품 상세검색이나, 부동산 사이트의 매물 검색, 쿠팡 상세검색 등)같은 경우에는 이런 최적화 기법을 사용할 수 없을 것 같은데, 이 경우에는 그냥 offset 기반의 페이징밖에 최적화 방법이 없을까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
ec2서버에서 user예약어 관련 오류이신분
현제 45강까지 완료했고구글링해서 user라는 키워드가 현제 제가 쓰고있는 버전에서는 예약어이기때문에 사용아 안된다는것까지 인지했습니다.그래서 yml에 dev에 해당하는 url에 NON_KEYWORDS=USER까지 입력했고User class에 @Table(name ="USER")까지 적용해서git을 이용해서 ec2서버에 적용했지만 동일한 오류가 발생합니다.2일정도를 해결하려했는데 안되어서 질문 남깁니다.저의 github 는 https://github.com/Jo-Jun-Yeong/library-app입니다.그리고 제가 사용하는 hc2 ip는54.180.104.239입니다 다른 인프런에 답글달아주신 글도 봤지만user가 예약어이니 nonkeyword적용해라 이상의 해결을 못봤습니다..///////////////////////////////////////////라고 질문하려했는데마지막으로 ./gradlew build가 적용되지않아서 그런거지않을까? 해서 ./gradlew clean 후 build했더니 적용되었습니다.특히 User.class에 @Table(name="user")적용을 해야 하는것 같습니다. 저처럼 2틀동안 삽질하지 않으셨으면 좋겟네요
-
미해결백엔드 개발자 성능 개선 초석 다지기
scouter client
sudo spctl --master-disable 이 명령어로 해도 계속 이렇게 뜨는데 이건 무슨 문제인가요..? 스크립트 실행은 잘된거같은데..
-
미해결백엔드 개발자 성능 개선 초석 다지기
스카우터 설치
스카우터가 실행이 안되는데 java 버전문제인가요
-
해결됨장래쌤과 함께하는 쉽고 재미있는 SQL 이야기
JOIN함수 질문입니다.
안녕하세요.현재 SQLD시험 공부를 하다가 의문점이 생겨 질문을 남깁니다.강사님께서는 JOIN문에서SELECT e.emp_id, e.emp_name, d.dept_name, e.phone FROM employee AS e JOIN department AS d ON e.dept_id = d.dept_id;라고 코드를 작성해주셨는데 SQLD책에는 SELECT employee.emp_id, employee.emp_name department.dept_name, employee.phone FROM employee, department WHERE employee.dept_id = department.dept_id;형식이라고 나와 있습니다.WHERE은 '조건'으로 배웠는데,JOIN문 사용하지 않고, 책에 나오듯이 WHERE만으로 JOIN을 해도 문제가 없나요?
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
@Component
안녕하세요 또 이렇게 질문을 드리네요공통 개발 - 인터셉터에서 AdminInterceptor은 @Component을 사용합니다. 제가 자료를 찾아봤는데 개념 이해가 어렵더라구요개발자가 직접 작성한 class를 Bean으로 등록하기 위한 어노테이션이라고 정의 되어 있던데 그럼 Bean은 또 뭔지 찾아봤어요자바 객체를 스프링에서는 Bean이라고 한다. 라고 정의 되었더라구요. 객체는 뭐 재료를 합쳐서 사용자가 사용할 수 있겠끔 만들어진 거가 객체인건 알고 있고 ....다시 정리하면 직접 작성한 class를 객체화 시키려는건가라고 좀 애매하게 이해했는데 이건 또 아닌거 같고.. 예제를 본다면 class InlineExamConsole{ @Autowired public void setExam(Exam exam) { this.exam = exam; }}이 클레스면 xml은<context:annotation-config/><bean id = "exam" class="entity.NewlecExam" /><bean id = "console" class="ui.InlineExamConsole"></bean>로 되어야 하고...IoC 컨테이너의 상황은exam: Exam<---- console:InlineExamCode처럼 플로우가 될꺼구...그런데 <context:annotation-config/><bean id = "exam" class="entity.NewlecExam" /><!-- <bean id = "console" class="ui.InlineExamConsole"> </bean>->를 해서 삭제.... bean을 삭제 하면 IoC 컨테이너의 상황은 아래처럼 될듯 한데 exam: Exam<---- console:InlineExamCodeconsole는 또 사용해야겠으니 아래처럼 @Componet를 등장시키고, @Componetclass InlineExamConsole{ @Autowired public void setExam(Exam exam) { this.exam = exam; }}IoC 컨테이너에서 console:InlineExamCode를 부활exam: Exam<---- console:InlineExamCode그런데 부활만 했지 그냥 좀비 상태가 되어 버린 console:InlineExamCode... console:InlineExamCode은 어떻게 찾는건지..그럼 xml를 변경<context:component-scan base-package = "spring.di.ui"/><context:annotation-config/><bean id = "exam" class="entity.NewlecExam" />위 테그로 spring.di.ui에 컴포넌트가 있으니 다른곳에 찾지 말고 위 테그에서 컴포넌트 찾고 그 컴포넌트를 Bean에 등록해서 객채화 해~~~ 라는거같은데 코드상으로는 이렇게 이해를 했어요하지만 강의에서는 context:component-scan base-package 를 못본거 같은데 ....(뭐 제가 바빠서 꼼꼼하게 못본것일 수도 있고 ) 저 컴포넌트의 이해를 좀 도와주시면 안될까요??컴포넌트 활용이나 @Component를 사용안하면 얼마나 불편해지길래 저 이노테이션을 사용한건지 ...(사실 저 이노테이션을 안써도 잘 활용할 수 있을거 같은데 ...)
-
해결됨재고시스템으로 알아보는 동시성이슈 해결방법
프로젝트를 처음 시작시에 java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES) 오류가 발생합니다.
spring: jpa: hibernate: ddl-auto: create show-sql: true datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/stock_example username: root password: 1234 # JPA 쿼리가 어떻게 나가는지 logging: level: org: hibernate: SQL: DEBUG type: descriptor: sql: BasicBinder: TRACEyml 설정은 위와 같이 하고 docker 이미지 확인시에 아래와 같이 작동하고 있습니다. igwangmin@igwangmin-ui-MacBookPro ~ % docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 03d3fae9019b mysql "docker-entrypoint.s…" 4 days ago Up 16 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql DB 조회 시에도 아래와 같이 나오는 데 혹시 제가 놓친 부분이 있을까요? mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | stock_example | | sys | +--------------------+ 5 rows in set (0.01 sec)
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
protected 사용 이유
안녕하세요! 해당 강의에서 기본 생성자를 추가해주실 때, public이 아니라 protected를 사용하셨는데, 그 이유가 무엇인가요?혹시라도 다른 곳에서 기본생성자를 사용하지 못하도록 하게 하기 위함인가요? 제가 자바가 안익숙해서 그런지, 이러한 접근 제어자를 쓰는 것이나, static, final 키워드를 언제 쓰거나 안써야 하는지에 대한 감이 별로 없어서 구분을 잘 못하는데, 이러한 실력은 어떤 경험을 더 쌓아야 할지.. 아니면 어떤 키워드를 어떻게 공부해야 더이상 안 헷갈리고 확실하게 알 수 있을지 궁금합니다...! 항상 친절한 강의 감사드립니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
서버 실행 실패
> Task :LibraryAppApplication.main() FAILED . ____ _ /\\ / ___'_ __ (_)_ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.7.6)2024-04-04 17:09:40.815 INFO 12468 --- [ main] c.g.libraryapp.LibraryAppApplication : Starting LibraryAppApplication using Java 17.0.9 on KONG with PID 12468 (C:\Project\project\library-app\build\classes\java\main started by jinju in C:\Project\project\library-app)2024-04-04 17:09:40.819 INFO 12468 --- [ main] c.g.libraryapp.LibraryAppApplication : No active profile set, falling back to 1 default profile: "default"2024-04-04 17:09:41.422 INFO 12468 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.2024-04-04 17:09:41.474 WARN 12468 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.support.BeanDefinitionOverrideException: Invalid bean definition with name 'userRepository' defined in com.group.libraryapp.domain.user.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot register bean definition [Root bean: class [org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in com.group.libraryapp.domain.user.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration] for bean 'userRepository': There is already [Root bean: class [null]; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=userConfiguration; factoryMethodName=userRepository; initMethodName=null; destroyMethodName=(inferred); defined in class path resource [com/group/libraryapp/config/UserConfiguration.class]] bound.2024-04-04 17:09:41.505 INFO 12468 --- [ main] ConditionEvaluationReportLoggingListener : Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2024-04-04 17:09:41.521 ERROR 12468 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : ***************************APPLICATION FAILED TO START***************************Description:The bean 'userRepository', defined in com.group.libraryapp.domain.user.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration, could not be registered. A bean with that name has already been defined in class path resource [com/group/libraryapp/config/UserConfiguration.class] and overriding is disabled.Action:Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=trueExecution failed for task ':LibraryAppApplication.main()'.> Process 'command 'C:/Program Files/Java/jdk-17/bin/java.exe'' finished with non-zero exit value 1 찾아본 결과이 문제는 Spring 애플리케이션의 빈(bean) 정의 중에 중복이 발생하여 발생한 것으로 보입니다. 에러 메시지에 따르면 userRepository 빈이 이미 UserConfiguration 클래스에서 정의되어 있으며, 또한 Spring Data JPA가 자체적으로 해당 빈을 생성하려고 시도하고 있는 것으로 보인다고 합니다.혹시 UserConfiguration 부분에 변경이 적용 안된게 있어서 그런걸까요?저 bean 부분을 지워도 .UserServiceV1 때문에 컴파일 에러가 발생하더라구요,.,..
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
git에서 커밋을 했는데, 계속 진행해도 되는지의 여부
40강. git 기초사용법을 듣고 있습니다. 코드를 github에 올리는 과정에서 처음에는 git add . 작성 시 아래와 같이 에러가 나타났습니다위와 같은 과정을 거쳤고, 커밋이 반영된듯 싶으면서도 fatal: unknown write failure on standard output이라는 문구가 떠 다음 과정을 진행하기 찝찝합니다. 이전에 git add .시 실행은 된 것 같지만 warning이 난것도 나중에 문제가 될것 같습니다..감사합니다.