본문 바로가기

#직업훈련#자바#IT#개발자#직업훈련생#주니어개발자#웹#취성패#취업성공패키지#코딩#웹개발자#JSP

자바(JAVA)기반 안드로이드 웹&앱 개발 75일차 스프링,MySQL(이어서 댓글처리(REST,AJAX)) 복습스타일을 최근에 좀 바꿨습니다. 학원에서 정리하고, 코드에 대한 설명을 미리 적어놔서 집에서는 오늘 했던 코드를 쭉 쳐보는 형식입니다. ​ 기존의 형식은 코드 치다가 블로그에 내용 치고 이렇게 했는데, 음.. 뭔가 효율성이 떨어지는 것 같고 코드칠 때 흐름이 떨어지는 것 같아서 입니다. 또한, 학원에서 설명을 미리 적어놓고 집에서 보니까 "아 이 코드가 이거였지"라는 식으로 잘 떠오르더군요. ​ [댓글의 수정/삭제 이벤트 처리] 어제 수정/삭제 모달창 까지 띄우는 것 까지 하였습니다. 이제 모달창에서 Modify, Remove Button을 클릭하였을 때 기능이 동작하도록 할 것입니다. 지금까지 제가 이해한 바로는 get.jsp 에 버튼을 눌렀을 때의 이벤트를 처리하고(view javascript) .. 더보기
자바(JAVA)기반 안드로이드 웹&앱 개발 74일차 스프링,MySQL(이어서 댓글처리(REST,AJAX)) [Ajax 댓글 처리] 1. 댓글처리를 위하여 먼저 테이블을 생성합니다. 1) 게시글에 대한 댓글을 저장하는 DB Table 입니다. http://tcpschool.com/mysql/mysql_constraint_foreignKey (외래키 쿼리문 설명) 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com 2) ALTER TABLE 테이블 이름(tbl_reply) ADD CONSTRAINT 제약조건 이름(fk_reply_board) FOREIGN KEY 필드이름(bno) REFERENCES 테이블이름(필드이름)(tbl_board(bno)); tbl_reply 테이블의 bno 칼럼에 tbl_board 테이블의 bno 칼럼을.. 더보기
자바(JAVA)기반 안드로이드 웹&앱 개발 73일차 (스프링 이어서 기본적인 CRUD, 페이징 오류처리, 댓글처리(REST,AJAX)) [검색 처리] 1. 검색 기능 : 검색조건, 키워드 1) 검색조건 (1) 일반 사용자 : 태그 (2) 관리자용이나 검색기능이 강한 경우 : 태그 2. 검색의 유형 1) 제목, 내용, 작성자와 같은 단일 항목 2) 제목 + 내용, 제목 + 작성자와 같은 복합 항목 3) 검색 항목에 따라서 매번 다른 SQL이 처리될 필요가 있는 상황 4) MyBatis의 동적 쿼리기능을 이용해서 처리 http://www.mybatis.org/mybatis-3/ko/dynamic-sql.html MyBatis – 마이바티스 3 | 동적 SQL 동적 SQL 마이바티스의 가장 강력한 기능 중 하나는 동적 SQL을 처리하는 방법이다. JDBC나 다른 유사한 프레임워크를 사용해본 경험이 있다면 동적으로 SQL 을 구성하는 것이 얼마.. 더보기
자바(JAVA)기반 안드로이드 웹&앱 개발 72일차 (스프링 기본적인 CRUD 이어서, 페이징처리(Spring+MySQL)) [목록(list)에서 버튼으로 등록화면(register) 가기] 1. list.jsp(목록)화면에 Button을 추가한 후, javascript(list.jsp)를 추가하여 버튼 동작처리를 합니다. 1) Button id="regBtn" 이므로 javacript 에도 #regBtn 으로 작성하여 click 하였을 때, "/board/register"로 이동하게 합니다. ​ list.jsp 에 button 추가 list.jsp 에 javacript 추가 list.jsp 에 버튼과 javascript 를 추가하였을 때 생기는 버튼입니다. 해당 버튼을 누르면 http://localhost:8080/board/register 로 이동됩니다. [조회 페이지(게시글 상세보기)로 이동하기] 1. BoardContro.. 더보기
스프링 servlet-context.xml, root-context.xml, web.xml 스프링을 배우면서 프레임워크를 사용하기 위한 환경설정을 구성하는데 자꾸 어쩔 때는 이 xml, 저쩔 때는 이 xml 왔다갔다 하는게 헷갈려서 궁금해서 구글링해보았습니다. ​ https://thiago6.tistory.com/70 servlet-context.xml, root-context.xml, web.xml 차이점 알기! servlet-context.xml, root-context.xml, web.xml에 대한 차이점에 대해 정리해봅니다. 우선, xml 파일은 모두 객체(Bean)를 정의합니다. 1. servlet-contex.xml servlet에서 보듯이 요청과 관련된 객체를 정의.. thiago6.tistory.com 첫째로 xml 파일은 모두 객체(Bean)를 정의합니다. ​ 1. servle.. 더보기
자바(JAVA)기반 안드로이드 웹&앱 개발 71일차 (2) (스프링 기본적인 CRUD 관리, Modal) [영속 영역의 CRUD 구현 - 게시물 조회(READ), 삭제(DELETE), 수정(UPDATE)] 1. BoardMapper.java (인터페이스) 에 read(Integer bno), delete(Integer bno), update(Integer bno)를 추가합니다. BoardMapper.java 2. BoardMapper.xml 에 각 메소드에 맞는 sql 구문을 추가합니다. 1) id를 메소드 이름에 맞게해야하는 것 같습니다. read() 같은 경우는 결과값을 돌려줘야 하므로 해당 패키지의 BoardVO 로 경로를 설정합니다. BoardMapper.xml 3. BoardMapperTests.java 에 각 메소드에 대하여 테스트를 합니다. BoardMapperTests.java read 테스트.. 더보기
자바(JAVA)기반 안드로이드 웹&앱 개발 71일차 (1) (스프링 기본적인 CRUD 관리, Modal) ​ ​ 프로젝트의 구성 [각 영역의 네이밍 규칙] 1. xxxController : 스프링 MVC에서 동작하는 Controller 클래스 2. xxxService, xxxServicelmpl 1) xxxService : 비즈니스 영역을 담당하는 인터페이스 2) xxxServicelmpl : 인터페이스를 구현한 클래스 3. xxxDAO, xxxRepository 1) DAO(Data-Access-Object)나 Repository(저장소)라는 이름으로 영역을 따로 구성하는 것이 보편적 2) 예제에서는 MyBatis의 Mapper 인터페이스를 활용 4. VO, DTO 1) VO : ReadOnly의 목적이 강하고, 데이터 자체도 불변하게 설계 2) DTO : 데이터 수집의 용도 ​ [프로젝트 패키지의 구성].. 더보기
자바(JAVA)기반 안드로이드 웹&앱 개발 70일차 ( Model 데이터전달자, RedirectAttributes, Controller, ResponseEntity, 파일업로) 자꾸 STS 가 말썽이네요...되던게 안되고 환경설정 재구성하고 뭐하느라 복습 별로 못했네요.. 주말에 추가하겠습니다. ​ [Model이라는 데이터 전달자] 1. JSP에 컨트롤러에서 생성된 데이터를 담아서 전달하는 역할 2. Model 2 방식에서 사용하는 request.setAttribute()와 유사한 역할 ​ [@ModelAttribute 어노테이션] 1. 컨트롤러에서 메서드의 파라미터는 기본 자료형을 제외한 객체형 타입은 다시 화면으로 전달됨 2. @ModelAttribute는 명시적으로 화면에 전달되도록 지정 ​ 자꾸 requestMapping 이 오류나는 것 같은데 학원에서 제 파일을 그냥 떼와야겠네요. 주말에 해당내용 올리겠습니다. 교안1 기준 p.80 - 99 교안2 기준 p.1 - 28 더보기