일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
- git
- interface
- ai
- centos
- Github
- java
- learning
- Deep
- DeepLearning
- mysql
- Spring
- 함수
- Numpy
- 자바
- Server
- Pattern
- Python
- error
- javascript
- Analysis
- Security
- Web
- data
- LIST
- mariaDB
- Linux
- 인공지능
- framework
- db
- SSH
- Today
- Total
목록Spring (33)
PostIT
http://cafe.naver.com/msjava/550 값이 같은가? 에 대한 비교로 보통 "== ", "!=" 을 많이 사용한다 이는 jstl에서도 마찬가지면 숫자와 문자 구분은 따움표로 구만해서 사용하는데 이대신 eq, ne를 사용하는것과 list, map 같은 객체가 값이 있느냐 없느냐의 구분하는 용도로 empty 를 사용 할 수 있다. 사용법은 아래와 같다 =============================================== Sample =============================================Ex) eq (==)1. // null2. // 숫자3. // 문자 Ex) empty = // list, map 객체 등= // 비어 있지 않은 경우 Ex) ne ..
* @ModelAttribute와 @SessionAttribute에 대한 정보 @MVC에는 개발자들에게 프로그래밍을 예술의 경지까지 승화시켜주는 다양한 기술들이 존재하지만 그 중에서도 가장 아름다운 것을 꼽으라면 어노테이션을 통한 자동 객체변환을 꼽을 수 있겠다. 그리고 그 자동 객체변환 기술 중에서도 가장 아름다운 것은 @SessionAttributes와 @ModelAttribute… 개인적인 느낌으론 그야말로 객체변환의 결정체라고 할 수 있겠다. @ModelAttribute 먼저 @ModelAttribute를 살펴보자. 필자가 @MVC를 처음 접했을 때는 어노테이션이라는 것 마저도 굉장히 생소했고 어노테이션만으로 이런 말도 안되는 기술이 구현가능하다는 사실에 깜짝 놀랐었다. 몸만 안 자빠졌을 뿐이지 ..
* Commons DBCP 이해하기http://d2.naver.com/helloworld/51027922015.10.21|29520데이터베이스와 애플리케이션을 효율적으로 연결하는 커넥션 풀(connection pool) 라이브러리는 웹 애플리케이션에서 필수 요소입니다. 웹 애플리케이션 서버로 상용 제품을 사용하다면 보통 제조사에서 제공하는 커넥션 풀 구현체를 사용합니다. 그 외에 오픈소스 라이브러리로 Apache의 Commons DBCP와 Tomcat-JDBC, BoneCP, HicariCP 등이 있습니다.커넥션 풀 라이브러리를 잘 사용하면 데이터베이스와 애플리케이션의 일부분에서 발생하는 문제가 전체로 전파되지 않게 할 수 있고, 일시적인 문제가 긴 시간 이어지지 않게 할 수 있습니다. 반대로 값을 적절..
* Spring 다국어처리 Locale Resolver http://yookeun.github.io/java/2015/08/12/spring-i18n/스프링에서 다국어처리는 의외로 간단하다, 특히 사용자가 언어를 자유롭게 설정하는 부분도 쉽게 가능하다. 아래와 같이 화면처리를 하고자 한다.브라우저의 설정된 언어값을 읽어오거나, 아니면 디폴트 언어설정을 지정하거나, 링크를 통해 자유롭게 언어를 바꾸는 화면이다.그런데 한 가지 주의사항이 있다.보통 웹사이트에 루트페이지 즉, home.jsp(=index.jsp)에서 다국어처리가 하는 경우가 대부분일 것이다. 그런데 이부분이 web.xml에 기재되는데home /WEB-INF/views/home.jsp 이런 상태로 다이렉트로 home.jsp페이지로 이동하면 안된..
많은 사이트들을 돌아다니고 참고해도, 이거 한줄이면 Proxy를 넘어 아이피를 가져올 수 있다고 한다. public String getUserIP(HttpServletRequest request) { String ip = request.getHeader("X-FORWARDED-FOR"); logger.info("TEST : X-FORWARDED-FOR : "+ip); if (ip == null) { ip = request.getHeader("Proxy-Client-IP"); logger.info("TEST : Proxy-Client-IP : "+ip); } if (ip == null) { ip = request.getHeader("WL-Proxy-Client-IP"); logger.info("TEST :..
* Scheduler에 쓰이는 Cron 표현식에 대한 정리. A Cron ExpressionsCron expressions are used to configure instances of CronTrigger, a subclass of org.quartz.Trigger. A cron expression is a string consisting of six or seven subexpressions (fields) that describe individual details of the schedule.These fields, separated by white space, can contain any of the allowed values with various combinations of the allowe..
# 스프링의 트랜잭션에 대한 설명 및 속성들 는 스프링 트랜잭션 기술의 집약체입니다. 스프링의 트랜잭션 기술은 전장에서도 말했듯이 어노테이션 적용법과 AOP 적용법 2가지가 있으며 위의 예제는 당연히 AOP 적용법입니다. 먼저 로 트랜잭션 어드바이스를 하나 만듭니다. 여기에 적용한 트랜잭션을 선택하는데 만약 트랜잭션 빈의 이름이 'transactionManager'이라면 위의 'transaction-manager' 속성은 생략될 수 있습니다. 위의 예제에서는 다만 원리를 설명하기 위해 속성을 넣어둔 것 뿐이므로 현재 'transaction-manager'은 생략이 가능하다 할 수 있겠네요. 그다음 의 로 세밀하게 메서드별 속성을 조절해주도록 합시다. 우리는 이 부분에서 어느 메서드에 트랜잭션을 적용할 것..
* Spring Transaction의 속성에 대한 이해 모든 트랜잭션이 같은 방식으로 동작하는 건 아니다. 전체가 같이 실패하거나 성공하는 하나의 작업으로 묶인다는 점에서는 다를바 없겠지만, 세밀히 따져보면 몇 가지 차이점이 있다. 스프링은 트랜잭션의 경계를 설정할 때 네 가지 트랜잭션 속성을 지정할 수 있다. 또, 선언적 트랜잭션에서는 롤백과 커밋의 기준을 변경하기 위해 두 가지 추가 속성을 지정할 수 있다. 선언적 트랜잭션 기준으로 보자면 모든 트랜잭션 경계는 여섯 가지 속성을 갖고 있는 셈이다.트랜잭션 속성의 지정은 tx/aop 스키마의 태그를 이용하는 경우에는 다음과 같이 태그의 애트리뷰트로 지정할 수 있다. 의 애트리뷰트는 메소드 이름 패턴을 담은 name 애트리뷰트를 제외하면 모두 디폴트 값..
-로그인 접속자의 아이피를 요청하는 메소드를 통해서 에러메세지가 발생되었다. 요청을 조건 안에서 찾을 수 없다는 메세지로 해석했는데 찾아보니, 밑의 리스너를 넣어주면 해결이 된다.문제는 IPv6로 출력되는 값을 IPv4로 전환해야되는데, 이클립스 내에 설정을 바꾸는 것으로 해결이 되는것인지, Java로 설정을 해줘야하는지를 알아봐야할 것 같다. SolutionTo fix it, register a RequestContextListener listener in web.xml file.File : web.xml org.springframework.web.context.request.RequestContextListener
AOP를 처음으로 사용해보면서, 문제되는 사항 그리고 그에 대한 해결책을 찾아 올려보고자 한다. 1. AOP사용시 HttpServletRequest, HttpServletResponse 를 사용할 수 있는 방법. - AOP에서는 HttpServletRequest를 이용하면 에러가 발생하게 된다. 한 1시간 넘게 고생한거 같다... 아래 사항으로 선언해서 사용하면 문제없이 AOP에서도 사용할 수 있다. HttpServletRequest 만들기HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest(); HttpServletResponse 만들기 HttpSer..