Today I Learned

2021.03.17(Wed) 📌 TIL

Elin J 2021. 3. 17. 23:39

 

 

오늘 뭔가 수업시간에 설명이 엄청 많았다 @_@

근데 후반부로 갈수록 계속 반복인 내용이었고,,, 반복한 덕분에 조금씩 눈에 들어오기 시작,,,

 

-설치 및 세팅 순서 복습

-테이블 저장

 

스프링,,,,내일은 더 화이팅이야 🌱

 

 

==========================3월 17일 수요일===============================

 

💻

<설치세팅 순서 복습>

 

http://spring.io/ 접속 spring tools 4다운로드
spring~~~.jar 압축
contents.zip압축 sts-4.8.1.RELEASE

 

     [작업폴더]
       ㅣ- sts-4.8.1.RELEASE
       ㅣ- my
       ㅣ- apache-tomcat-9.0.37 톰캣압축푼폴더

 

SpringToolSuite4.exe -0316 실행
    ㅣ- Help메뉴 Eclipse Market spring tool suite 입력
오른쪽상단 perspective창에 spring연결
★먼저 프젝 생성 전에 톰캣 연결★
window메뉴 맨 마지막 preperence
    ㅣ- 왼쪽 server항목
프로젝트생성 => Spring Legacy project (Web Dynamic 아님 주의!)
    ㅣ- STS0316 중앙에 Spring MVC project
:C 드라이브 -> 사용자 -> .m2폴더확인 repository확인
src/main/java
src/main/resources
src/main/webapp/index.jsp문서
  ㅣ-index.jsp문서 먼저 실행

 

-------------------------------------------------------------------------------------------------------------


src/main/webapp

  ㅣ- index.jsp문서
  ㅣ- WEB-INF
      ㅣ- view폴더
          ㅣ-home.jsp 문서

          ㅣ-boardWrite.jsp 문서 ==> 보드컨트롤에서 가짜이름 boardWrite.do 연결

          ㅣ-boardList.jsp 문서 ==> 보드컨트롤에서 가짜이름 boardList.do 연결

 

src/main/java
  ㅣ- net.hb.crud패키지
      ㅣ- HomeController.java
      ㅣ- @Controller
            BoardController.java
            ㅣ- 함수단위 view처리단위로 @RequestMapping("/boardList.do")
                  public String 함수( ){ return "boardList" ; }

 

뷰화면처리 환경설정 web.xml, servlet-context.xml
src/main/webapp
  ㅣ- index.jsp문서
  ㅣ- resources폴더
      ㅣ- images그림폴더 복붙
  ㅣ- WEB-INF
      ㅣ- spring폴더
            ㅣ- appServlet폴더
                    ㅣ- servlet-context.xml ==>CCS(context:component-scan) base-패키지 net.hb.*로 변경해줌!
            ㅣ- root-context.xml
      ㅣ- view.xml

 

-------------------------------------------------------------------------------------------------------------

 

STS0317
  src/main/java
  src/main/resources
  src/main/webapp/index.jsp문서
  pom.xml (project object mapping=project of manager)
    -> xml태그로 환경설정
    -> 라이브러리 및 서비스 태그 추가할때 index.jsp문서 먼저 실행 후 확인!
    -> 라이브러리 및 서비스 태그 추가하면 .m2/repository폴더랑 연결

 


 


 

<오늘의 수업목표>

  1. 저장 hobby테이블
  2. 출력 전체테이블 출력
  3. 교재보고 정리하기

hobby테이블을 기준으로 시퀀스2개, 테이블2개, 테이블에 제약조건
   ㅣ- hobby댓글먼저 삭제 후
   ㅣ- hobby삭제

 

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 

src/main/resources 문서세팅
src/main/webapp 웹뷰
src/main/java 컨트롤,다오,디티오
   pom.xml문서
      첫번째commons-fileupload
      첫번째commons-io

 

두번째 boardWrite.jsp문

      <form method="post" enctype="multipart/form-data" action="boardInsert.do">

      파일 : <input type="file"  name="upload_f"><P>

 

src/main/webapp
  |-index.jsp문서
  |-resources폴더=>오.버=>new=>folder
      |-images그림폴더 복사붙여넣기
      |-세번째upload 폴더생성하세요 업로드한파일들어갈위치
  |-WEB-INF
      |-views폴더
          |-boardWrite.jsp

 

 

src/main/java

  l-net.hb.crud패키지

     l-BoardController.java문서

          @Autowired

          네번째 ServletContext application;

 

          @Autowired

          BoardDAO dao;

          //BoardDAO dao = new BoardDAO( )

          //jsp문서< jsp:bean id=dao class=net.hb.crud.BoardDAO/>

     ㅣ-BoardDTO.java 여섯번째

          private MultiPartFile upload_F; 게터/세터

 


src/main/webapp
  |-resources폴더
  |-WEB-INF
     |-spring폴더
        |-appServlet폴더
           |-servlet-context.xml ==>
                   다섯번째<beans:bean id="multipartResolver"
                         class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>
        |-root-context.xml
     |-view.xml

 

 

--------------------------------------------------- 오후 수업 ------------------------------------------------------------

 

<저장, 전체출력 관련 SQL 쿼리문 기술>

  pom.xml

 

 

STS0317
 src/main/java
 src/main/resources
  ㅣ-db.properties 오라클정보기술
  ㅣ-config.mybatis
     ㅣ-board.xml 첫번째
     ㅣ-SqlMapConfig.xml 두번째
     ㅣ-dao-context.xml 세번째
 src/main/webapp/index.jsp문서

 

 

스프링에서 database관련 쿼리문 기술 orm=object relaction mapping
💻 orm기술을 구현하는 기술 3가지
    ㅣ-ibatis
    ㅣ-mybatis (우리가 배우는 기술) ==> pom.xml문서에 이미 mybatis라이브러리기술
    ㅣ-hibernate 쿼리문X Nosql

 

 

----------------------------------------------------------------------------------------------------------

 

[💡잠깐복습!]
💻 웹서버 실행하면 자동인식되는 xml문서
     ㅣ- pom.xml
     ㅣ- web.xml
          ㅣ- root-context.xml --------> 스프링 교재보고
          ㅣ- servlet-context.xml
                  ㅣ- 파일업로드, jsp뷰, 맨마지막 ccs base-패키지=net.hb.*
                  ㅣ- dao-context.xml문서를 여기에 연결

 

===> db.properties문서 자동으로 인식 못한다!
===> board.xml문서도 자동으로 인식 못한다!
           ㅣ- 땡겨가는 문서 SqlMapConfig.xml
                  ㅣ- SqlMapConfig.xml 땡겨가는 문서는 dao-context.xml문서
                            ㅣ- dao-context.xml문서또한 혼자 자동인식 못해서 땡겨가야함

 

 

--------------------------------------------------------------------------------------------------------------

 

[🙋‍♀️정리하기]

 

scr/main/resources
  ㅣ- db.properties 복붙
  ㅣ- config/mybatis패키지
      ㅣ-board.xml 복붙 -db쿼리문 기술

           <select id="  "~><insert id="  "~~>

            id값을 다오에서 접근 namespace이름.id이름
      ㅣ-SqlMapConfig.xml 복붙
      ㅣ-dao-context.xml 문서에서 db.properties문서 + SqlMapConfig.xml 문서

 

dao-context.xml 문서를 web.xml/servlet-context.xml 연결시키면
         board.xml ==> SqlMapConfig.xml ==> dao-context.xml
                              db.properties문서도 ==> dao-context.xml
          dao-context.xml문서 servlet-context.xml문서에 붙이면 web.xml문서에서 자동인식

 

 

boardWrite.jsp 입력 => BoardController.java컨트롤 =>
                                 다오 BoardDAO.java => board.xml문서 id접근
board.xml문서는 SqlMapConfig.xml땡겨가요
SqlMapConfig.xml문서는 dao-context.xml문서가 땡겨가요
dao-context.xml문서는 servlet-context.xml문서가 땡겨가요
servlet-context.xml문서는 web.xml문서가 땡겨가요

 

 

-------------------------------------------------------------------------------------------------------------------


===========오늘은 DB에 넘어오게 저장 성공까지 =======

👇👇👇👇👇👇👇👇👇👇👇👇

 

-------------------------------------------------------------------------------------------------------------------

 

 

 

 

💡 에러없이 입력받은거 확인 후 마지막에

BoardController.java의 불필요한 코드를 다 정리해준다 !

 

오늘은 여기까지 끝이고,

내일은 전체출력 고고!!!