Spring 36

2022-12-13~15 파일업로드

수업 이론 정리 1. pom.xml에 라이브러리를 추가 => https://mvnrepository.com/ 2. spring-config.xml에 추가한 라이브러리에서 사용할 빈을 등록 => 3. 각각의 jsp 파일을 저장할 수 있는 폴더에 뷰를 생성(수정)하기 4. 각각의 폴더에 있는 XXX-tiles.xml파일에 뷰 정보를 추가하기 (화면구조가 달라지면 템플릿을 추가하고 작업) 5. 모든 요청이 스프링MVC내부에서 동작해야하므로 뷰를 response하는 메소드를 컨트롤러에 추가하기(뷰만 response하는 요청은 view-config.xml에 등록가능) 6. 뷰에서 요청하는 부분을 처리할 수 있도록 컨트롤러를 만들고 메소드를 추가 7. 서비스에 메소드를 구현 8. DAO의 메소드를 구현 9. map..

Spring 2022.12.14

2022-12-12 json, text형식으로 데이터 받는 방법, Ajax에 대해서

@ResponseBody 어노테이션을 등록하면 뷰가 아닌 단순한 문자열이 리턴된다(json/text형식으로 데이터를 리턴). 메소드에 각각 써주는 방법이 있고 상단에 한 번 써주는 방법도 있다. @Controller와 함께 합칠수도 있는데 이 경우엔 @RestController 어노테이션을 등록해준다. @RestController //@Controller //@ResponseBody @RequestMapping("/json") public class JSONTestController { BoardService service; @Autowired public JSONTestController(BoardService service) { super(); this.service = service; } @Requ..

Spring 2022.12.12

2022-12-09 JSON이란? ~사용방법

JSON JSON(제이슨, JavaScript Object Notation)은속성-값 쌍(attribute–value pairs), 배열 자료형(array data types) 또는 기타 모든 시리얼화 가능한 값(serializable value) 또는 "키-값 쌍"으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷이다. -위키백과- 즉, 쉽게 말해서 자바스크립트에서 접근할 수 있는 객체로 만들어주는 기능이다. {} : JSON객체 -> JSONObject [] : JSON배열 -> JSONArray public class JSONMaker { @SuppressWarnings("unchecked") public static v..

Spring 2022.12.09

2022-12-08 JQuery 선택자, dom기능 메소드를 알아보자.

JQuery - 자바스크립트로 만들어진 라이브러리 프레임워크 처럼 쓰인다. - DOM을 쉽게 사용할 수 있도록 지원한다. 크로스브라우징(모든 브라우저에서 동일한 뷰를 볼 수 있도록 구성)을 구현 - JQuery를 사용하기 위한 방법 ① 라이브러리 다운받아 추가하기 Download jQuery | jQuery Download jQuery | jQuery link Downloading jQuery Compressed and uncompressed copies of jQuery files are available. The uncompressed file is best used during development or debugging; the compressed file saves bandwidth and im..

Spring 2022.12.09

2022-12-08 Session, Model객체

Session 쿠키시스템 : 클라이언트A에게 최초 request가 들어오면 서버가 세션 id를 만든다. 이 세션 id를 response하면서 쿠키에 담아 보내고, 다음에 또 A에게 request가 왔을 때는 처음 만들어뒀던 세션id를 함께 보낸다. 세션 id는 클라이언트마다 다르고, 같은 클라이언트여도 브라우저마다 다르다. 로그인, 로그아웃 기능을 구현해볼 건데, 쿠키를 이용해야 하기 때문에 session을 생성하는 메소드를 이용해야 한다. - 로그인처리 public ModelAndView login(MemberDTO loginUserInfo, HttpServletRequest request) { ModelAndView mav = new ModelAndView(); //loginUserInfo => 로그..

Spring 2022.12.08

2022-12-06 ServiceImpl, DAOImpl작성 시 주의할 점 + mapper.xml

ServiceImpl 비즈니스 로직(데이터 생성 및 편집)처리, 트랜잭션 명령어 실행(CRUD), 롤백, 커밋 DAO 데이터베이스에 접근. DAOImpl에서 sql문 호출 현재 작업중인 것으로 예를 들어보자면, 내가 게시판, 문의하기, 기타사항 등 여러 개의 카테고리를 만들었고, 이 카테고리를 이용해 카테고리별 게시글의 목록을 보고 싶다. 이때 카테고리별 실행하는 메소드와 쿼리문은 두 가지 이상이기 때문에 if문을 이용해 알맞게 배치해야 할 것이다. 여기서 문제는 이 if문을 어디에 작성할 것인가인데, Controller는 클라이언트의 요청에 따라 데이터를 담는 역할을 한다. 그리고 DAO는 db관련 작업만 하는 것이 알맞다. 그렇다면 남은 한 곳은?? 바로 "ServiceImpl" 클래스이다. Serv..

Spring 2022.12.08

2022-12-05 Spring에서 Tiles framework 사용하기

Tiles framework Tiles 템플릿 구성 프레임워크로, 일반적인 페이지 요소의 중복을 줄이기 위해 상속으로 사용하거나 다른 타일에 포함시켜 재사용이 가능하도록 도와주는 프레임워크이다. tiles를 이용하면 전체 애플리케이션의 일관된 모양과 느낌을 줄 수 있고 개발이 간소화된다. 사용 방법 1. pom.xml에 라이브러리 등록 => Tiles Servlet Support, Tiles JSP Support tiles라이브러리 org.apache.tiles tiles-servlet 3.0.8 Maven Repository: org.apache.tiles » tiles-servlet (mvnrepository.com) jsp support라이브러리 org.apache.tiles tiles-jsp 3...

Spring 2022.12.05

2022-12-02 정적파일보관, JSTL사용법

정적파일(이미지파일, css, html, jsp...) 저장하는 곳 => wepapp / resource (테스트하는 곳,바로 웹화면에 뿌려줌) resources폴더의 하위폴더에 있는 파일들을 "/resources/**" 이런식으로 요청해서 보겠다는 것. 이 경로를 수정할수도 있는데 수정하게 되면 스프링설정파일에서 수정해주면 된다. WEB-INF폴더 하위에 static폴더를 만들어주고 여기에 저장해준다. 구분하기 위해 images폴더를 만들어 이미지 파일을 넣어주고 "/images/**"의 경로로 요청했을 때 이미지를 보여주도록 등록한다. location = "/상대경로/images/이미지파일 이름.jpg" JSTL 자바서버 페이지 표준 태그 라이브러리(JavaServer Pages Standard Ta..

Spring 2022.12.05

2022-12-01~02 스프링MVC프로젝트 서버구축 및 mybatis 연결해서 게시판 만들기

서버구축 1. pom.xml - 스프링 프레임워크, 자바 버전 바꾸기 - 라이브러리 등록하기 ① Oracle JDBC Drive - 오라클을 다운로드받기 위한 라이브러리 ② Spring JDBC ③ Mybatis, Mybatis-Spring 2. 스프링 설정파일 - 경로를 수정한 경우 web.xml도 수정하기(/WEB-INF/~~~) ① View Resolver등록(필요 시 value수정) ② 커넥션등록(jndi) ③ JDBC Template등록 ④ mybatis등록(SQL Session Template) - SqlSessionFactoryBean(mybatis 설정파일 경로 등록) - SqlSessionTemplate ⑤ 빈등록을 위한 패키지등록 3. mybatis 설정파일 - DTO객체 등록, ali..

Spring 2022.12.05