Java
-
Secure Coding - 소프트웨어 개발 방법론Java/Spring 2018. 9. 6. 11:26
* Secure Coding 1. 소프트 개발 보안 방법론 - 개요 개발서버 - 스테이징서버 - 웹애플리케이션서버 3가지가 있다. 그 뒤에 DB가 존재한다. 방화벽이 있으면(인가되지않는 사용자막는 방화벽, 패턴인식 방화벽, 웹 방화벽) 방화벽을 달아도 애플리케이션서버가 바로 공격당할 수 있다. ex)DDOS, 랜섬웨어 - 보안 침해사고 유형 및 사례 멀웨어, XSS, 워터링 홀은 타겟이 개인이고 SQLi, DDOS, Web Shell 등은 서버를 공격한다. MyBatis에서 ${}를 쓰면 SQLi에 위험이 있다. 양자컴퓨터로도 못푸는 암호 방식 -> 블록체인 웹애플리케이션 취약점 이용 - url패턴을 통한 개인정보 탈취 - 서버로 접근해서 내부망 해킹 및 악성코드 삽입 - 파일 업로드 취약점을 이용 - ..
-
Spring Problem - class="org.mybatis.spring.SqlSessionTemplate" not foundJava/Spring 2018. 8. 29. 18:02
org.hibernate hibernate-validator 6.0.12.Final cglib cglib 3.2.7 org.mybatis mybatis-spring 1.3.2 org.mybatis mybatis 3.4.6 mybatis 모듈을 찾을 수 없다는 에러가 나와서 pom.xml에서 해당 dependency를 추가했더니 에러가 사라졌다. 추가로 MySQL을 사용할 경우 mysql mysql-connector-java 5.1.31 mysql-connector-java 를 이용한다.
-
Error - configuring application listener of class org.springframework.web.context.ContextLoaderListenerJava/Spring 2018. 8. 29. 17:34
프로젝트 >> properties >> Deployment Assembly를 선택한 후, "Add" >> Java Build Path Entries >> Maven Dependencies 선택한 후, "Apply"를 해준다. 톰캣 재시작하면 서버가 정상적으로 실행된다. 메이븐 메뉴에서 "Update Project Configuration"를 실행하는 경우, 해당 정보가 삭제되므로 다시 등록해주면 된다.
-
Transaction / AOPJava/Spring 2018. 8. 27. 17:13
Transaction - 데이터 처리정상적으로 데이터가 처리 되면 Commit - 유지 Error가 발생되면 Rollback - 취소 AOP - 공통코드를 동작시키위한 기술Aspect Oriented Programming - 관점 지향 프로그래밍Spring AOP로 Transaction을 처리한다.weaving - Compile된 여러개의 .class 파일을 하나의 클래스로 묶어서 처리하는 기술마치 하나의 코드처럼 움직인다. Service Logic / Business Logic 실행 시 Exception이 발생할 때, DataBase에 변경 사항 RollBack이 필요하다. AOP는 Point-cut과 Advisor로 구성되어 동작한다.Point-cut : 특정 패키지, 클래스, 메소드 지정Adviso..
-
LoggingJava/Spring 2018. 8. 27. 16:53
logging은 과정을 기록하는 것이다.DB만으로는 추측이 어렵기 때문에 로깅을 이용한다.ex) 조회수 Spring Framework는 Commons-Logging을 사용한다. - Spring 4이하 버전까지Spring5부터는 spring-jcl을 사용한다. Commons-logging은 Cpu와 Ram, Disk ( System Resource )를 많이 잡아 먹기때문에 Log4J 또는 Logback으로 변경이 필요하다.Log4j 또는 Logback 라이브러리가 필요하다. Log4j와 logback은 commons-logging을 대신 사용하기 위해 필요하다. 없으면 안찍히거나 2번 찍히게 된다. pom.xml에 Dependency를 추가한다. ch.qos.logback logback-classic 1..
-
Static ResourcesJava/Spring 2018. 8. 24. 16:42
css, js, image 등의 자원은 파일이 존재하는 url 그 자체로 사용된다.이런 요청은 MVC의 DispatcherServlet으로 판단해 Controller에서 RequestMapping Annotation을 검색하게 된다.원하는 js파일을 얻을 수 없고, 404 에러만 계속 발생하게 된다. 그래서 css, js, img 같은 정적 자원들은 따로 url을 주어야 하는데이런 기능을 mvc:resources가 제공해준다. 아래와 같이 DispatcherServlet에 등록한다. applicationContext.xml에서 등록한다. 여러개 동시에 등록가능하다. 위 설정은 resources라는 경로로 정적 파일들을 제공하겠다는 의미의 설정이다.해당 path url로 들어가면 알맞는 파일을 가져올 수 ..