일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 생성자
- Node.js
- 자바
- dart
- js
- 콘솔게임
- qqOperater
- 네임드생성자
- app.use
- Oracle
- Spring
- 오류
- int와 integer
- Sort()
- 추상클래스
- 삼항연산자
- push함수
- git
- Middleware
- 다형성
- mybatis
- React
- 리액트
- DB
- 배열
- 깃허브
- Pug
- 자바스크립트
- java
- 코딩테스트
- Today
- Total
목록Spring (11)
평행코드
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bOdQmh/btsClYcBIQL/lRvMpWzhaYF2SHpFBETa60/img.jpg)
🔆ResponseEntity 응답헤더와 바디를 제공 Spring Framework에서 제공하는 클래스 중 HttpEntity라는 클래스가 존재한다. 이것은 HTTP 요청(Request) 또는 응답(Response)에 해당하는 HttpHeader와 HttpBody를 포함하는 클래스이다. 🔆HttpEntity 클래스를 상속받아 구현한 클래스가 RequestEntity, ResponseEntity 클래스이다. ResponseEntity는 사용자의 HttpRequest에 대한 응답 데이터를 포함하는 클래스이다. 따라서 HttpStatus, HttpHeaders, HttpBody를 포함한다. 🔆fetch("${pageContext.request.contextPath}") 나중에 프로젝트올렸을때 경로를 못찾을 수 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dm0CG4/btsB1DHoTWe/Y2ll5dlNeqzlZ6QG5Mqxsk/img.jpg)
Security 적용하는 방법 1. security모듈 추가 2. security설정 → web.xml securityFilter를 등록 → 서비스별 인증, 권한에 대한 설정을 → springbeanconfigration.xml - security namespace가 제공하는 태그를 이용 - 인증방법, 서비스별 권한설정, 인증실패, 성공에 대한 설정, 인증페이지설정 등. pom.xml 암호화 처리를 위한 모듈 org.springframework.security spring-security-core ${org.springsecurity-version} org.springframework.security spring-security-web ${org.springsecurity-version} org.spri..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bPO2Fi/btsBY78UbR6/JCjEKMnQLes7CgEEmPv43K/img.jpg)
AOP (Aspect Orientied Programing) → 관점지향프로그래밍 → 공통의 관심사(서브기능)를 저장하는 aspect 클래스를 생성 Aspect클래스 선언하기 -pointcut : 타겟이 되는 메소드를 지정 → 패턴으로 지정(표현식) -advisor : 실행할 시점을 설정 → 실행할 메소드에 선언 → Before, After, Around(전후), AfterReturing, AfterThrowing AOP적용하기 1. xml 방식 spring bean configuration.xml에 aop namespace를 추가 반환 오브젝트 // 전 : proceed()메소드를 호출하기 전 로직 // 후 : proceed()메소드를 호출한 후 로직 log.debug("===== around befo..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lF0V1/btsBQTEAxfJ/o1cYSQwb0sG6DkSl8KH5vK/img.jpg)
spring이 제공하는 TransactionManager클래스를 이용 → DML 구문을 실행하면 기본적으로 commit(); 처리를 함 → 같은 세션에서 DML구문을 실행할때 RuntimeException이 발생을 하면 rollback(); 처리 트랜잭션설정하기 springconfigutation.xml에 txnamespace를 등록, 트랜잭션매니저를 bean으로 등록, root-context.xml 어노테이션방식 적용할 메소드의 선언부에 @Transational @Transactional(옵션설정) AOP방식을 이용해서 처리하기 때문에 AOP설정이 되어있어야함 xml 방식 tx:config 태그로 트랜잭션에 대한 설정 aop:config 태그로 적용할 메소드를 설정 트랜잭션 옵션설정 propagatio..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/nxQnH/btsBMT4Chqp/qKiLCxY3NtASdLIKbuYng0/img.jpg)
인터셉터 → 공통의 서비스를 구현할 때 사용 (ex 권한체킹할때) controller의 매핑메소드가 실행되기 전, 후, 응답처리 후 기능을 구현 인터셉터 구현하기 → Spring이 제공하는 HandlerInterCeptor인터페이스를 구현한 클래스를 선언 인터페이스에 정의된 필요한 추상메소드를 재정의 preHandler() postHandle() afterComplition() LogerInterceptor.java 파일 public class LoggerInterceptor implements HandlerInterceptor { //private Logger logger = LoggerFactory.getLogger(LoggerInterceptor.class); @Override public bool..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cvRQQA/btsBGWgKrgp/wBohpdHk6pLpq3hVEJk561/img.jpg)
pom.xml부분에 bean validator구현하는 라이브러리를 등록해준다 org.hibernate.validator hibernate-validator 6.2.5.Final dto부분 스프링에서 제공하느 어노테이션을 활용하여 validator 를 구현한다 public class Member { @NotEmpty(message = "아이디는 반드시 입력하세요") @Size(min = 4, message = "아이디는 4글자 이상 입력하세요") private String userId; @NotEmpty(message = "패스워드는 반드시 입력하세요") @Pattern(regexp = "(?=.*?[a-z](?=.*?[A-Z])(?=.*?[~!@#$%^&*()_+-=])[a-zA-Z~!@#$%^&*()_..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/2CLqe/btsBHsFVxKA/Cx8I7n5v9PDjGw0rI6hV2k/img.jpg)
파일로 로그남기기 log4j.xml파일안에 -> 원하는 경로 appender만들었으면 등록도 해줘야함 로그찍기원하는 곳에 가서 private final Logger logger = LoggerFactory.getLogger(MemberController.class); 이렇게 추가해주어야함다
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/JiQN0/btsBGviH9WI/nqdTpYQkTfTBKGQt4I5RdK/img.jpg)
root-context.xml 파일 3개의 DB연결에 필요한 bean을 등록함 1. Data연결정보를 저장하는 클래스 -> BasicDataSource클래스 2. SqlSession을 생성해주는 클래스 -> SqlSessionFactoryBean클래스 3. SqlSession 클래스 -> SqlSessionTemplate클래스 src/main/resources에 mappers폴더, mybatis-config.xml파일을 생성해준다. 생성시 템플릿이 없을경우, Preferences → XML Catalog → Add → Location, key에 입력 Location : http://mybatis.org/dtd/mybatis-3-config.dtd key : //mybatis.org/DTD Config 3..