<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/kgitks/">
    <title>kgitks備忘録@wiki</title>
    <link>http://w.atwiki.jp/kgitks/</link>
    <atom:link href="https://w.atwiki.jp/kgitks/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>kgitks備忘録@wiki</description>

    <dc:language>ja</dc:language>
    <dc:date>2014-05-06T17:14:26+09:00</dc:date>
    <utime>1399364066</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/17.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/22.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/21.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/2.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/19.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/20.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/1.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/18.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/16.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/kgitks/pages/15.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/17.html">
    <title>なにすんだっけ？</title>
    <link>https://w.atwiki.jp/kgitks/pages/17.html</link>
    <description>
          </description>
    <dc:date>2014-05-06T17:14:26+09:00</dc:date>
    <utime>1399364066</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/22.html">
    <title>ハワイ</title>
    <link>https://w.atwiki.jp/kgitks/pages/22.html</link>
    <description>
      ハワイのエクセルファイルはこちら
&amp;ref(ハワイ旅行.xlsx)    </description>
    <dc:date>2014-02-01T00:51:52+09:00</dc:date>
    <utime>1391183512</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/21.html">
    <title>INSERT_SQL_CREATOR</title>
    <link>https://w.atwiki.jp/kgitks/pages/21.html</link>
    <description>
      // いちいち挿入SQL文書くのがめんどうくさいじゃないですか
Sub INSERT_SQL_CREATOR()
&#039; テーブルに１行挿入する文を作成する&#039;
Dim i
Dim sql_insert As String
Dim sql_values As String
i = 2
sql_insert = &quot;INSERT INTO&quot; &amp; Cells(1,1).Value &amp; &quot;(&quot; &amp; Cells(2,1).Value
sql_values = &quot;VALUES(&quot; &amp; Cells(3,1)
	Do Until Cells(2,i).Value = &quot;END&quot;
		sql_insert = sql_insert &amp; &quot;,&quot; &amp; Cells(2,i).Value
		sql_values = sql_values &amp;&quot;,&#039;&quot; Cells(3,i).Value &amp; &quot;&#039;&quot;
		i = i + 1
	Loop
sql_insert = sql_insert &amp; &quot;)&quot;
sql_values = sql_values &amp; &quot;)&quot;
Cells(5,1).Values = sql_insert &amp; &quot;)&quot; &amp; sql_values &amp; &quot;)&quot;

End Sub    </description>
    <dc:date>2013-12-01T23:23:22+09:00</dc:date>
    <utime>1385907802</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/2.html">
    <title>メニュー</title>
    <link>https://w.atwiki.jp/kgitks/pages/2.html</link>
    <description>
      **メニュー
-[[トップページ]]
-[[メニュー]]
-[[java_login]]
-[[java_password]]
-[[java_checkBirth]]
-[[なにすんだっけ？]]
-[[報告書]]
-[[my報告書]]
-[[INSERT_SQL_CREATOR]]
----

**リンク
-[[@wiki&gt;&gt;http://atwiki.jp]]
-[[@wikiご利用ガイド&gt;&gt;http://atwiki.jp/guide/]]


// リンクを張るには &quot;[&quot; 2つで文字列を括ります。
// &quot;&gt;&quot; の左側に文字、右側にURLを記述するとリンクになります


//**更新履歴
//#recent(20)

&amp;link_editmenu(text=ここを編集)    </description>
    <dc:date>2013-12-01T22:21:23+09:00</dc:date>
    <utime>1385904083</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/19.html">
    <title>報告書</title>
    <link>https://w.atwiki.jp/kgitks/pages/19.html</link>
    <description>
      
&lt;p&gt;★ヒューマンスキル&lt;/p&gt;
&lt;p&gt;★ITスキル&lt;/p&gt;
&lt;p&gt;
私は基礎編、応用編、情報セキュリティ編の中で基礎編を受講した。期間は二週間程度であり、短い期間だったが、とても内容の濃いものであった。毎日その日の復習と宿題をやったが、基本情報処理試験では午後の点数が15点程足りず不合格という結果になってしまった。後日見直したら解けていた問題が多く、とても悔しい思いをした。この思いを忘れず、次の秋の試験には必ず受かるように、只今勉強をしている。&lt;/p&gt;
&lt;p&gt;★ITスキルJava関連&lt;/p&gt;
&lt;p&gt;
この研修期間に最も多くの時間を使って研修した内容である。私は学生時代にはプログラミング経験はほとんどなく、Javaには一度も触れた事はない。この研修を通じて、私にとってJavaはとても難しいものと感じており、今もまだ苦手意識を感じている。特に苦手意識を感じた事は、プログラミングを書く事である。Javaプログラミング能力認定試験2級には合格出来たものの、これからはその苦手意識を克服していかなければならない。日々の業務で自己研鑽に努める。また、この研修の最後には、システム開発ワークショップを行った。実際の上司、顧客、チームメンバーを想定して、顧客の要望である顧客管理システムをつくっていくものである。初めてのチーム単位での行動は、想像していたよりもとても難しいものであった。しかしそれと同時に達成感から喜びも感じた。特に一番感じた事は「報告」、「連絡」、「相談」の大切さである。上司やチームメンバー、そして顧客に何かを伝えるという大切さを身に締めて感じた。&lt;/p&gt;
&lt;p&gt;★証券関連テーマ&lt;/p&gt;
&lt;p&gt;
初めは証券について、難しそうといった印象があった。実際には難しい内容が多く、初めは苦労したが、日々の復習と宿題により、徐々に理解できるようになった。最終的には、この研修を通じて証券についてとても興味が湧いた。そして１種外務員資格試験に合格する事が出来た。また、講師の方から新聞を読むよう指示を頂き、空いた時間があれば、なるべく新聞をよむようにしている。業務関連機関見学には東証Arrowsと東京データセンターに見学をしにいった。東証Arrowsでは実際に株の売買を行っている姿を見たり、テレビでしか見た事のないチッカー等を見た。私もこれから、これらに関わる仕事をすると思うと誇りに思えた。また、東京データセンターでは、&lt;/p&gt;
&lt;p&gt;★デリバティブ関連テーマ&lt;/p&gt;
&lt;p&gt;
デリバティブは難しいと研修部の方が言っていた通り難しい内容であった。しかし、デリバティブは計算に関する内容が多く、学生時代に様々な計算をしてきた私にとっては、計算と証券が混合した新たな勉強について、とても興味深かった。日々の確認テストや宿題によりデリバティブの内容を理解していき、デリバティブ初級試験に合格する事が出来た。★各種マネジメントシステム関連テーマ&lt;/p&gt;
&lt;p&gt;★ITスキル実践編&lt;/p&gt;
&lt;p&gt;この研修ではLinux、SQL、DBなど多くの範囲を二日間という短期間で浅く広く学習した。&lt;/p&gt;
&lt;p&gt;★NKSOL開発手順&lt;/p&gt;
&lt;p&gt;★会社教育関連テーマ&lt;/p&gt;
&lt;p&gt;★今後の抱負・目標&lt;/p&gt;
&lt;p&gt;
今後の目標、抱負としては、まず初めに、「日々自己研さんに努める」である。理由としては、ITスキルにおいてJavaに対して苦手意識を持っていたり、基本情報技術者処理試験に落ちてしまったりとその他様々な事に対して、まだまだ努力する必要があるからである。当面の目標としては&lt;/p&gt;
&lt;p&gt;・秋に行われる基本情報技術者処理試験に合格する事&lt;/p&gt;
&lt;p&gt;・Javaに対しての苦手意識を、業務を通じてなくしていく事&lt;/p&gt;
&lt;p&gt;・デリバティブ中級試験に挑戦する事&lt;/p&gt;
&lt;p&gt;・証券関連については業務を通じてより深い知識を付けていく事である。&lt;/p&gt;
&lt;p&gt;
次に、「社会人としての行動を心得る事」である。今年から社会人となり、初めての一人暮らしであるため、なかなか生活に慣れる事が出来なかった。研修期間中に遅刻をしてしまったこともあり、これは社会人として絶対に許されない事である。また、風邪をひいてしまった事もあり、自分の体調管理が出来ていなかった時もあった。これからは研修中とは違い、風邪をひいてしまったら、今まで以上に迷惑をかけてしまうので、しっかりと体調管理をする。&lt;/p&gt;
&lt;p&gt;最後に「」&lt;/p&gt;
    </description>
    <dc:date>2013-08-19T23:54:38+09:00</dc:date>
    <utime>1376924078</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/20.html">
    <title>my報告書</title>
    <link>https://w.atwiki.jp/kgitks/pages/20.html</link>
    <description>
      
&lt;p&gt; こっちは自分用&lt;/p&gt;
&lt;p&gt; ＜ヒューマンスキル・ビジネスリテラシ関連テーマ＞&lt;/p&gt;
&lt;p&gt;
 NKSOLについて学び、ビジネスに必要な知識とスキルを身につけ、社会人としての基礎を築けた。自分の苦手とするスピーチやビジネス文書の作成は、この研修を通じて何度も練習することで克服できた。&lt;/p&gt;
    </description>
    <dc:date>2013-08-19T20:36:21+09:00</dc:date>
    <utime>1376912181</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/1.html">
    <title>トップページ</title>
    <link>https://w.atwiki.jp/kgitks/pages/1.html</link>
    <description>
      **kgitksの備忘録
研修お疲れ様。

**【4S】workshop用（新規ページ追加・編集OK）
-[[java_login]]
-[[java_password]]
-[[java_checkBirth]]
-[[なにすんだっけ？]]

他のグループには内緒



**おすすめ機能
-[[気になるニュースをチェック&gt;http://atwiki.jp/guide/17_174_ja.html]]
-[[関連するブログ一覧を表示&gt;http://atwiki.jp/guide/17_161_ja.html]]

**その他にもいろいろな機能満載！！
-[[@wikiプラグイン&gt;http://atwiki.jp/guide/category17.html]]
-[[@wiki便利ツール&gt;http://atwiki.jp/guide/category32.html]]
-[[@wiki構文&gt;http://atwiki.jp/guide/category16.html]]
-[[@wikiプラグイン一覧&gt;http://www1.atwiki.jp/guide/pages/264.html]]
-[[まとめサイト作成支援ツール&gt;http://atwiki.jp/matome/]]

**バグ・不具合を見つけたら？ 要望がある場合は？
お手数ですが、[[お問合せフォーム&gt;http://atwiki.jp/helpdesk]]からご連絡ください。    </description>
    <dc:date>2013-08-19T20:06:12+09:00</dc:date>
    <utime>1376910372</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/18.html">
    <title>java_checkBirth</title>
    <link>https://w.atwiki.jp/kgitks/pages/18.html</link>
    <description>
      //java/linenumber
//////////////////////// DataCheck_Inに追加するメソッド。  ////////////////////////////
	/**
	 * 生年月日の妥当性チェックを行うメソッド。
	 * 指定した日付文字列（yyyyMMdd）がカレンダーに存在するかチェック。
	 * また、20歳未満または80歳以上ではないかチェック。
	 * @param kyak_birthymd 生年月日(yyyymmdd)
	 * @return 問題が無ければtrue
	 */
	public boolean checkDate(String kyak_birth) {
		LoginManager lm = new LoginManager();
		boolean flag;
		if (kyak_birth == null || kyak_birth.length() != 8) {
			flag=false;
		}else{
			String kyak_birthymd=lm.format_ymd(kyak_birth);
			DateFormat format = DateFormat.getDateInstance();
			// 日付解析を厳密に行うかどうかを設定する。
			format.setLenient(false);
			try {
				format.parse(kyak_birthymd);
				//年齢が20未満、80以上は登録できない。
				if(lm.getAge(kyak_birth)&lt;20 || lm.getAge(kyak_birth)&gt;79){
					flag= false;
				}else{
					flag= true;
				}
			} catch (Exception e) {
				flag= false;
			}
		}
		return flag;
	}

//////////////////////////////// LoginManagerに追加するメソッド /////////////////////////////

	/**
	 * 年齢を返すメソッド
	 * @param kyak_birthymd 生年月日（yyyymmdd）
	 * @return 年齢
	 */
	public int getAge(String kyak_birthymd) {
		int birth=Integer.parseInt(kyak_birthymd);
		int now=Integer.parseInt(getNowTime().substring(0, 8));
		int age=(now-birth)/10000;
		return age;
	}    </description>
    <dc:date>2013-08-06T21:14:39+09:00</dc:date>
    <utime>1375791279</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/16.html">
    <title>java_password</title>
    <link>https://w.atwiki.jp/kgitks/pages/16.html</link>
    <description>
      //java/linenumber 

/////////////////// 8/6作成 LoginManager に追加するメソッド //////////////////////////////

	/**
	 * パスワードの有効期限を計算するメソッド
	 * @param passupd_time パスワード更新日時（yyyymmddhhmmss）
	 * @return 有効期限orエラーコード（-1:有効期限切れ）
	 * @throws ParseException 
	 */
	public int getRemit(String passupd_time) throws ParseException{
		String now_ymd=format_ymd(getNowTime());
		String upd_ymd=format_ymd(passupd_time);
			//現在日時とパスワード更新日時の差を求める
			int remit=differenceDays(now_ymd,upd_ymd);
			if(remit&gt;30){//パスワードの期限切れ
				return -1;
			}else{//パスワード有効期限内
				return remit;
			}
	
	}
	

/////////////////// 8/6作成　LoginControllerでの記述 ////////////////////////////////////////////////////
               try{
			LoginManager lm = new LoginManager();
			User user = new User();
			int remit=lm.getRemit(user.getPassupd_time());
			if(remit==-1){
				System.out.println(&quot;有効期限が切れました。パスワード変更を行ってください。&quot;);
				//パスワード変更画面(password.jsp)に遷移する。
				
			}else if(remit&lt;8 &amp;&amp; remit&gt;0){
				System.out.println(&quot;あと&quot;+remit+&quot;日で有効期限が切れます。パスワード変更を行ってください。&quot;);
				//メニュー画面(menu.jsp)に表示させる。
			}//elseは何もしないので書かない
		}catch (ParseException e){
			//エラー画面に遷移
		}    </description>
    <dc:date>2013-08-06T19:46:38+09:00</dc:date>
    <utime>1375785998</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/kgitks/pages/15.html">
    <title>java_login</title>
    <link>https://w.atwiki.jp/kgitks/pages/15.html</link>
    <description>
      ログイン関連のJavaソースコード。
ログインに３回失敗した場合に行う処理について記述した。

&lt;LoginManager&gt;

package manager;

import java.text.DateFormat;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;

public class LoginManager {
	private DBAccess_login dba_login;
	/**
	 * コンストラクタ。同時にDBAccess_loginのオブジェクトを生成する。
	 */
	public LoginManager(){
		this.dba_login=new DBAccess_login();
	}
	

	/**
	 * ３回ログインに失敗した後、再ログイン可能か調べるメソッド
	 * 現在時刻とログイン失敗時刻の差が１時間以内であればfalseを返す
	 * @param misseditme ３回目のログイン失敗時刻
	 * @return ログイン可否
	 * @throws ParseException 
	 */
	public boolean isRelogin(String missedtime) throws ParseException{
		boolean result=true;
		String nowtime=getNowTime();
		System.out.println(nowtime);
		//ログイン失敗日をyyyy/mm/dd形式で取得
		String miss_ymd=format_ymd(missedtime);
		//現在日をyyyy/mm/dd形式で習得
		String now_ymd=format_ymd(nowtime);
		//ログイン失敗時の時刻を秒単位で取得
		int miss_hms=format_hms(missedtime);
		//現在の時刻を秒単位で取得
		int now_hms=format_hms(nowtime);
		//失敗日と現在日の差を取得
		int dif=differenceDays(now_ymd,miss_ymd);

		if(dif==0){//同日の場合、時間で比較
			if((now_hms-miss_hms)&lt;3600){
				result=false;
			}
		}else if(dif==1 &amp;&amp;  miss_hms&gt;82800 &amp;&amp; now_hms&lt;3600){//１日違い、失敗時刻が23時以降、現在時刻が1時未満の場合
			now_hms+=82800;
			System.out.println(now_hms);
			System.out.println(miss_hms);
			if(now_hms&lt;miss_hms){
				result=false;
			}
		}
		//判別結果を返す
		return result;
	}
	
	/**
	 *  yyyymmdd～形式からyyyy/mm/dd形式に変換するメソッド
	 * @param ymd yyyymmdd形式の年月日（yyyymmddhhmmss形式も可）
	 * @return yyyy/mm/dd形式の年月日
	 */
	public String format_ymd(String ymd){
		String format_ymd=ymd.substring(0, 4)+&quot;/&quot;
				+ymd.substring(4, 6)+&quot;/&quot;
				+ymd.substring(6, 8);
		return format_ymd;
	}
	/**
	 * yyyymmddhhmmss形式から秒単位形式に変換するメソッド
	 * @param ymdhms
	 * @return 時分秒を秒に揃えた整数
	 */
	public int format_hms(String ymdhms){
		int hms=Integer.parseInt(ymdhms.substring(8,10))*3600
				+Integer.parseInt(ymdhms.substring(10,12))*60
				+Integer.parseInt(ymdhms.substring(12,14));
		return hms;
	}

	/**
	 * 現在の日時をyyyymmddhhmmss形式で取得するメソッド
	 * @return yyyymmddhhmmss形式で表現された現在日時
	 */
	public String getNowTime(){
		Calendar cal1 = Calendar.getInstance();  //(1)オブジェクトの生成

		int year = cal1.get(Calendar.YEAR);        //(2)現在の年を取得
		int month = cal1.get(Calendar.MONTH) + 1;  //(3)現在の月を取得
		int day = cal1.get(Calendar.DATE);         //(4)現在の日を取得
		int hour = cal1.get(Calendar.HOUR_OF_DAY); //(5)現在の時を取得
		int minute = cal1.get(Calendar.MINUTE);    //(6)現在の分を取得
		int second = cal1.get(Calendar.SECOND);    //(7)現在の秒を取得
		String ymd;
		//yyyymmの形式に変換
		if(month&lt;10){
			ymd = year+&quot;0&quot;+month;
		}else{
			ymd = year+&quot;&quot;+month;
		}
		//yyyymmddの形式に変換
		if(day&lt;10){
			ymd = ymd+&quot;0&quot;+day;
		}else{
			ymd = ymd+&quot;&quot;+day;
		}		
		//yyyymmddhhの形式に変換
		if(hour&lt;10){
			ymd = ymd+&quot;0&quot;+hour;
		}else{
			ymd = ymd+&quot;&quot;+hour;
		}
		
		//yyyymmddhhmmの形式に変換
		if(minute&lt;10){
			ymd = ymd+&quot;0&quot;+minute;
		}else{
			ymd = ymd+&quot;&quot;+minute;
		}
		//yyyymmddhhmmssの形式に変換
		if(second&lt;10){
			ymd = ymd+&quot;0&quot;+second;
		}else{
			ymd = ymd+&quot;&quot;+second;
		}
		//完成したものを返す
		return ymd;

	}


	//http://sattontanabe.blog86.fc2.com/blog-entry-88.html
	//から拝借
	/**
	 * 2つの日付の差を求めます。
	 * 日付文字列 strDate1 - strDate2 が何日かを返します。
	 * 
	 * @param strDate1    日付文字列 yyyy/MM/dd
	 * @param strDate2    日付文字列 yyyy/MM/dd
	 * @return    2つの日付の差
	 * @throws ParseException 日付フォーマットが不正な場合
	 */
	public static int differenceDays(String strDate1,String strDate2) 
			throws ParseException {
		Date date1 = DateFormat.getDateInstance().parse(strDate1);
		Date date2 = DateFormat.getDateInstance().parse(strDate2);
		return differenceDays(date1,date2);
	}

	/**
	 * 2つの日付の差を求めます。
	 * java.util.Date 型の日付 date1 - date2 が何日かを返します。
	 * 
	 * 計算方法は以下となります。
	 * 1.最初に2つの日付を long 値に変換します。
	 * 　※この long 値は 1970 年 1 月 1 日 00:00:00 GMT からの
	 * 　経過ミリ秒数となります。
	 * 2.次にその差を求めます。
	 * 3.上記の計算で出た数量を 1 日の時間で割ることで
	 * 　日付の差を求めることができます。
	 * 　※1 日 ( 24 時間) は、86,400,000 ミリ秒です。
	 * 
	 * @param date1    日付 java.util.Date
	 * @param date2    日付 java.util.Date
	 * @return    2つの日付の差
	 */
	public static int differenceDays(Date date1,Date date2) {
		long datetime1 = date1.getTime();
		long datetime2 = date2.getTime();
		long one_date_time = 1000 * 60 * 60 * 24;
		long diffDays = (datetime1 - datetime2) / one_date_time;
		return (int)diffDays; 
	}
}

&lt;LoginController&gt;
package manager;

import java.text.ParseException;

public class LoginController {
	protected void doPost(){
		try{
			LoginManager lm = new LoginManager();
			User user = new User();
			//ログイン失敗日時の取得
			String missedtime=user.getMissed_time();
			//ログイン可能かチェック
			boolean logincheck = lm.isRelogin(missedtime);
			if(!logincheck){//ログインできないと判断された場合
				//login_error.jspに遷移
				System.out.println(&quot;ログインできましぇん&quot;);
			}else{
				//menu.jspに遷移
				System.out.println(&quot;ログインできるよ！やったねタエちゃん！&quot;);
			}
		}catch (ParseException e){

		}
	}
}

&lt;User&gt;
package manager;

public class User {
	//新しいメンバ変数の追加（ログイン失敗時刻）
	private String missed_time=&quot;20130804232251&quot;;

	//コンストラクタも新しく用意する。
	public User(){}
	//セッターゲッターも新しく用意する。
	public String getMissed_time() {
		return missed_time;
	}

	public void setMissed_time(String missed_time) {
		this.missed_time = missed_time;
	}
	
	
}    </description>
    <dc:date>2013-08-05T00:36:49+09:00</dc:date>
    <utime>1375630609</utime>
  </item>
  </rdf:RDF>
