목록분류 전체보기 (166)
yoursyun
안드로이드에서 제공하는 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 메모리 용량에 따라 에뮬레이터 동작이 아주조금 원활 해진다.
Apache, Subversion, TortoiseSVN 연동 1. 각각의 파일들을 다운로드 후 설치 한다.설치 순서는 Apache → Subversion → TortoiseSVN 순 이며, 설치 파일은 아래 링크 참조http://httpd.apache.org/download.cgihttp://www.collab.net/downloads/subversion http://tortoisesvn.net/downloads.html ( 이전 포스트 참조 하여 설치 ) 2. 저장소를 설정한다.subversion 명령어로 설정 할 수 도 있지만, TortoiseSVN 이 편하므로 이를 사용. 이하 "C:\svn\project1" 기준 으로 설명. 2-1. project1에서 마우스 우클릭 > TortoiseSVN >..
Tortoisesvn를 아래 사이트로 접속http://tortoisesvn.net/downloads.htmlsvn 과 language packs(Korea) 다운로드 후 각각 설치 진행 설치후 셋팅 1. 저장소 폴더를 생성 (SVN 관리 폴더)예제로 D:\Repo\Project 라는 폴더 생성. 2. Project 폴더에서 마우스 우클릭 TortoiseSVN > 현재 위치에 저장소 생성 클릭.생성후 폴더구조 생성 버튼 ( 이 예제는 폴더구조생성버튼을 클릭 하지 않고 진행함 ) > 확인버튼 위 처리 후 디렉토리에 생성된 결과 3. SVN 관리 할 프로젝트의 폴더에서 마우스 우클릭 TortoiseSVN > 임포트저장소 URL:은 1셋팅 위치 이지만 안보이는 경우는 1의 경로를 입력후 확인 클릭. 4. 위 처..
\톰캣설치위치\conf\server.xml 위의 내용을 그대로 두고, 추가로 도메인 연결 및 가상디렉터리 설정을 한다.아래와 같이 추가 등록 하게 되면 다음과 같은 주소로 연결이 가능 하다."http://www.haha.com/aaa" 가상 디렉터리 설정을 하지 않고자 한다면,Context path를 path="" 로 설정하면 된다.
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”);
1. 테이블 생성 CREATE TABLE `TranTest` ( `num` int(11) NOT NULL auto_increment, `col01` varchar(32) default NULL, PRIMARY KEY (`num`) ) CREATE TABLE `TranTest2` ( `num` int(11) NOT NULL auto_increment, `col01` varchar(32) default NULL, PRIMARY KEY (`num`) ) 2. 입력 용 프로시저 생성 Delimiter $ CREATE PROCEDURE `Prc_TranTest_Input` ( in in_col01 varchar(32) ) BEGIN INSERT INTO TranTest SET col01 = in_col01; EN..
.table_style { width:300px; position:relative; padding-top:10px; }.table_style ul {clear: left;margin: 0;padding :0;list-style-type: none;}.table_style ul.header li {font-weight:bold;text-align:center;border-top: 1px solid #000;}.table_style ul li {float: left;margin: 0;padding: 2px 1px;border-bottom: 1px solid #000;border-left: 1px solid #000;}.table_style ul .column1 {width: 60px;}.table_style..
$(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 ..
DIV 가 두개 있다는 가정하에결과 ( 가상의 100%의 Width를 갖으므로 )12주로 레이아웃 용도로써 사용가로세로중앙으로 놓고 싶다면 SPAN 이 두개 있다는 가정하에결과 ( 가상의 100%의 Width를 갖으므로 )1 2자동 줄바꿈을 허용하지 않는다.
@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) - 대상이 바뀌는 지 감..
SET TRANSACTION ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SNAPSHOT | SERIALIZABLE }[ ; ] 격리수준을 설정 하지 않고 조회 시 READ COMMITTED 이며, 커밋되지 못한 행 조회시 LOCK 상태가 된다. READ UNCOMMITTED커밋되지 않은 데이터를 읽을수 있다. 만일 데이터가 1 -> 2로 업데이트 되고, 트랜잭션이 아직 커밋되지 않았다면,2를 읽을 수 있다. ( ROLL BACK 의 위험성을 인지 해야 함 ) REPEATABLE READ커밋되지 않은 데이터를 읽을수 없다. LOCK 상태가 된다.READ UNCOMMITTED 차이점. 다른 트랜젝션이 해당 행을 수정할 수 ..
EXEC msdb.dbo.sp_send_dbmail@Profile_name ='DBA',@recipients='수신자메일' ,@subject = '제목',@body = '내용'@body_format = 'HTML'
OPEN MASTER KEY DECRYPTION BY PASSWORD = '암호'OPEN SYMMETRIC KEY PasswordFieldSymmetricKey DECRYPTION BY CERTIFICATE TiwazPasswordFieldCertificate WITH PASSWORD = '암호'DECLARE @ENC VARBINARY(256) = EncryptByKey(Key_GUID('PasswordFieldSymmetricKey'), 'AAAAA')SELECT @ENCSELECT CONVERT(varchar, DecryptByKey(@ENC))
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 으로 변경한다.
테이블 트리거 조회 구문 select 'sp_helptext ' + t.name+ ' go' from sys.sysobjects t join sys.sysobjects o on t.parent_obj = o.id where t.xtype ='TR' and o.name like '테이블명%'
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[..
SELECT o.name FROM sys.sysobjects o JOIN sys.syscomments c ON o.id = c.id WHERE c.text like '%프로시져명%' AND o.xtype IN ('P', 'TR') GROUP BY o.name
웹서버 - 스토리지서버 인경우에 빌드한 소스를 스토리지에 넣어 이용 해야 할 경우 다음과 같이 권한에 대한 설정 을 진행 해 주어야 한다. * 아래와 같이 네트워크 구성이 되는 경우를 말함. 웹서버 1 웹서버 2 스토리지서버 웹서버 3 ----------> 빌드된소스 ..... 1. 웹서버와 스토리지 서버의 공유 하고자 하는 폴더에 동일한 계정 생성. 2. 홈디렉터리 (가상) 디렉터리의 설정시 생성한 계정을 적용 한다. ( 연결계정, 사이트 접근계정을 동일 하게 처리 함 ) 3. 웹서버에서 관리자 계정으로 cmd 창 오픈 4. 다음의 directory 로 이동 cd C:\Windows\Microsoft.NET\Framework\v2.0.50727 5. 명령 실행 : caspol -m -ag 1. -url..