실수의 소수점을 원하는 자리 수까지 표시하는 방법입니다. 자바에서 소수점을 원하는 자리 수 까지 표시하려면 아래와 같이 DecimalFormat 클래스를 사용하면 됩니다. 1 2 3 4 5 public static void main(String[] args) { Double value = 36.58030044836733; DecimalFormat form = new DecimalFormat("#.####"); System.out.println(form.format(value)); // -> 36.5803 출력됨 } Colored by Color Scripter cs DecimalFormat 클래스를 선언한뒤 원하는 자리수를 설정하고 format 함수를 호출해서 값을 넣어주면 됩니다. 정수부분은 # 하나만..
@PostConstruct, @PreDestroy 어노테이션은 객체의 라이프 사이클 초기화 및 종료 과정을 제공합니다. 1. @PostConstruct - @PostConstruct 어노테이션은 초기화 작업을 할 메소드에 적용되며, @PostConstruct 어노테이션이 적용된 초기화 메서드는 WAS가 띄워질 때 실행된다. 2. @PreDestroy - @PreDestroy 어노테이션은 컨테이너에서 객체를 제거하기 전에 실행된다. @PostConstruct public void init(){ System.out.println("초기화"); } @PreDestroy public void destory(){ System.out.println("종료"); }
.jar 안에 .class 파일을 확인해야 할 때가 있다. 이때 Jad를 사용하면 .class 파일을 .java 파일로 디컴파일해서 소스코드를 확인할수있다. 아래 경로에서 jad.exe 파일을 OS에 맞게 다운받으면 된다. https://varaneckas.com/jad/ cmd 창을 열어서 jad.exe가 설치된 경로로 이동해서 jad를 입력해보면 jad에 대한 option들이 나온다. ※ Readme.txt를 보면 사용방법에 대해서 영어로 자세히 나와있다. 그중에 많이 쓰는 명령어만 소개해 보면 1. .class 파일 하나를 디컴파일 명령어 jad -o -sjava 클래스명.class 2. 폴더 전체를 디컴파일 명령어 jad -o -r -sjava dir/*.class 이런식으로 간단하게 사용하면된다.
스프링 시작시점에서 프로그램을 동작할 수 있도록 하는데에는 세가지가 있습니다.1. CStartEventHandler 클래스를 제작하고 contextRefreshedEvent 메소드2. ApplicationListener 인터페이스를 구현한 onApplicationEvent(ContextRefreshedEvent event) 메소드3. ServletContextListener 인터페이스를 구현한 contextInitialized(ServletContextEvent arg0) 메소드 1번 코드123456789101112@Componentpublic class CStartEventHandler { private static final Logger logger = LoggerFactory.getLogger(CS..
Secure Coding------------------------------------1. SQL Injection2. XSS3. CSRF Spring Security------------------------------------Authentication : 인증Authorization : 권한 1. Authentication(1) Credential 기반 인증 - 아이디, 패스워드를 이용해 인증하는 방식, 가장 쉽고 널리 사용되는 방식(2) 이중 인증(3) 물리 인증 2. Authorization리소스에 대한 권한 부여 : intercept DelegatingFilterProxy -> Spring Security DelegatingFilterProxy클래스가 클라이언트와 리소스 사이에서 가로채서 S..
(1)개발자 테스트, 단위 테스트(2)테스트의 문제점1) 특정 모듈의 개발기간이 길어질수록 개발자의 목표의식이 흐려진다.2) 작업 분량이 늘어날 수록 확인이 어려워진다.3) 코드의 사용방법과 변경이력을 개발자의 기억력에 의존하게 되는 경우가 많다.4) 테스트값 입력시 점점 간소화 된다.5) 코드 수정시 기존코드의 정상동작에 대한 보장이 없다.- 회귀 테스트6) 테스트 할 준비사항이 너무 많아진다. (3) TDD1) Test the program before you write it. - kent beck2) 최종 목표clean code that works - Ron Jeffries3) 진행 방식질문 -> 응답 -> 정제 -> 반복4) 실습 시나리오---------------------------------..
Spring 스프링 다운로드 : http://spring.io/tools/sts/all 1. Framework2. Spring.io3. 전자정부 프레임워크4. 특징(1) J2EE가 제공하는 다수의 기능을 제공(2) 경량 프레임워크(3) DI패턴을 지원(4) AOP패턴을 지원(5) POJO(Plain Old Java Object)를 지원(6) Transaction 처리를 위한 일관성있는 방법을 제공(7) 영속성(Data Persistence)과 관련된 다양한 API 제공 5. DI(Dependency Injection) 패턴(1) IOC(Inversion of Control) 컨테이너(2) 주입 방법1) 생성자2) setter메소드 (3) 빈의 라이프 사이클1) BeanNameAwarevoid setBea..
EL이나 포준 액션태그로 처리하기 힘든 부분을 담당연산, 조건, 반복처리개발자가 따로 구현 가능 구성요소- Core: 일반 프로그래밍에서 제공하는 것과 유사한 변수 선언, 실행 흐름의 제어 기능을 제공: 페이지 이동기술을 제공: prefix="c" uri="http://java.sun.com/jsp/jstl/core"- Formatting: 숫자, 날짜, 시간을 포맷팅하는 기능과 국제화, 다국어 기능제공: prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"- Database: DB의 데이터를 수정, 삭제, 입력, 조회하는 기능 제공: prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"- XML: XML 문서를 처리할 때 필..
● 세션 (Session) 상태 유지의 한 방법인 쿠키의 단점인 개인 정보 유출과 저장할 수 있는 데이터가 1.2MB로 한계가 있다는 점을 극복하기 위해 나온 상태 유지 방법 중의 하나가 세션입니다. 세션은 서버 상에 존재하는 객체로 브라우저 단위당 한 개씩 존재한다.세션은 웹 브라우저를 닫기 전까지 페이지를 이동하더라도 사용자의 정보를 잃지 않고 서버에 보관할 수 있도록 하는 객체입니다. 세션의 장점JSP(서버) 에서만 접근 가능하므로 보안 유지가 강력저장할 수 있는 데이터에 한계가 없음 세션에서 자주 사용되는 메소드 메소드 설명 Object getAttribute(String name) 이름에 해당되는 객체 값을 가져온다. 없을 경우에는 null을 반환함. 반환값은 Object 형 이므로 반드시 형 ..
쿠키(cookie) 쿠키는 서버가 아닌 클라이언트 컴퓨터의 하드디스크에 사용자의 정보를 저장하기 때문에 서버의 동작에 무리를 주지 않으면서 사용자의 정보를 적절하게 사용할 수 있습니다. 클라이언트의 일정 폴더에 정보를 저장하기 때문에 서버의 부하를 줄일 수 있다는 것이 쿠키를 사용함으로써 얻을 수 있는 장점입니다. 서버가 쿠키를 클라이언트에 저장해 두면 쿠키에 대한 정보를 필요로 하는 웹 페이지가 웹 서버에 요청될 때 저장해 놓은 쿠키에 대한 정보를 웹 서버에 다시 건네줍니다. 쿠키는 클라이언트에 저장된 적은 양의 정보로써 크기는 4KB 이하로 제한되어 300개까지의 데이터 정보 배열 저장이 가능하다. 최대 용량은 ( 4KB X 300개 = 1.2MB ) 이고 오래된 정보는 자동으로 삭제 됩니다. 쿠키의..