티스토리 뷰
1 Zxing?
Zxing 라이브러리는 구글에서 개발한 오픈소스로 QR 코드 스캔 및 바코드 인식등이 가능하다. 다음은 프로젝트 진행중 필요한 기능(URL 생성후 QR코드 매칭)을 구현하기 위해 간단한 예제를 구현해 보았다.
2 Index.jsp Source
간단한 뷰이다. 텍스트 코드를 입력할 수 있는 Input 하나와 QR코드 생성 요청을 하는 버튼 하나로 구성되어있다. 코드에서 볼수 있듯. 버튼을 클릭하면
function에 정의된 url이 img태그에 src 속성으로 정의된다.
3 Controller Source
컨트롤러에서도 역시 하는일은 없다. 단순히 ModelAndView 객체를 통해 뷰와 index에서 넘어온 파라미터만 리턴한다.
4 dispatcher-servlet.xml Source
컨트롤러에서 리턴한 뷰를 받기위해 ViewResolver를 기본적으로 사용하는 InternalResourceViewResolver 외에 BeanNameViewResolver를 하나 더 정의하였다.
order 속성을 보면 BeanNameViewResolver 를 1로 정의해 놓았으니 해당 ViewResolver가 우선권을 가지게 된다. 아 물론 뷰를 찾을 수 있도록 해당 뷰를 다음과 같이
Bean으로 등록해놔야 한다.
5 QRCodeView.java
ViewResolver를 통해 "qrcodeview"라는 Bean을 호출하게 된다. 해당 클래스는 다음과 같이 구성하였다. 다운로드가 아닌 뷰 자체가 이미지가 되야하기 때문에 컨텐츠
타입을 image/png로 설정하였다. 정작 Zxing 라이브러리를 사용한 부분은 가장 밑에 주석을 제외한 2줄 뿐이다. 그나저나 이놈의 ie는 항상 뭔가 다른 브라우저랑 다르다
.....
6 Result
테스트해보니 잘된다.
'Java' 카테고리의 다른 글
Java 간단코드 - 시간차이구하기 (2) | 2017.02.01 |
---|---|
Java Thumbnail Image 소스 (1) | 2014.03.07 |
Java File 클래스 (0) | 2013.11.14 |
- Total
- Today
- Yesterday
- Spring
- local repository
- mysql 한글깨짐
- mybatis resultmap
- spring autowired
- tiles vs sitemesh
- with admin option
- 마이바티스 resultmp
- maven 로컬저장소
- 시간차이구하기
- mysql convert
- extjs 6 테마
- tiles sitemesh
- 스프링 autowired
- spring container
- 제이보스 스프링4
- sencha touch icons
- 로컬저장소
- jboss spring4
- 스프링 컨테이너
- mybatis common resultmap
- 마이바티스 공통 resultmap
- extjs grid crud
- extjs 6 theme
- 스프링
- with grant option
- custom mapping
- extjs6
- extjs
- sencha touch icons list
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |