*** 설명 ***
RAND() 함수를 ORDER BY 절에 사용.
*** 사용예 ***
SELECT * FROM table_name ORDER BY RAND();
MySql - 문자열을 날짜로 변경하기 (STR_TO_DATE)
*** 설명 ***
STR_TO_DATE 함수 사용
문자열 형식의 값을 날짜형식의 값으로 변경
DATE_FORMAT함수의 반대 기능
*** 사용예 ***
SELECT STR_TO_DATE('20161006182238', '%Y%m%d%H%i%s');
-> 2016-10-06 18:22:38
SELECT STR_TO_DATE('2016-10-06 18:22:38', '%Y-%m-%d %H:%i:%s');
-> 2016-10-06 18:22:38
SELECT STR_TO_DATE('2016/10/06 18:22:38', '%Y/%m/%d %T');
-> 2016-10-06 18:22:38
*** 사용되는 표현식 ***
표현식 설명
%M 월(Janeary, December, ...)
%W 요일(Sunday, Monday, ...)
%D 월(1st, 2dn, 3rd, ...)
%Y 연도(1987, 2000, 2013)
%y 연도(87, 00, 13)
%X 연도(1987, 2000) %V와 같이 쓰임.
%x 연도(1987, 2000) %v와 같이 쓰임.
%a 요일(Sun, Tue, ...)
%d 일(00, 01, 02, ...)
%e 일(0, 1, 2, ...)
%c 월(1, 2, ..., 12)
%b 월(Jan, Dec, ...)
%j 몇번째 일(120, 365)
%H 시(00, 01, 02, 13, 24)
%h 시(01, 02, 12)
%i 분(00, 01, 30)
%r "hh:mm:ss AM|PM"
%T "hh:mm:ss"
%S 초
%s 초
%p AM, PM
%w 요일(0, 1, 2) 0:일요일
%U 주(시작:일요일)
%u 주(시작:월요일)
%V 주(시작:일요일)
%v 주(시작:월요일)
STR_TO_DATE 함수 사용
문자열 형식의 값을 날짜형식의 값으로 변경
DATE_FORMAT함수의 반대 기능
*** 사용예 ***
SELECT STR_TO_DATE('20161006182238', '%Y%m%d%H%i%s');
-> 2016-10-06 18:22:38
SELECT STR_TO_DATE('2016-10-06 18:22:38', '%Y-%m-%d %H:%i:%s');
-> 2016-10-06 18:22:38
SELECT STR_TO_DATE('2016/10/06 18:22:38', '%Y/%m/%d %T');
-> 2016-10-06 18:22:38
*** 사용되는 표현식 ***
표현식 설명
%M 월(Janeary, December, ...)
%W 요일(Sunday, Monday, ...)
%D 월(1st, 2dn, 3rd, ...)
%Y 연도(1987, 2000, 2013)
%y 연도(87, 00, 13)
%X 연도(1987, 2000) %V와 같이 쓰임.
%x 연도(1987, 2000) %v와 같이 쓰임.
%a 요일(Sun, Tue, ...)
%d 일(00, 01, 02, ...)
%e 일(0, 1, 2, ...)
%c 월(1, 2, ..., 12)
%b 월(Jan, Dec, ...)
%j 몇번째 일(120, 365)
%H 시(00, 01, 02, 13, 24)
%h 시(01, 02, 12)
%i 분(00, 01, 30)
%r "hh:mm:ss AM|PM"
%T "hh:mm:ss"
%S 초
%s 초
%p AM, PM
%w 요일(0, 1, 2) 0:일요일
%U 주(시작:일요일)
%u 주(시작:월요일)
%V 주(시작:일요일)
%v 주(시작:월요일)
Java - StringBuilder와 StringBuffer의 차이
StringBuilder와 StringBuffer의 차이는 멀티쓰레드 지원 여부.
*** StringBuilder ***
멀티쓰레드에서 동기화 지원 X
StringBuffer 보다 빠름
*** StringBuffer ***
멀티쓰레드에서 동기화 지원 O
StringBuilder 보다 느림
*** StringBuilder ***
멀티쓰레드에서 동기화 지원 X
StringBuffer 보다 빠름
*** StringBuffer ***
멀티쓰레드에서 동기화 지원 O
StringBuilder 보다 느림
Java - 만 나이 계산
*** 생년월일을 기준으로 현재 나이 계산 ***
public int getAge(int birthYear, int birthMonth, int birthDay)
{
Calendar current = Calendar.getInstance();
int currentYear = current.get(Calendar.YEAR);
int currentMonth = current.get(Calendar.MONTH) + 1;
int currentDay = current.get(Calendar.DAY_OF_MONTH);
int age = currentYear - birthYear;
// 생일 안 지난 경우 -1
if (birthMonth * 100 + birthDay > currentMonth * 100 + currentDay)
age--;
return age;
}
public int getAge(int birthYear, int birthMonth, int birthDay)
{
Calendar current = Calendar.getInstance();
int currentYear = current.get(Calendar.YEAR);
int currentMonth = current.get(Calendar.MONTH) + 1;
int currentDay = current.get(Calendar.DAY_OF_MONTH);
int age = currentYear - birthYear;
// 생일 안 지난 경우 -1
if (birthMonth * 100 + birthDay > currentMonth * 100 + currentDay)
age--;
return age;
}
JQuery 화면 로딩 후 버튼 클릭 이벤트 발생시키기
*** 설명 ***
화면 로딩 후 이름이 searchButton인 버튼의 클릭 이벤트를 실행
*** Sample ***
$(window).bind("load", function() {
$("#searchButton").trigger("click");
});
Java - 이미지 크기 변경
String imgSourcePath= "test_image.jpg"; // 원본 이미지 파일명 (경로 포함)
String imgTargetPath= "test_imageNew.jpg"; // 새 이미지 파일명(경로 포함)
String imgFormat = "jpg"; // 새 이미지 포맷. jpg, gif 등
int newWidth = 640; // 새 이미지 넓이
int newHeight = 360; // 새 이미지 높이
imgResize(imgSourcePath, newImgFilePath, imgFormat, newWidth, newHeight);
/**
* Image Resize
*/
public void imgResize(String imgSourcePath, String imgTargetPath, String imgFormat, int newWidth, int newHeight)
{
try
{
// 원본 이미지 가져오기
Image imgSrc = ImageIO.read(new File(imgSourcePath));
// 이미지 리사이즈
// Image.SCALE_DEFAULT : 기본 이미지 스케일링 알고리즘 사용
// Image.SCALE_FAST : 이미지 부드러움보다 속도 우선
// Image.SCALE_SMOOTH : 속도보다 이미지 부드러움을 우선
// Image.SCALE_AREA_AVERAGING : 평균 알고리즘 사용
Image resizeImage = imgSrc.getScaledInstance(newWidth, newHeight, Image.SCALE_SMOOTH);
// 새 이미지 저장하기
BufferedImage newImage = new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB);
Graphics g = newImage.getGraphics();
g.drawImage(resizeImage, 0, 0, null);
g.dispose();
ImageIO.write(newImage, imgFormat, new File(imgTargetPath));
}
catch (Exception e)
{
}
}
String imgTargetPath= "test_imageNew.jpg"; // 새 이미지 파일명(경로 포함)
String imgFormat = "jpg"; // 새 이미지 포맷. jpg, gif 등
int newWidth = 640; // 새 이미지 넓이
int newHeight = 360; // 새 이미지 높이
imgResize(imgSourcePath, newImgFilePath, imgFormat, newWidth, newHeight);
/**
* Image Resize
*/
public void imgResize(String imgSourcePath, String imgTargetPath, String imgFormat, int newWidth, int newHeight)
{
try
{
// 원본 이미지 가져오기
Image imgSrc = ImageIO.read(new File(imgSourcePath));
// 이미지 리사이즈
// Image.SCALE_DEFAULT : 기본 이미지 스케일링 알고리즘 사용
// Image.SCALE_FAST : 이미지 부드러움보다 속도 우선
// Image.SCALE_SMOOTH : 속도보다 이미지 부드러움을 우선
// Image.SCALE_AREA_AVERAGING : 평균 알고리즘 사용
Image resizeImage = imgSrc.getScaledInstance(newWidth, newHeight, Image.SCALE_SMOOTH);
// 새 이미지 저장하기
BufferedImage newImage = new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB);
Graphics g = newImage.getGraphics();
g.drawImage(resizeImage, 0, 0, null);
g.dispose();
ImageIO.write(newImage, imgFormat, new File(imgTargetPath));
}
catch (Exception e)
{
}
}
피드 구독하기:
글 (Atom)