spring 혼자 실습중인데요 어떤걸 먼저하는게 더 쉬울지 순서를 골라주세요
일단 게시판 crud 하는건 만들어봤어요
여기서 추가하고싶은게 3개있는데
1. 로그인 (그냥 로그인말고 스프링 웹 시큐리티 라는걸 공부해보고 그걸로 하려고요)
2. 댓글 구현 (댓글이 어떤식으로 달리는지 이것도 찾아봐야해요.. )
3. 만들어본 게시판에 이미지를 첨부하고 이미지 썸네일을 보여줄수 있게 만들기?
저의 수준은 자바 문법정도만 아는 .. 초보입니다
1. crud를 만들어 보셨다고 하니 게시판은 가능할거고 거기에 파일 업로드/파일 다운로드/ 저장된 데이토를 엑셀로 다운로드 등의 기능을 하보시고
2. 그다음으로 댓글 구현으로 넘어가서 댓글 기능이 있는 게시판 또는 답글이 대화 형태로 여러개 달리는 게시판을 짜보시면 되겠네요.
3. 마지막으로 로그인 처리로 넘어 가세요.
스프링으로 템플릿이 잘되어 있는 전자정부표준프레임워크가 있습니다.
해당 프레임워크를 참고해서 해보시는 것도 도움이 될거에요.
추천드리는 쉬운 순서는
1. 로그인
2. 댓글 구현
3. 이미지 첨부
일것 같네요
사실 3개가 그렇게 난이도 차이가 있어보이지않습니다.
실습이기때문에 개발하는것에 초점이 맞춰져있지만 앞으로 개발시 어떻게 설계 할지에 초점을 맞추는게 좋을것입니다.
예를들어 로그인한다는건 사용자를 식별하고 인증을 해주는것이기때문에 사용자별 접근권한 제어와 접근권한에 따른 접근가능 페이지를 설정해야할것입니다.
개발능력은 금방 성장 가능하지만 설계능력은 처음부터 연습하지않으면 나중에 성장하기 힘듦니다.
좋은 개발자가 되길 바랍니다. 감사합니다.
나열하신 로그인, 댓글, 썸네일 기능 중에는 2번 댓글 구현이 가장 구현하기 쉬울 것 같습니다.
지금 게시판을 만드신 상황이니 게시판을 구현하는데 사용한 기능과 크게 다름없이 구현할 수 있을 것으로 보입니다.
다음으로는 게시판에 썸네일 구성은 기본 게시판 기능에 이미지를 가져오는 기능만 추가하면 되는 내용이라 추천 드립니다.
마지막으로 로그인을 구성하는 것을 추천 드리며 위 두 가지 내용보다는 공부가 더 필요한 내용입니다.
1. 로그인 (그냥 로그인말고 스프링 웹 시큐리티 라는걸 공부해보고 그걸로 하려고요)
2. 댓글 구현 (댓글이 어떤식으로 달리는지 이것도 찾아봐야해요.. )
3. 만들어본 게시판에 이미지를 첨부하고 이미지 썸네일을 보여줄수 있게 만들기?
===> 3번 먼저 해보세요
다른 모듈에 부딪힐일이 없으니 . 제일 무던하게 될겁니다
쉬운 순서는 1,3,2 라고 생각합니다
1번 스프링시큐리티를 사용해서 로그인을 구현하게 되시면 시큐리티 함수를 사용해서 구현하시게 되어 코드가 몇 줄 안 되실겁니다. 그리고 3번 첨부파일 업로드 조회 부분도 프론트에서 백엔드로 파일 전송 하는 기능을 조금만 검색 또는 찾아보시면 금방 구현하실 수 있습니다.
3번이 제일 어렵다고 말씀드린 이유는 댓글을 위한 DB구조에 대해서 고민해보셔야 되고, 말씀하신 댓글 달리는 구조에 대해서 명확하게 디자인이 되어있어야 DB를 설계하실 수 있을겁니다. 그리고 댓글에 등록,삭제,수정 권한 등 게시판 crud 구현하는 거 이상으로 공수가 드실겁니다.
글 읽어주셔서 감사합니다.
게시판 crud를 하셨다니 대단하네요~ 3이 가장 쉽고 그 다음으로 2가 쉬울 거에요.
1에서 스프링 시큐리티를 사용하게 되면 게시판 사용자들의 회원가입부터 회원가입 시 정보, 권한 등을 다 설정할 줄 알아야합니다. 2의 경우는 댓글 작성시마다 비동기ajax로 화면 불러오는 것도 익히셔야하고요. 초보자시라면 3이 제일 쉽습니다.
게시판 crud를 만드셨다면 기본적은 지식은 쌓으신거 같습니다.
3가지 중에서 쉬운거 순서대로 하신다면 제 생각에는
1.댓글 구현 2.첨부파일, 썸네일 3.로그인이 될거 같습니다.
우선 게시판 제작이 끝나셨으니 댓글(댓글 한개인지 댓글에 댓글인지에 따라서 코딩이 달라집니다.) 다는걸 만들어보신 후
이미지 첨부파일 및 이미지 썸네일 작업을 하셔서 게시판 완성도를 높이시면 코딩 만족도가 높아질거 같네요.
그 후 로그인 작업을 하시면서 로그인과 게시판을 연동해서 코딩하시면 좋을거 같습니다.
제가 처음 배웠을 때도 제일 먼저 했던 작업이 게시판을 먼저 만드는 것였어요. 그 후는 로그인을 만들었어요. 보통 기업들이 원하는 내용 중에는 로그인이 필수로 포함되기 때문이예요. 로그인 만드는 작업을 할 줄 알면 댓글이나 이미지 첨부하는 것들은 쉽게 할 수있을거예요. 게시판을 만들어 보신 걸로도 spring의 대부분을 해보신거네요!
안녕하세요! 아하(Aha) 지식공유자 입니다.
저도 웹개발을 처음 시작할때 스프링 프레임워크로 시작했습니다. 공부하기 쉬운 순서를 정해달라고 문의 주셨는데요. 저는 3-2-1순으로 공부하시는 것을 추천드립니다.
이미지 업로드/썸네일 추출은 지금 상태에서 데이터베이스의 구조를 가장 조금 변경하고 만들수 있는 기능이라고 생각합니다. 그래서 처음으로 추천드렸습니다.
댓글의 경우에는 테이블의 구조를 어떻게 잡아야 할지 고민이 필요하기 때문에 두번째로 추천드렸습니다. 간략히 말씀드리면, 하나의 게시물에 여러개의 댓글이 추가될수 있습니다. 1:N의 관계가 성립하죠. 여기서 부터 고민해보시면 좋을 것 같습니다.
로그인/ 스프링 시큐리티적용은 마지막에 공부하시는 것을 추천드립니다. 사실 스프링 시큐리티를 적용하고 작동하게 만드는것은 어렵지 않습니다. 다만 처음 학습하는 단계에서 스프링 시큐리티의 구조와 원리를 이해하기는 쉽지 않기 때문에 마지막으로 추천 드렸습니다.
참고로 말씀드리면, 스프링을 공부하실때 자바의 기본도 같이 보시는걸 추천드립니다. 결국 스프링을 떠받치고 있는 기술이 자바이기 때문입니다. 저도 취업을 준비하면서 자바 기본서를 여러번 공부했는데요. 그러고 나서 스프링을 다시 보니 정말 새로운 느낌을 많이 받았습니다. 공부하시는데 도움이 되셨길 바랍니다!
2 > 3 > 1 의 순서가 좋습니다.
CRUD는 해봤다고 하셨으니까 데이터베이스는 어느 정도 익숙하다고 가정했을 때 그렇습니다.
이미지 첨부와 로그인은 새로운 분야(파일 저장 및 경로 생성, 이미지 재처리, 스프링 시큐리티)를 공부해야 하기 때문에 좀 더 어렵습니다. 특히 스프링 시큐리티는 기본적인 보안 지식과 시큐리티 컴포넌트를 모두 익혀야 의도에 맞게 사용할 수 있는데 경험 있는 개발자에게도 어려운 분야입니다(따로 전문서가 나와 있습니다).
안녕하세요 일단 crud 게시판을 만들어보셨다고하니
응용할수있는 부분부터 순차척으로 진행하시는게 좋을것같습니다.
게시판에 기능이 점점 추가되는 형태로 작업하시면
작업 결과물이 바로나와서 개발에 좀더 흥미를 느끼실수있을거에요
3번 첨부파일 기능을 추가해보시고
2번 댓글 구현 작업을 진행해보세요
1번 로그인의 경우 DB 테이블 설계하셔서
로그인 작업 진행하시면 좋을것 같습니다
셋중 가장 쉬워보인는것 댓글 구현이 아닐까 생각이 됩니다.
로그인의 경우 시큐리티를 사용해봤다면 어렵지가 않지만 처음 사용하는 사람에게는 조금 어려울 수 있습니다.
댓글의 경우 CRUD만 알아도 만들수 있기는 합니다.
물론 댓글도 복잡하게 만드려고 한다면 복잡하기는 하지만 처음에는 최대한 쉽게 만들어보는 것이 좋습니다.
안녕하세요
말씀하신 것 중에는 1번 로그인이 그나마 공부하시는데 많은 도움이 되겠네요.
댓글 구현 같은 경우에는 게시판과 특별히 다를 게 없습니다. 다만 게시판의 게시글 ID를 기반으로 댓글 객체를 저장하고,
댓글의 댓글을 구현 하려면 부모 댓글의 ID를 속성으로 가지고 가면 되는 정도입니다.
하지만 로그인의 경우는 회원 가입도 필요하고, 이왕 구현하는 김에 암호도 암호화 및 복호화 하는 법을 구현하시면 좋을 것 같네요.
그리고 로그인이 구현되면 권한 처리 하는 것도 같이 추가로 구현하시면 도움이 많이 되실 것입니다.
권한 코드에 따른 각 게시판 사용 권한이라든가 등급별로 나누어서 댓글을 사용할 수 있는 권한 이렇게 나누어서 구현을 해보세요
자바 문법 정도만 아신다고 했지만, CRUD를 다 하신거 보니 차근차근 해보시면 이해가 되실 겁니다.
그럼 답변이 도움이 되었으면 하네요.
현업개발자로써 조언드립니다.
일단은 기본적인 crud를 하셨다면 님께서 써놓으신 순서대로 일단은 작업하시면 될듯합니다.
db에 로그인 정보가 있는 상태에서 세션을 이용하여 로그인을 구현해보시고 그다음에 스프링 웹 시큐리티를 사용하여 로그인을 구현해보시면 되겠습니다.
그다음에 게시판에서 댓글을 달 수 있는 기능을 추가하시면 되고 그다음에 첨부파일 기능을 추가하시면 됩니다.
게시판을 혼자힘으로 개발하시면 기초는 하신거라고 보면 되겠습니다.
게시판을 구현할 정도면 초보수준을 벗어낳다고 볼 수 있습니다. ( 단, 모든 로직을 이해하고 혼자 구현할 수 있어야합니다.)
답변이 도움이 되셨으면 좋겠습니다.