전체 글(30)
-
InteliJ 깃 브랜치 커밋 내용 원복
SVN과 마찬가지로 깃에도 형상관리를 할때, 커밋을 하고 다시 원복해야할 일이 있다. 73814 버전으로 되돌리기 위해서 설명을 하겠다. 1. 73814 커밋 내용을 클릭 한 후 오른쪽 마우스를 클릭해 'Revert Changes'를 클릭한다.2. 그럼 로컬에서 이전 커밋한 상태로 되돌아 오고 이것을 다시 'Commit' -> 'push' 하게 되면 이전버전으로 원복할 수 있다.
2024.06.17 -
mybatis #{}와 ${}의 차이
#{} 로 입력값을 받게 되었을때는 '' 가 자동삽입된다. ${}로 입력받게 되었을때는 입력받는 그대로 삽입된다. 예시 ) 출처 : https://koonsland.tistory.com/139 ${}를 어쩔 수 없이 입력받아야 하는 경우는 SQL Injection 방어에도 신경을 써야한다. 먼저 SQL Injection이란. 즉 mybatis ${}를 쓰면, 입력받는데로 쿼리문이 실행되기 때문에, 이에 대한 방어가 필요하다. 사진 출처 : https://noirstar.tistory.com/264 그래서 SQL Injection을 방어하기 위해서는 https://github.com/rkpunjal/sql-injection-safe/ 라이브러리를 사용할 수 있다. 이에 대한 내용은 아래 링크에서 확..
2024.06.17 -
Maven java heap memory 에러
콘솔창에 mvn clean install 을 했을때, java heap memory 관련 에러가 나왔다. 인텔리제이에서 Settings > Runner VM Options를 1024m 정도로 수정하면 된다.
2024.06.16 -
ServletContext 메소드
설정값에 따라 페이지를 다르게 보여줘야 할때 사용했던 메소드이다.예를 들어 기준되는 값을 정하고 그 기준되는 값이 1일때, 1_login.jsp를 보여줘야하고2일때 , 2_login.jsp를 보여줘야 한다. 그리고 나머지는 login.jsp를 반환한다고 하면.... 아래와 같이 작성 가능하다. 컨트롤러 // 기준되는 값 가져오기int step = userinfo.getStep(); Stirng view = /jsp/login;String customView = "login/"+step+"_login";String loginPageFileName = customView+"jsp";String loginPageFilePath = servletContext.getRealPath("/") + "WEB-INF..
2024.06.16 -
CSRF 토큰
* 참고 CSRF를 직접 구현한 적없지만 업무 현장에서 경험한 부분이 있어서 당시 파악한 대로 정리했었다. 그 정리한 부분을 참고하고 나머지는 챗 GPT, 검색을 활용해서 어떻게 구현할지 정리를 해보았다. 1. pom.xml에 Spring Security 의존성을 추가 설정을 한다. 2. spring-security.xml(토큰 유무에 따른 URL 접근 허용 관리) ... 3. web.xml http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schem..
2024.06.14 -
Tiles
TilesTiles는 레이아웃 템플릿 엔진으로, 중복되는 include 코드를 사용하지 않고 지정된 페이지 레이아웃에 따라 페이지 타일을 조합하여 완전한 페이지로 만들어 준다. 즉, 반복되는 부분들을 한 곳에서 관리 할 수 있게 해주는 템플릿이라 생각하면 된다. pom.xml에 tiles 추가 필자는 타일즈는 스프링 프레임워크에서 사용되는 컴포넌트 개념으로 servlet-context.xml에 작성하는 것이 맞다고 본다.viewResolver도 마찬가지! ps. 여기서 잠깐 servlet 이란출처 : https://coding-factory.tistory.com/742 bean id="tilesConfigurer" class="org.springframework.web.servlet.view.til..
2024.06.14