목록program (74)
yoursyun
유일한 파일명으로 변경 처리 while (uploadFile.exists()) {nmFile = nmFile.substring(0, nmFile.indexOf(".")) + "(" + i + ")" + nmFile.substring(nmFile.indexOf("."), nmFile.length());uploadFile.renameTo(new File(uploadRepository + nmFile));i++;}
Map Foreach 처리 import java.util.Map;import java.util.Map.Entry; for (Map.Entry item : files.entrySet()) {System.out.println("key : " + item.getKey());}
Eclipse 에서 SpringMVC를 MAVEN 으로 개발 환경 셋팅 Eclipse 에서Maven Project 를 이용하여 Spring MVC 개발 환경을 만들어 보자.Dynamic Web Project > Spring 환경 추가 > WebContents > lib 에 Spring lib 추가 등을 통해 작성 했었지만, 지난 포스트와 같이 Maven을 통하여 동일한 루트를 구현 하고자 한다. 1. Kepler 버전에서 ( JavaEE ) 을 설치하면 Spring, Maven 등 다양한 환경이 미리 준비 되어 있다. ( 없다면 마켓플레이스 - 이클립스 HELP 메뉴 - 를 통해 설치한다.)2. File > New > New Maven project 선택3. New Maven project 에서org.a..
Spring의 사용 스프링 개발 환경 설정은 다음의 포스트를 참조한다. http://yoursyun.tistory.com/94 1. 스프링은 Factory Parttern 에 대하여 스프링이 Bean(인스턴스)를 구현한다. 우리가 객체지향개발에서 Class 에 대해 인스턴스화 할때, ClsHello Bean = new ClsHello();와 같이 사용을 한다. 이와 같은 강한 결함(의존)관계는 추후에 유지 보수에 많은 어려움을 따르게 하므로,아래와 같은 사용방법을 추천 하고 있다.InterFaceHello Bean = new ClsHello(); // 여기서 ClsHello 는 interFaceHello 를 Extends 받는다.위와 같은 개발 형태의 장점은 Bean (인스턴스) 에 상속받은 다양한 클래..
Android 4.2 에뮬레이터에서 한글이 표기 되지 않고, 애뮬레이터에도 한글이 없다. 1. Android SDK Manager에서 "MIPS System Image"를 다운로드2. AVD에서 받은 이미지를 사용하도록 설정
안드로이드에서 제공하는 ADT Eclipse 툴을 설치하면,SDK 던 AVD등을 설정 할 필요 없이 바로 프로젝트를 생성하고 실행 할 수 있는데. AVD설정을 한상태에서 Failed to allocate memory: 8 오류가 발생하여 에뮬레이터가 작동 되지 않는 경우가 있다. 이때는 다음의 위치로 이동하여 메모리 사이즈를 설정 하고 저장 후,실행하면 정상 실행 된다. (Window7 기준) C:\Users\사용자이름\.android\avd\AVD_for_Nexus_4_by_Google.avd\config.ini에서, 항목 hw.ramSize에 2G를 할당 하였다. hw.ramSize=2048M 메모리 용량에 따라 에뮬레이터 동작이 아주조금 원활 해진다.
1. DLL 을 GAC 에 등록 - gacutil 위치에서 ( c:\Program Files\Microsoft SDKs\Windows\v6.0A\bin- 등록 gacutil /i C;\inetpub\wwwroot\xxx\Bin\xx.dll 2. DLL 을 COM 에 등록- c:\windows\Microsoft.NET\Framework\v2.0.50727 경로에 등록하려는 DLL 복사- 등록 regasm XX.dll /tlb:XXtlb
윈도우 종료 : System.Diagnostics.Process.Start("cmd.exe","ShutDown.exe -s -f -t 00");원도우 재부팅 : System.Diagnostics.Process.Start("cmd.exe","ShutDown.exe -r -f -t 00");특정폴더 열기: System.Diagnostics.Process.Start("explorer.exe","C:\Temp”);특정사이트열기 : System.Diagnostics.Process.Start(“explorer.exe”, “http://www.naver.com”);도스명령어 실행 : System.Diagnostics.Process.Start(“cmd.exe”, “*/c dir”);
$(this) → 현재 HTML 엘리먼트$(“p") → 모든 엘리먼트$(“p.intro") → class="intro"인 모든 엘리먼트$(“p#intro") → id="intro"인 모든 엘리먼트$(“p#intro:first") → id="intro"인 첫 번째 엘리먼트$(“.intro") → class="intro"인 모든 엘리먼트$(“#intro") → id="intro"인 첫 번째 엘리먼트$(“ul li:first") → 첫 번째 ul의 첫 번째 li 엘리먼트$(“ul li:first-child") → 모든 ul의 첫 번째 li 엘리먼트$(“[href$='.jpg']") → ".jpg"로 끝나는 href 특성을 가진 모든 엘리먼트$(“div#intro .head") → id="intro"인 div ..
@Controllerpublic class HomeController {// 1. String 리턴방식@RequestMapping(value = "/", method = RequestMethod.GET)public String home(Model model, HttpServletRequest request) {return "home"; // 뷰이름}// 2. ModelAndView 리턴방식@RequestMapping(value = "/", method = RequestMethod.GET)public ModelAndView home(HttpServletRespose response, HttpServletRequest request) {ModelAndView modelAndView = new ModelAnd..
echo "기본함수";basic("가", "나");function basic($p1, $p2){ echo $p1.$p2;}echo "참조전달";// 참조 전달$j = 10;ref($j);function ref(&$p1){ $p1 = $p1 + 1;}echo $j;echo "참조 리턴";// 참조 리턴function &rtnref(){ return "Hello Me";}$funvar = &rtnref();function depth1($pfunvar){ return "1dep : ".$pfunvar;}echo depth1($funvar);echo "배열 리턴";$a = rtnArr();function rtnArr(){ return array(1, 2, 3);}foreach ($a as &$i){ echo "..
class Man { var $name; var $age; function Man() { $this->name = "jin"; $this->age = "23"; } function intro() { echo "저는 $this->name 입니다. 나이는 $this->age입니다. 반갑습니다."; }}class Emp Extends Man { var $empno; function empIntro() { echo "제사번은 $this->empno 입니다."; }}$me = new Man;// $me->name = "yun";// $me->age = "37";$me->intro();echo "상속 된 클래스";$empMe = new Emp;$empMe->name = "yun";$empMe->age = "..
// 데이터 베이스 연결 $conn = mysql_connect("localhost", "아이디", "비밀번호"); mysql_select_db("mysql", $conn); // 쿼리 실행 $result = mysql_query($query, $conn); // 당변수를 bool 검사하여 정상 처리 되었는지 확인.// 가져온 레코드셋 항목 찾기 mysql_data_seek($result, 레코드셋번호); // 행 찾기 $rows = mysql_fetch_array($result); // 찾은 행에 대하여 배열로 가져 온다. $row[열이름 or 열배열위치] // 찾은 행의 찾을 컬럼.// 한 행만 읽어 오는 경우 $onerow = mysql_fetch_row($result); $onerow[열이름 or..
decimal um_prod = 150.5m;// 원단위 반올림 um_prod = Math.Round(um_prod / 10) * 10;// 원단위 버림 um_prod = Math.Truncate(um_prod / 10) * 10;// 원단위 올림 // um_prod = Math.Ceiling(Math.Truncate(um_prod) / 10) * 10;잉 ~ 이럼 안대나 ?
JQuery 이벤트 , 메소드 JQuery e.preventDefault() - 대상을 클릭했을때 발생하는 이벤트를 방지(링크 이동 등등 막기)$(this) - 현재 이벤트가 적용된 개체 (DOM).ready(fn); - 페이지 로딩시 fn 실행.click(fn); - 클릭시 fn 실행.one(fn); - 딱한번만 이벤트가 실행되고 해제됨.dblclick(fn) - 더블클릭시 fn실행.blur(fn) - 포커스를 잃었을때 fn실행.focus(fn) - 포커스를 얻었을때 fn실행.toggle(fn1,fn2); - 클릭시 fn1 과 fn2을 번갈아 실행.scroll(fn) - window 창에서 scroll 이벤트가 발생할때마다 콜백함수 fn 을 실행.change(fn) - 대상이 바뀌는 지 감..
IIS 서버를 활용하여 .net 리모팅을 이용한 분산 응용프로그램 개발.서버를 만들어서 작업 할 수 도 있지만, 방화벽 설정과 포트설정등 설정이 귀찮고 (서버가 이사를 간다던가... ), 서버를 만들면 서비스에 올려 놔야 맘편히 살수 있기 때문에 IIS를 이용하여 작업 하는것이 여러모로 편해 보인다.1. IIS 서버에 응용프로그램을 만든다. 2. 만들어진 응용프로그램 폴더에 web.config 파일을 넣는다.Web.config ============================================================================= [[ Web.config =======================================================..
COM+ 극 초보 입장으로 ~ 1. sn -k 프로젝트명.snk VS 명령프롬프트에서 강력한 이름을 갖게 하기 위해 실행 ( 응 ? 이 의미는 프로젝트 파일을 빌드 후 특정 system에 해당 COM+ 설치시 똑같은 짓을 하라는 ! ) 2. COM+ 사용될 프로젝트 속성에서 "서명"탭 선택 어셈블리 서명 체크 아까 만든 강력한 이름 키파일 선택 3. 프로젝트를 build 후 프로젝트 라이브러리 생성된 폴더로 이동 ( bin/Debug ) regsvcs 프로젝트명.dll 작업시 설치 되었다는 메시지가 나온다면, "프로젝트명.tlb" 파일 생성 4. regedit (레지스터 편집기), 구성요소서비스 > COM+응용프로그램에 등록 되었다면 정상적으로 처리 됨. 5. COM+ 를 사용하고자 하는 프로젝트에서 참..
.NET에서 클래스 라이브러리(dll) 형태로 개발. COM 서비스에 등록(RegAsm.exe) 다른 언어 혹은 .NET 에서 이를 인스턴스 화 하여, 해당 서비스를 이용한다. 간단하게 1 SYSTEM 에 특정언어로 ( C, C++, C# 등등 ) 으로 라이브러리를 개발 하여 설치하고, 어떤 언어던지 COM 으로 등록된 오브젝트를 참조하여, 개발 하기 위해 사용 한다. 뭐 네트워크를 통한 공유 라이브러리 라던지 뭐 그런 형식을 DCOM 에서 사용 하는것 같은데 현재로선 DCOM 개발 방식 보다, .Net Remoting 방식으로 개발 하는것을 추천 하는것 같다. 1. Class library 생성 2. RegAsm 을 사용 COM 서비스 등록 3. TlbExp 을 사용 .NET 환경..
string nameSpace = "네임스페이스"; string nameForm = "폼이름"; Assembly ab = Assembly.GetExecutingAssembly(); Form frm = (Form)ab.CreateInstance(string.Format("{0}.{1}", nameSpace, nameForm) , false , BindingFlags.CreateInstance , null , new object[] { "안녕 ?" } // 생성자 매개 변수 등이 있다면 여기에 ... , null , null); frm.Show(); CreateInstance 메서드 파라메터는 MSDN 이나 구글 참조 하시길...
Delegate 를 통하여 폼간의 이벤트 제어를 하는 법. 시나리오 부모 폼에서 이벤트를 발생하여, 자녀 폼의 이벤트를 실행. 아래 예제는 간단한 문자열을 부모폼에서 넘겨 자녀의 레이블에 출력 하는 예제. 부모Form 클래스 { // delegate 이벤트선언 public delegate void FormSendDataHandler(string data); public event FormSendDataHandler FormSendEvent; void btn_Click(object sender, EventArgs e) { this.FormSendEvent("부모폼에서 버튼을 클릭하였습니다."); } void 자녀폼열기_Click(object sender, EventArgs e) { Form2 f2 = ne..
문자열을 숫자로 : Convert.ToInt32("문자열"); 소숫점이하 반올림 : Math.Floor(숫자); 소숫점이하 버림 : Math.Truncate(숫자); 소숫점 3자리 이하 버림처리 decimal d = -0.0035m; d = Math.Truncate(d * 1000) / 1000; 2자리는 1000 을 100 으로 변경한다.
Active Directory 서버 LDAP 로 사용자 계정 추가하기 * DN 구문 예제 : "LDAP://컴퓨터IP 및 이름/OU=조직구성단위,DC=도메인,DC=com(도메인종류)" DirectoryEntry de = new DirectoryEntry(DN구문); de.Username = AD 서버 로그인 계정; de.Password = AD 서버 로그인 암호;NewUser = de.Children.Add(string.Concat("CN=", userNm), "user"); NewUser.Properties["sAMAccountName"].Value = 사용자로그인계정아이디; NewUser.Properties["userPrincipalName"].Value = 사용자로그인계정아이디. xxx@xxx.co..
DataTable - LEFT OUTER JOINusing System.Linq; var query = from o in LeftTable.AsEnumerable() // 부모테이블 join e in RightTable.AsEnumerable() // 자녀테이블 on (string)o["logon_cd"] equals (string)e["adlogon_cd"] into gj // 비교 하고자 하는 key 값 from adList in gj.DefaultIfEmpty() // 비교 key null 체크 : 이걸 빼버리면 inner join 결과를 얻을 수 있습니다. select new // 결과 집합을 query 변수에 생성 : 여기서 값을 가공 할수 있습 니다. { logon_cd = (string)o[..
웹서버 - 스토리지서버 인경우에 빌드한 소스를 스토리지에 넣어 이용 해야 할 경우 다음과 같이 권한에 대한 설정 을 진행 해 주어야 한다. * 아래와 같이 네트워크 구성이 되는 경우를 말함. 웹서버 1 웹서버 2 스토리지서버 웹서버 3 ----------> 빌드된소스 ..... 1. 웹서버와 스토리지 서버의 공유 하고자 하는 폴더에 동일한 계정 생성. 2. 홈디렉터리 (가상) 디렉터리의 설정시 생성한 계정을 적용 한다. ( 연결계정, 사이트 접근계정을 동일 하게 처리 함 ) 3. 웹서버에서 관리자 계정으로 cmd 창 오픈 4. 다음의 directory 로 이동 cd C:\Windows\Microsoft.NET\Framework\v2.0.50727 5. 명령 실행 : caspol -m -ag 1. -url..
DataTable 데이터 = new DataTable(); 데이터.Columns.Add("컬럼명"); DataRow 데이터의행; 데이터의행 = 데이터.NewRow(); 데이터의행["컬럼명"] = "임의의 데이터 입력"; 데이터.Rows.Add(데이터의행); 끗.
숫자값.ToString().PadLeft(3, '0'); // 3자리를 기준으로 0 값을 채워라
DateTime to "YYYYMMDD"
for (int i = 0; i DataRow findRow = ObjectDataSet.Tables[pcode].Rows.Find(findCode); findRow[컬럼명].toString();
private DateTime ConvertToDate(string strDate) { return DateTime.ParseExact(strDate, "yyyyMMdd", System.Globalization.DateTimeFormatInfo.InvariantInfo, System.Globalization.DateTimeStyles.None); }
2009년 09월 22일 [번역] Private Members in JavaScript -Douglas Crockford http://javascript.crockford.com/private.html JavaScript 는 세상에서 가장 오해받는 언어이다. 일부에선, private (속성의;역자) instance 변수와 메소드의 부재로 인해, 객체의 '정보 은닉' 기능이 결여되어 있다고 믿기도 한다. 그러나 이것은 오해다. JavaScript 객체는 private 멤버를 가질 수 있다. 여기 해답이 있다. Objects JavaScript 는 근본적으로 거의 object 이다. Array type도 object 이고, Function type도 object 이며, Object type도 object 이..