일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- JQuery
- 자바서블릿
- jQuery값전달
- LIST
- namedQuery
- 대량쿼리
- paging
- jQueryUI
- JPQL
- javaservlet
- values()
- calendar
- JPA
- fetchjoin
- 프로젝트생성
- Generic
- joinfetch
- 벌크연산
- jscalendar
- 엔티티직접사용
- 제너릭
- jQuery값전송
- Hibernate
- 제네릭
- 페이징
- 스프링데이터흐름
- springflow
- 페치조인
- fullcalendar
- javascriptcalendar
- Today
- Total
목록전체 글 (259)
가자공부하러!
redis cli 시작 // redis-cli 접근 // redis가 설치된 곳에서 $ redis-cli // 다른 host에 접근 $ redis-cli -h {host} 키 확인 // 모든 키 목록 {host}:{port}> keys * // 특정 키 검색 {host}:{port}> keys {key} {host}:{port}> keys {*key} // like 검색 {host}:{port}> keys {key*} // like 검색 // 키의 타입 확인 {host}:{port}> type {key} // spring session key 예시 // 해당 세션에 저장된 데이터들 // type : hash spring:session:sessions:{sessionId} // 해당 세션의 만료 키로 사용..
// 워드 머신은 정수 스택에 대해 일련의 간단한 작업을 수행하는 시스템입니다. // 처음에는 스택이 비어 있습니다. // 작업 순서는 문자열로 제공됩니다. 작업은 단일 공백으로 구분됩니다. // 아래는 예시입니다. 다음 작업을 지정할 수 있습니다. // - 정수 X(0~ 2^20-1) : 머신은 X를 스택에 저장합니다. // - POP : 머신은 스택의 최신값을 제거합니다. // - DUP : 머신은 스택의 최신값과 같은 값을 스택에 추가합니다. // - + : 머신은 스택의 최근 두 개의 값을 꺼내서 더한 결과값을 스택에 추가합니다. // - - : 머신은 스택의 맨 위 두 개의 값을 꺼내서 첫 번째 뺀 값에서 두 번째 것을 뺀 결과값을 스택에 추가합니다. // 모든 작업이 수행된 후에 머신은 스택의..
1. 도커란? 직역하자면 부두에서 컨테이너를 다루는 노동자를 의미. vmware, virtualbox와 같은 가상 머신처럼 독립된 실행환경을 제공하면서도, 컴퓨터에 직접 애플리케이션을 설치한 것과 같이 빠르고, apt, npm, pip 처럼 명령어 한줄로 원하는 앱이 포함된 실행환경을 손쉽게 설치할 수 있는 환상적인 개발환경을 제공합니다. - by egoing 리눅스의 컨테이너 기술을 이용해서 프로세스만 격리해서 빠르게 실행시키는 기술 가상 운영체제의 단점인 많은 자원 소모 없이 같은 효과를 낼 수 있음 호스트와 컨테이너 호스트 : 운영체제가 설치된 컴퓨터 컨테이너 : 호스트에서 실행되는 격리된 실행환경 운영체제가 설치되어있지 않음 앱을 실행하는데 필요한 라이브러리와 실행파일만 포함 2. 이미지 pull..
섹션3 실전 프로젝트 1. 실전 프로젝트 구성 구성 : spring boot, spring mvc, spring data jpa, postgresql 2. 정적 자원 접근관리 인증, 인가가 필요 없는 정적 자원에 대해서는 무시하는 설정 permitAll은 필터체인을 거쳐서 무시되지만 ignore는 필터체인에 들어오지도 않음 @Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { private final String[] IGNORED_MATCHER_PATTERNS = {"/static/**", "/css/**", "/js/**", "/static/css/images/**", "/we..
섹션2 스프링 시큐리티 주요 아키텍처 1. 위임 필터 및 필터 빈 초기화 - DelegatingFilterProxy, FilterChainProxy DelegatingFilterProxy ServletFilter servlet 스펙 2.3부터 도입됨. servlet으로 요청이 들어가기 전, 후에 동작 servlet 컨테이너가 만들고 관리 스프링에서 만든 내용을 주입받아 사용할 수 없음 DelegatingFilterProxy servlet 필터를 거친 요청을 Spring Bean에 위임시키는 역할 servlet컨테이너가 초기화될 때 servletFilter로 등록됨 ApplicationContext에서 springSecurityFilterChain을 찾아 보안처리 위임 FilterChainProxy spr..
원격저장소에는 분명 없는 브랜치인데 로컬에서 pull받으려고 하면 아래처럼 오류가 나는 경우가 있다. ERROR: Error fetching remote repo 'origin' hudson.plugins.git.GitException: Failed to fetch from 원격저장소 at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:899) at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1114) at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1145) at hudson.scm.SCM.checkout(SCM.java:505) at hudson.model.Abstra..
섹션1 스프링 시큐리티 기본 API 및 Filter 이해 1. spring-boot-starter-security 디펜던시를 추가하면 무슨일이 생기나 서버가 기동되면 스프링 시큐리티의 초기화 작업 및 기본적인 보안 설정이 이루어진다. 기본적인 보안 설정? 모든 요청에 대해 인증을 요구한다. 인증 방식은 폼 로그인 방식과 httpBasic로그인 방식을 제공한다. 기본 로그인 페이지 제공 기본 계정 제공 : user / {password}Using generated security password: 4add4fb7-0180-4223-8cde-a278183cb58c 2. 사용자 정의 보안 기능 구현(Customizing) WebSecurityConfigurerAdapter 서버가 구동되면서 이 클래스를 호출한..
#8장. 스프링이랑 무엇인가? 요약 및 결론 스프링의 개발철학과 목표를 분명히 이해하고 사용해야 한다. 멋진 애플리케이션을 위해서 책 내용 스프링은 자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크다. 기술적 복잡함과 비즈니스 로직의 복잡함을 해결하기 위해 등장했다. 핵심은 POJO위에서 IoC/DI, AOP, PSA POJO는 사실 그럴싸하게 이름만 붙여놓은 것 1. 스프링의 정의 스프링을 짧게 설명하는 것은 쉽지 않고 짧은 설명으로 충분하지도 않다. 가장 잘 알려진 정의 -> 자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크 애플리케이션 프레임워크 특정 계층, 기술, 업무 분야에 국한되지 않고 애플리케이션 전 영역을 포괄하는 범용적인 프레임워크..
#7장. 스프링 핵심 기술의 응용 요약 및 결론 책 내용 스프링의 모든 기술은 결국 객체지향 언어의 장점을 적극적으로 활용해서 코드를 작성하도록 도와주는 것이다. 7장에서는 IoC/DI, 서비스 추상화, AOP를 애플리케이션 개발에 활용해서 새로운 기능을 만들어보고 스프링의 가치와 사용자에게 요구하는 것에 대해 살펴본다. 디폴트 의존관계 : 외부에서 DI 받지 않는 경우 기본적으로 자동 적용되는 의존관계(593p) 1. SQL과 DAO의 분리 UserDao로 돌아가보면... 충분한 개선이 이뤄졌었지만 테이블이 바뀔 때 마다 SQL문장을 담고있는 DAO에 수정이 발생할것이다. SQL을 DAO에서 분리하면 더 좋겠다. XML 설정을 이용한 분리 가장 손쉽게 생각해볼 수 있는 방법 개별 SQL 프로퍼티 방식...
private enum UserType { ADMIN, NORMAL } private enum Movie { UBD, CLEMENTINE } private static T[] values(Class enumObject) { return enumObject.getEnumConstants(); } @Test public void enumTest() { UserType[] values = values(UserType.class); for(UserType u : values) { log.info("u :{}", u); } Movie[] values1 = values(Movie.class); for(Movie l : values1) { log.info("l :{}", l); } }
bongdev.tistory.com/152?category=918208
참고 : https://jeevanpatil.wordpress.com/2011/07/22/prevention_of_xss 글로벌 설정 web.xml defaultHtmlEscape true public void onStartup(ServletContext servletContext ) throws ServletException { ... servletContext.setInitParameter( “defaultHtmlEscape”, “true” ); }위처럼 설정을 하게되면 무슨일이 일어나나? XSS공격을 통해 스크립트가 삽입되어도 페이지가 그려질 때 스크립트가 실행되지 않는다. lucy 필터 사용하면 되지 않나? 설정이 더 간단하고 개인적으로 < 등으로 치환하지 않기 때문에 더 깔끔해보여서 좋다. 문제..