본문 바로가기

전체 글

(48)
인텔리제이랑 aws ec2서버 내부에 있는 db 연결 ec2 서버 내부에 mysql db가 있어서 그 db랑 연결하던 중이었다. 1.File -> New -> Data Source -> MySQL -> MySQL 누르면 Data Sources and Drivers 라는 창이뜸 ...누르면 2.아래 창이 뜬다 1. aws ec2 들어가서 인스턴스 누르면 나오는 서버 중 연결하고 싶은 서버의 탄력적ip 입력, 포트 22 ( ssh 기본포트가 22 ) 2.ssh접속 계정 아이디 3. 확장자pem인 키파일 등록(이건 프로젝트 같이 하는 사람한테 전달받은거라 어디서 가져오는지 모르겠음) 이후 apply 누르고 General 창에가서 목적지인 최종 아이피, 포트를 입력한다. User: db 유저 password: db유저에 대한 비밀번호
스프링 부트 3 백엔드 개발자 되기_29 08장 218pg 테스트 중 Caused by: org.hibernate.AnnotationException: Entity 'today.simba.springbootdeveloper.domain.User' has no identifier (every '@Entity' class must declare or inherit at least one '@Id' or '@EmbeddedId' property) => User.java 확인하기 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id", updatable = false) private Long id; 위 코드 보면 @Id 어노테이션 쓰고 있는데 import org.sprin..
[인프런]스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술_13 MVC 패턴- 한계 MVC패턴을 적용한 덕분에 컨트롤러의 역할과 뷰를 렌더링 하는 역할을 명확하게 구분할 수 있음 특히 뷰는 화면을 그리는 역할에 충실한 덕분에 코드가 깔끔하고 직관적임 단순하게 모델에서 필요한 데이터를 꺼내고 화면을 만들면 됨 그런데 컨트롤러는 딱 봐도 중복이 많고 필요하지 않은 코드들도 많이 보인다 MVC 커트롤러의 단점 포워드 중복 view로 이동하는 코드가 항상 중복 호출되어야 함 물론 이 부분을 메서드로 공통화해도 되지만 해당 메서드도 항상 직접 호출해야 함 viewPath에 중복 정리하자면 공통 처리가 어렵다 => 컨트롤러 호출 전에 공통 기능을 처리해야 함 프론터 컨트롤러 패턴을 도입하면 이런 문제를 해결가능(입구를 하나로) 스프링 mvc의 핵심도 이 프론트 컨트롤러에 있다...
[인프런]스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술_12 #MVC 패턴 - 적용 서블릿을 컨트롤러로 사용하고 JSP를 뷰로 사용해서 MVC패턴을 적용해보자 Model은 HttpServletRequest객체를 사용한다 request는 내부에 데이터 저장소를 가지고 있는데 'request.setAttribute(), request.getAttribute()를 사용하면 데이터를 보관하고 조회할 수 있다 dispatcher.forward(): 다른 서블릿이나 JSP로 이동할 수 있는 기능이다. 서버 내부에서 다시 호출이 발생 redirect와 forward의 차이 리다이렉트는 실제 클라이언트에 응답이 나갔다가 클라이언트가 redirect 경로로 다시 요청한다 따라서 클라이언트가 인지할 수 있고 URL경로도 실제 변경된다. 반면 포워드는 서버 내부에서 일어나는 호출이기..
[인프런]스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술_11 #JSP로 회원 관리 웹 애플리케이션 만들기 jsp도 결국 servlet으로 바뀌는데 우리 눈에 보이지 않고 자동으로 변환돼서 사용되는 것 => 그래서 사실 그 서비스 로직이 그냥 그대로 호출 된다고 이해하면 됨 Member cannot be resolved to a type 에러 떠서 https://www.inflearn.com/questions/850440/error-member-cannot-be-resolved-to-a-type [Error] Member cannot be resolved to a type - 인프런 | 질문 & 답변 save.jsp를 요청할 때, Member cannot be resolved to a type라는 에러가 나옵니다.패키지의 문제인가 싶어서 아래와 같이 확인했습니다.스..
[인프런]스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술_10 JSP로 회원 관리 웹 애플리케이션 만들기 build.gradle //jsp 추가 시작 implementation 'org.apache.tomcat.embed:tomcat-embed-jasper' // 이거 추가 안했더니 jsp가 페이지가 아닌 파일로 열림 implementation 'jakarta.servlet:jakarta.servlet-api' //스프링부트 3.0 이상 implementation 'jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api' //스프링부트 3.0 이상 implementation 'org.glassfish.web:jakarta.servlet.jsp.jstl' //스프링부트 3.0 이상 //jsp 추가 끝
[인프런]스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술_9 #서블릿으로 회원 관리 웹 애플리케이션 만들기 http://localhost:8080/servlet/members/new-form 에 데이터 입력해서 전송눌렀는데 Form Data가 안나옴 =>https://www.inflearn.com/questions/534786/4%EB%B6%84-%EC%AF%A4%EC%97%90-post-%EB%B0%A9%EC%8B%9D%EC%9C%BC%EB%A1%9C-%EC%A0%84%EC%86%A1%ED%96%88%EC%9D%84-%EB%95%8C-%EA%B0%9C%EB%B0%9C%EC%9E%90-%EB%8F%84%EA%B5%AC%EC%97%90-form-data%EA%B0%80-%EC%95%88%EB%82%98%EC%98%A4%EB%84%A4%EC%9A%94 =>payloa..
[인프런]스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술_8 #회원 관리 앱 애플리케이션 요구사항 public class MemberRepository { private Map store = new HashMap(); ...중략... //아래코드 //스토어에 있는 모든 값들을 꺼내서 새로운 ArrayList에 담아 넘겨줌, //이렇게 하는 이유는 이 new ArrayList에 값을 넣거나 밖에서 조작해도 스토어에 있는 value를 건들고 싶지 않아서 //물론 이렇게해도 그 스토어에 있는 멤버를 직접 가져와서 안에 있는 값을 수정되버림 public List findAll(){ return new ArrayList(store.values()); } ...중략... }