Programming/java 24

[java] Client의 웹브라우저 종류 조회

Client의 웹브라우저 종류 조회 public static String getClntWebKind(HttpServletRequest request) throws Exception {String user_agent = request.getHeader("user-agent"); // 웹브라우저 종류 조회String webKind = "";if (user_agent.toUpperCase().indexOf("GECKO") != -1) {if (user_agent.toUpperCase().indexOf("NESCAPE") != -1) {webKind = "Netscape (Gecko/Netscape)";} else if (user_agent.toUpperCase().indexOf("FIREFOX") != -1)..

Programming/java 2015.04.24

[java] Client의 웹브라우저 버전 조회

Client의 웹브라우저 버전 조회 public static String getClntWebVer(HttpServletRequest request) throws Exception {String user_agent = request.getHeader("user-agent"); // 웹브라우저 버전 조회String webVer = "";String [] arr = {"MSIE", "OPERA", "NETSCAPE", "FIREFOX", "SAFARI"};for (int i = 0; i < arr.length; i++) {int s_loc = user_agent.toUpperCase().indexOf(arr[i]);if (s_loc != -1) {int f_loc = s_loc + arr[i].length()..

Programming/java 2015.04.24

[java] Client IP 조회

Client IP 조회 서버에 접속하는 클라이언트의 아이피를 확인하기 위해서는HttpServletRequest 객체를 이용하면 된다고 한다.request.getRemoteAddr(); 하지만 Load Balancer나 프록시 같은 경우는 정확한 아이피 정보를가져오지 못 한다고 한다. 그래서 다음과 같은 메소드를 이용한다.localhost에서 테스트 할 경우 0:0:0:0:0:0:0:1 값으로 넘어 오는 경우가 있는데이 값은 IPv6에서 IPv4의 127.0.0.1와 같은 값이다. 127.0.0.1로 받아오려면 톰캣 vm arguments에 아래와 같이 추가하여 준다. vm arguments-Djava.net.preferIPv4Stack=true java public String getClientIP(Ht..

Programming/java 2015.04.24

[java] 임시 비밀번호 만들기

임시 비밀번호 만들기 비밀번호를 재발급해줄 때 사용할 수 있는 임시 비밀번호. 1. 원하는 길이의 랜덤 비밀번호 생성 (매개변수 : 사이즈)public static String temporaryPassword(int size) {StringBuffer buffer = new StringBuffer();Random random = new Random();String chars[] = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,0,1,2,3,4,5,6,7,8,9".split(",");for (int i = 0; i < size; i++) {buffer.append(..

Programming/java 2015.04.03

[java] java JSON 데이터 파싱

java JSON 데이터 파싱 자바 코드안에서 해당 URL 접속 후 응답받은 JSON객체를 파싱하는 예제 JSON Simple maven dependency com.googlecode.json-simplejson-simple1.1.1 Methodtry{// 위도, 경도String location = lat + "," + lng;// APIString weatherApi = "http://api.wunderground.com/api/" + apikey + "/conditions/lang:us/q/" + location + ".json"; // java.net.URLURL url = new URL(weatherApi);// Connection 객체를 InputStreamReader로 읽고 utf-8로 인코딩..

Programming/java 2015.01.20

[java] Geocoder을 이용해 주소를 위도/경도로 변환하기

Geocoder을 이용해 주소를 위도/경도로 변환하기 Geocoding이란 주소를 위도, 경도로 변환해주는 Google에서 제공하는 API이다. 링크 : 지오코딩이란? 처음엔 HttpURLConnection으로 접속해서 InputStreamReader로 읽은 후 JSON으로 파싱하게만들었었는데 외국 사이트에 geocoder 라이브러리를 이용하여 받아오는 예제가 있었다.어쨌든 더 편리하고 깔끔하게 해결되었다. Geocoder Maven dependencycom.google.code.geocoder-javageocoder-java0.16 Methodpublic static Float[] geoCoding(String location) {if (location == null) return null; Geoco..

Programming/java 2015.01.16

[java] 몇 분전, 몇 시간전, 몇 일전 표현 Util

몇 분전, 몇 시간전, 몇 일전 표현 Util private static class TIME_MAXIMUM { public static final int SEC = 60; public static final int MIN = 60; public static final int HOUR = 24; public static final int DAY = 30; public static final int MONTH = 12; } public String calculateTime(Date date) { long curTime = System.currentTimeMillis(); long regTime = date.getTime(); long diffTime = (curTime - regTime) / 1000; St..

Programming/java 2014.12.11