일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 |
- 다형성
- 참조형변수
- 생성자오버로드
- 대덕인재개발원
- 정수형타입
- 사용자예외클래스생성
- 예외미루기
- GRANT VIEW
- abstract
- exception
- EnhancedFor
- 컬렉션프레임워크
- NestedFor
- oracle
- 집합_SET
- 제네릭
- cursor문
- 자동차수리시스템
- 예외처리
- 한국건설관리시스템
- 오라클
- 객체 비교
- 메소드오버로딩
- 자바
- 어윈 사용법
- 컬렉션 타입
- Java
- 인터페이스
- 추상메서드
- 환경설정
- Today
- Total
목록2023/11 (128)
거니의 velog
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/m32Gr/btsAxHYcY4v/z8Ki0dM29mO9a4t5AIQTX0/img.png)
[my_express.js] const express = require('express'); const app = express(); const port = 3000; const bodyParser = require('body-parser'); app.use(bodyParser.json());// json 등록 app.use(bodyParser.urlencoded({ extended : false })); // URL-encoded 등록 app.set('view engine', 'ejs'); app.set('views', './views'); const DaoEmp = require('./daoemp.js'); const de = new DaoEmp(); app.get('/', (req, res) => ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bldDss/btsAs6qUhbw/pLcy9KXzlACNUAd0J0FGoK/img.png)
[BookRetrieveController.java] package kr.or.ddit.book.web; import java.util.Map; import javax.inject.Inject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.servlet.ModelAndView; ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/6kGgj/btsArzzviFd/bTYlESdYLl4TEWvHKE7vy1/img.png)
* 스프링을 사용하는 웹 애플리케이션이 브라우저에 응답하는 방식은 주로 웹 페이지였다. 그러나 최근 모바일 기기가 등장하면서 다른 데이터 방식으로 연동하는 일이 잦아졌다. 이번에는 스프링에서 다양한 기기들과 연동하는 방식을 알아보자. 1. REST란? * 지금은 PC뿐만 아니라 스마트폰, 태블릿, 스마트 TV 등에서도 인터넷 기반으로 웹 애플리케이션을 실행하여 기능을 제공한다. PC에서는 네트워크 전송 속도나 메모리 들이 풍부하므로 지금까지 실습한 대로 브라우저에서 요청 시 화면 정보(HTML, CSS, 자바스크립트 등)도 일일이 다시 전송해서 표시해도 아무 문제가 없었다. 그러나 스마트폰 같은 모바일 기기는 다르게 동작하는 경우가 많다. * 아래 그림은 모바일 기기에서 상품을 조회한 후 나타나는 최초의..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bBBAPG/btsAmG0WM4a/CYzmPyfYQwfafBDfNcGBm0/img.png)
5. 스프링 인터셉터 사용하기 * 이번에는 스프링에서 제공하는 기능인 인터셉터(Interceptor)에 대해 알아보자. 인터셉터를 사용하면 브라우저 요청이 있을 때 요청 메서드 호출 전후에 개발자가 원하는 기능을 수행할 수 있다. * 무슨 말인지 다음 그림을 보자. * 위 그림과 같이 브라우저의 요청을 해당 컨트롤러의 메서드가 처리하기 전후에 인터셉터를 두어 특정 작업을 수행한다. 인터셉터는 필터와 비슷한 기능을 하지만 필터는 웹 애플리케이션의 특정한 위치에서만 동작하는 데 반해 인터셉터는 좀 더 자유롭게 위치를 변경해서 기능을 수행할 수 있다. 즉, 인터셉터는 애플리케이션 안에서 적용 범위를 설정할 수 있다. 주로 쿠키(cookie) 제어, 파일 업로드 작업 등에 사용한다. * 다음 표는 스프링에서 인..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/xdQ29/btsArluoexS/x1acKT6AkuLbyoMxLqBCKK/img.png)
https://cafe.naver.com/aandroid 대전 안드로이드 : 네이버 카페 대전 지역 안드로이드 카페입니다. cafe.naver.com http://aiai.co.kr:5556/ Chat Room aiai.co.kr:5556 http://aiai.co.kr/ AIAICOKR aiai.co.kr
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bpYWmk/btsAourUK3c/RTzAcdD8qH3pdSWQrnNAZ1/img.png)
https://gongbu-ing.tistory.com/26 Node.js | Express : Request Parameters GET method GET 방식의 요청에서 파라미터를 전송하는 방법은 두 가지가 있다. 쿼리스트링(Querystring)이나 경로(Path)를 통하여 파라미터를 전달할 수 있다. 각각의 방법을 알아보자. Querystring 'req.param() gongbu-ing.tistory.com [post.html] 전송 [my_express.js] const express = require('express'); const app = express(); const port = 3000; const bodyParser = require('body-parser'); app.use(bod..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bzkKEp/btsAsAEE4ZL/bLXWDwbobK9TT5oCKcLFd1/img.png)
- http://localhost/book/form.do [form.jsp] 책 생성하기 제목 카테고리 가격 등록 목록 * 인터페이스는 앞에 I가 붙고, 이를 상속 받는 클래스는 끝에 Impl로 명칭하는 것이 개발자들 사이의 관례이다. [IBookService] package kr.or.ddit.book.service; import java.util.Map; public interface IBookService { public String insertBook(Map map); } [BookServiceImpl] package kr.or.ddit.book.service; import java.util.Map; import javax.inject.Inject; import org.springframework..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/buRsPl/btsArzTqjWD/CcqbNtCFtpaNHplKYBDiiK/img.png)
3. 스프링 이메일 사용하기 * 스프링에서는 이메일 기능도 설정만으로 쉽게 구현할 수 있다. 우리는 구글에서 제공하는 SMTP 서버를 이용해 메일을 보낼 것이므로 www.google.com 으로 접속하여 구글 메일 계정을 미리 만들어 놓아야 한다. 1. 이메일 기능 설정을 위한 XML 파일들을 준비한다. 2. pom.xml 파일을 다음과 같이 작성한다. 이메일 기능을 사용하기 위해 코어 스프링 라이브러리 버전을 4.1.1.RELEASE로 변경한 후 관련 라이브러리를 추가한다. 4.0.0 com.myspring pro28 pro28 war 1.0.0-BUILD-SNAPSHOT 1.6 4.1.1.RELEASE 1.6.10 1.6.6 ... org.springframework spring-context-sup..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/tUmV6/btsAqJWuCx6/MMOh0AtNxtyHrPjU6QZUK0/img.png)
* 스프링 프레임워크는 오픈 소스이기 때문에 상당히 많은 기능을 지원한다. 이번에는 여러 오픈 소스 라이브러리를 사용해 다중 파일 업로드, 썸네일 이미지, 이메일, 인터셉터 등 여러 가지 기능을 구현해 보자. 1. 다중 파일 업로드하기 * 스프링의 CommonsMultipartResolver 클래스를 이용하면 여러 개의 파일을 한꺼번에 업로드할 수 있다. 다음 표에 CommonsMultipartResolver 클래스의 여러 가지 속성을 정리했다. 속성 설명 maxUploadSize 최대로 업로드가 가능한 파일의 크기를 설정한다. maxInMemorySize 디스크에 임시 파일을 생성하기 전 메모리에 보관할 수 있는 최대 바이트 크기를 설정한..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/FJcq2/btsAnCXS8Ia/nslID7xS3HVS9Mhj0K1Ez1/img.png)
11. JSP에 회원 목록창 나타내기 * 이제 타일즈를 이용해 페이지 본문에 회원 목록창이 나타나도록 구현해 보자. 1. 먼저 tiles_member.xml에 /member/listMember.do로 요청했을 때 표시할 태그를 추가한다. name의 값은 URL 요청명에서 .do를 제외한 요청명과 일치해야 한다. 2. 브라우저에서 컨트롤러 요청 시 요청명에 대해 뷰이름을 가져온다. 그리고 다시 ModelAndView 객체에 설정한 후 뷰리졸버로 반환한다. [MemberControllerImpl.java] @Controller("memberController") public class MemberControllerImpl implements MemberController { // LoggerFactory 클..