mjon_git/src/main/java/itn/com/cmm/util/WebUtil.java
2023-06-12 11:15:02 +09:00

81 lines
2.3 KiB
Java

package itn.com.cmm.util;
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import javax.servlet.http.HttpServletRequest;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import itn.com.cmm.ComDefaultVO;
public class WebUtil {
/**
* MD5
* @return
*/
public String convertToHex(byte[] data ){
StringBuffer buf = new StringBuffer();
for( int i=0; i< data.length; i++){
int halfbyte = (data[i] >>> 4 ) & 0x0F;
int two_halfs =0;
do{
if((0 <= halfbyte) && (halfbyte <= 9))
buf.append((char)('0' + halfbyte));
else
buf.append((char)('a' + ( halfbyte - 10)));
halfbyte =data[i] & 0x0F;
}while(two_halfs++ < 1);
}
return buf.toString();
}
//private static String MD5(String text ) throws NoSuchAlgorithmException, UnsupportedEncodingExecption {
public String MD5(String text ) throws NoSuchAlgorithmException, UnsupportedEncodingException {
MessageDigest md;
md = MessageDigest.getInstance("MD5");
byte[] md5hash=new byte[32];
md.update(text.getBytes("iso-8859-1"),0,text.length());
md5hash=md.digest();
return convertToHex(md5hash);
}
public boolean isMobile(HttpServletRequest request){
String userAgent = request.getHeader("user-agent");
boolean mobile1 = userAgent.matches(".*(iPhone|iPod|Android|Windows CE|BlackBerry|Symbian|Windows Phone|webOS|Opera Mini|Opera Mobi|POLARIS|IEMobile|lgtelecom|nokia|SonyEricsson).*");
boolean mobile2 = userAgent.matches(".*(LG|SAMSUNG|Samsung).*");
if(mobile1 || mobile2) { return true; }
return false;
}
/**
* 페이징 객체 생성
* @param tmpVO - extends ComDefaultVO
* @param paginationInfo
* @param searchListCnt - 목록 건수
* @param totCnt - 전체 건수
*/
public static PaginationInfo getPageing(Object tmpVO, int searchListCnt) {
PaginationInfo paginationInfo = new PaginationInfo();
ComDefaultVO vo = (ComDefaultVO) tmpVO;
vo.setPageUnit(searchListCnt);
paginationInfo.setCurrentPageNo(vo.getPageIndex());
paginationInfo.setRecordCountPerPage(vo.getPageUnit());
paginationInfo.setPageSize(vo.getPageSize());
vo.setFirstIndex(paginationInfo.getFirstRecordIndex());
vo.setLastIndex(paginationInfo.getLastRecordIndex());
vo.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
return paginationInfo;
}
}