1. 우선 구글 계정 가입을 한다. 2. https://www.google.com/settings/u/1/security/lesssecureapps 이곳에 가서 보안 수준을 사용으로 한다. 3. spring에서 메일 관련 라이브러리를 pom.xml에 의존성 주입 - javax.mail mail - org.springframework.integration spring-integration-mail 4. 스프링 컨테이너인 root-context.xml에 관련 빈을 정의한다. helpMailSendableJavaMailSenderImpl을 주입받고 실제로 메일을 보내는 일을 담당하는 사용자 정의 인터페이스 JavaMailSenderImpl메일을 보내기 위하여 여러가지 값을 설정, 제공하는 인스턴스 smtp.g..
sitemesh는 레이아웃을 꾸며주는 기술이다. 웹페이지들을 보면 어떤 화면을 출력하던지 항상 같은 위치에 존재하는 태그들을 볼 수 있다.(메뉴나 하단내용 등) 같은 기술로는 tiles나 velocity 등이 있지만 이것들과 sitemesh는 동작하는 구성이 다르다. Tiles나 Velocity 방식이 전체 페이지 중 내용 부분에 해당하는 코드만을 생성하는 방식이라면, SiteMesh는 완전한 HTML 페이지를 생성한 뒤 Decorator라는 패턴을 사용하여 데코레이터HTML 페이지에 레이아웃을 입히는 방식이다. sitemesh 설정 1. 스프링 메이븐의 라이브러리를 디펜던시한다.(pom.xml) (그룹아이디 : opensymphony, 아이팩트아이디 : sitemesh) 2. sitemesh.xml과 ..
1. 네이버에서 제공하는 지도를 사용하기 위해서는 네이버 개발자 센터에서 키를 발급받아야한다.(http://developer.naver.com) 들어가서 키 발급/관리 메뉴에서 지도 api키를 발급한다. 테스트할 서버의 url이나 로컬url(포트포함)을 써주고 키발급을 하면된다. 2. 지도를 보기 위해서 기본 골격을 jsp페이지에 넣어준다.(여러가지 기능을 테스트 해보고 싶으면 네이버 개발자 api참고) - 자바스크립트코드 Colored By Color Scripter™ 1 Colored By Color Scripter™ 1 2 3 4 5 6 7 8 9 10 window.onload = function(){ new nhn.api.map.Map('map',{ point : mapPoint, zoom:10,..
구글차트로 방문자수를 일주일 단위로 집계하려고 하다 보니 매주 월요일 0시가 되면 방문자수가 카운트되는 DB가 초기화가 되게 해야되서 스케쥴러를 찾다가 쿼츠 스케쥴러를 찾았다. (사실 스프링에 @scheduled 라는 스케쥴러를 지원하는 어노테이션이 있지만 나중에야 알았다....-_-) 1. Maven에 의존 라이브러리 주입(pom.xml) 그룹아이디 : org.quartz-scheduler 아티팩트아이디 : quartz 2. QuartzJobBean추상클래스를 상속받아 executeInternal()메서드를 오버라이딩 하는 클래스를 작성한다. 이 메서드에 스케쥴러가 돌아가는 시점에 수행 할 코드(작업)를 정의한다. BoardService라는 객체는 sql을 수행하는 dao단을 호출하는 비즈니스 로직 클..
contentType이란 프로퍼티를 명시하여야 한다.
@RequestMapping(value={"/paramTest.choon","/param.choon"},params="account=admin",method=RequestMethod.GET) public ModelAndView springParam(HttpServletRequest req, HttpServletResponse res){ ModelAndView mav = new ModelAndView(); mav.setViewName("stringTest"); return mav; } 첫번 째는 ModelAndView 리턴방식이다. ModelAndview를 사용하면 setViewName()으로 찾아갈 뷰이름을 지정하고, addObject()로 뷰페이지에 넘길 파라미터를 셋팅한다. @RequestMappin..