Programming! 썸네일형 리스트형 Sonar : Performance - Inefficient use of keySet iterator instead of entrySet iterator 가끔 소나 누님이 내뱉는 크리티컬 문제이다. 예전( 1.5 이전?)에 Map을 KeySet에 의해 루프를 돌던 형태인데, 이경우 key에 의한 룩업 과정을 한번 더 거치게 되므로 성능상 불이익이 있다는 얘기란다. 사실 얼마나? 로 물어보면 딱히... 여튼 소스는 이렇게 수정했다. 이전 코드Set optionKeySet = optionsMap.keySet();for (Long optionKey : optionKeySet) { options.add(optionsMap.get(optionKey));}return options; 이후코드 for (Entry entry : optionsMap.entrySet()) {options.add(entry.getValue());}return options; 근데, 담겨지는.. 더보기 BigDecimal 의 divide 결과 java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result 아무리 BigDecimal이라고 해도 제한없는 숫자를 다룰 수는 없는 거지. divide시 필히 자리수와 결과셋을 지정해줘야 한다. bigDecimal.divide(bd, 2, BigDecimal.ROUND_CEILING); 요로코롬 더보기 리스트에서 Entity의 id를 Key로 갖는 Map으로 전환 public class Employee {..private Integer age;private String name; List employees = Lists.ne...;.... JSDK 7 Guava 위의 리스트에서 Entity의 id를 Key로 갖는 Map으로 전환 하고 싶다면 guava에서 다음과 같이 하자. Map employeeMap = Maps.uniqueIndex(employees, new Function() {public Integer apply(Employee employee) {return employee.getAge;}}); JSDK 8 Lamda// 중복의 경우 Map employeeMap = employees.stream().collect(Collectors.groupingBy(E.. 더보기 Guava Cache 10초 유지 LoadingCache private LoadingCache loadingCache = CacheBuilder.newBuilder().maximumSize(20).expireAfterAccess(10, TimeUnit.SECONDS).build(new CacheLoader() {public Optional load(Long key) {return Optional.fromNullable(get반환메소드(key));}}); public Integer getLoadingCache(final Long key) {try {return loadingCache.get(key).or(DEFAULT_QUANTITY);} catch (ExecutionException e) {...}return DEFAULT_.. 더보기 Mysql-Workbench password key store문제 Mysql-Workbench가 업뎃을 할때마다 나타나는 버그중 하나가 password 저장문제.. 아놔. 이거 은근 짜증나는게 열심히 sql 실행하고 있는데, 갑자기 password를 물어본다. ㅡㅡ; 그래서 이놈 어딘가에 connection관련 정보가 있을것이야를 생각하면서 home디렉토리를 뒤져봤더니 connections.xml이 있다. 오호라~ #]vi ~/.mysql/workbench/connections.xml.... 비번 .... 해서 password정보를 넣어주고 실행했더니.. 오잉? 안되네..ㅅㅂ 다시 connections.xml을 열어보니 열심히 쓰고 저장했던 password정보가 다 사라졌다. 흠.. 444로 파일 접근정보를 변경하니 오호라~~~ 이젠 아무것도 안물어보고 접속가능. #].. 더보기 이전 1 ··· 27 28 29 30 31 32 33 ··· 57 다음