분류 전체보기 (226) 썸네일형 리스트형 MariaDB설치 및 스프링부트 연결 MariaDB설치 패스워드는 green1234 설치가 완료되면 깃헙에 있는 readme 코드 복사해서 붙여넣어준다 실행 키 shift +ctrl +F9 실행할때 ;뒤에서 실행하면 안된다. 무조건 ;안에 커서를 두고 실행을 한다. 2행까지 만들고 새로고침을 해준다. CREATE USER 'green'@'%' IDENTIFIED BY 'green1234'; green이라는 사용자를 생성하였다. CREATE DATABASE greendb; greendb데이터베이스를 생성 GRANT ALL PRIVILEGES ON greendb.* TO 'green'@'%'; greendb에 접근하는 모든 권한을 green@에게 준다는 것이다. 성공적으로 생성되었다. db를 선택을 해줘야한다. 깃헙에서 더미테이블을 가지고 온다.. 게시판만들기 - delete기능 form태그로 만들기 쿼리문 - bords.xml 작성 select가 아니기때문에 return값은 없다. boardsDao작성 BoardsController작성 id를 PathVariable로 받은 이유는 primary키 이기때문에 primary키가 아닌 PageNum은 쿼리스트링으로 받았다. form태그작성 원래는 삭제는 form태그로 못한다. form태그는 delete메서드가 없기 때문이다. 삭제를 위한 인증 로직 1. 로그인이 되어 있는지 확인 2. 게시글을 쓴 본인이 맞는지 3가지의 체크를 하는 이유는 주소로 요청할수 있기 때문에 비정상 요청체크 - 없는 번호를 요청하였을때 인증체크 - 로그인 안했을때 권한체크 - 해당아이디로 작성한자만 삭제가능 로그인, 게시글 본인이 아니라면 삭제 버튼이 없게 수정 페이징 TOTALCOUNT : 총 글의 개수 TOTALPAGE : 총 페이지 수(10개 단위) CURRENTPAGE : 현재 페이지 FIRST : 첫페이지 LAST : 마지막 페이지 decode(currentPage,0,1,0) first currentPage가 0이면 1(true)반환, 0이 아니면 0(false)반환 decode(currentPage, totalPage-1,1,0)last currentPage가 totalPage-1이랑 같으면 1(true)반환, 0이 아니면 0(false)반환 작성한 쿼리문을 boards.xml에 복사해준다. pagingDto로가서 변수를 변경해준다. boolean은 변수작성할때 변수명앞에 is를 붙여진다. 템플릿엔진에서는 last,first로 작성하면 찾아진다. (gett.. 게시판만들기 session에 users오브젝트(usersPS)를 저장하였다. users로그인 할때 session의 키값 이름으로 principal로 했다. 만약 principal값이 비어 있다면 로그인이 안된걸로 보고 principal에 값이 있다면 로그인 된걸로 보겠다는 것이다. 세션의 값이 있는지 확인할려면 세션은 DI(dependency injection) 해야한다. DI 생성자 주입 DI 는 IOC에 있는 것을 주입하는 것이다. 생성자를 주입하는 것이다. HttpSession은 IOC 컨테이너에 저장이 되어있다.(spring이 해준다.) final로 적는 이유는 lombok으로 생성자주입받기 편할려고 사용한다. session의 값을 가지고 올때 다운캐스팅해서 가지고왔다. 그이유는 들어갈때 오브젝트로 들어갔기때.. blog 초기세팅 button을 누르면 username, password의 데이터를 가지고 /login으로 간다. button은 안에 있는 데이터를 한번에 전송을 한다. 전송해야 할 위치는 컨트롤러의 위치인 action = "/login"으로 정한다. method는 select하는 쿼리인데 로그인만 예외로 select인데 post를 사용한다.(보통 select는 get이다.) form태그는 대부분 post이다. loginDto생성 세션에 접근할려면 request객체가 필요하다. request객체는 Dispatcher Servlet이 가지고있다. 세션은 Dispatcher Servlet이 있으면 Ioc컨테이너에 넣어놓는다. key값을 principal이라고 한다. principal 은 접근 주체로 인증된 유저라는 의미이다... github - branch, clone(복제) clone - 복제 원하는 HTTPS 복사 https://github.com/codingspecialist/Springboot-MyBatis-Setting.git GitHub - codingspecialist/Springboot-MyBatis-Setting Contribute to codingspecialist/Springboot-MyBatis-Setting development by creating an account on GitHub. github.com 지정할 폴더에서 Git Bash 켜기 1.workspace에 git_lab폴더 생성 2. git_lab폴더 안에서 Git Bash 켜기 clone clone - GitHub에 있는 프로젝트를 로컬에 복제 git clone "복사 한 주소"(shift.. db연결(USERS-CRUD) - select,insret,delet,update 기본세팅 github에서 import하기 import가 끝나서 실행을 해보면 서버는 잘 동작하는데 아무것도 시작이 안될것이다. ======================================================================== 테이블 예제 추가 commit까지 까먹지말고 실행해줍니다. ioc에 있는 모든 객체는 생성자의 주입을 통해 받을수있다. final로 정의한 필드는 해당객체가 new될때 무조건 들어와야한다. new될때 값이 있을려면 생성자가 만들어주어야한다. @RequiredArgsConstructor final이 붙어있는 애들만 생성자를 만들어준다. 위에 코드의 UsersDao는 MapperScan을 통해 메모리에 떠있다. MapperScan이 new를 해준다. "s.. 데이터베이스 연결 데이터베이스 연결방법 1. conn(Dao, Service가지고 있음) 2. 쿼리작성 3. 전송 (select) 4. rs 5. Java Object 변경 클라이언트 요청이 들어오면 메모리 저장소에 request, Conn(Connection) 2가지 객체가 생긴다. request는 클라이언트의 요청이 들어오면 생기고 conn은 클라이언트 요청이 들어왔을때 DS(Dispatcher Servlet) 진입직전에 생긴다. request는 아파치 톰캣에서 빠져나올때 사라진다. conn은 DS에서 빠져나올때 사라진다. conn이 모여 있는 저장소에서 빌려온다는 개념이 맞기 때문에 사라지는 것이 아니라 반납하는것이다. 이전 1 ··· 6 7 8 9 10 11 12 ··· 29 다음