2009-06-01から1ヶ月間の記事一覧
今日はSwingでクライアントをつくるお勉強をします その前に言葉のお勉強GUIはグラフィカルユーザーインターフェースというらしいです昨日まで勉強したサーブレットはユーザーインターフェースがブラウザでした (でもたぶんBUIとは言わないと思う GUIはウィ…
import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class…
1つのプロジェクトに複数のサーブレットのつくりかた <servlet> <servlet-name>サブレット名1</servlet-name> <servlet-class>サーブレット名1のクラスの完全修飾名</servlet-class> </servlet> <servlet> <servlet-name>サーブレット名2</servlet-name> <servlet-class>サーブレット名1のクラスの完全修飾名</servlet-class> </servlet> <servlet-mapping> <servlet-name>サブレット名1</servlet-name> </servlet-mapping>
==とequalsのはなしご指摘いただいて修正しました String hoge = "piyo"; と定義したとき、hoge=="piyo"; これも hoge.equals("piyo"); これもtureになります でも String hoge = new String("piyo"); と定義したとき、 hoge=="piyo"; はfalseになり hoge.eq…
・前回かいた「すっきりしたコードを書く」に絡んでくるのだけど 同じコードを2回書かない!Don't Repeat Your self、DRYの法則 メソッドを作って活用しよう・わからないことをわからないまま書かない! なんとなくできたーは怖いです・エラーメッセージは…
ちゃんと理解していませんでした GET形式で送るとurlのうしろの?以降(クエリ文字列というらしい)が現れますPOST形式で送ると現れません なんかべつにどっちでもいいじゃん!と思っていました。 でもそれは超甘かったようで たとえばtwitterってログインす…
今週は2つのソートアルゴリズムを勉強してコードをかきましたひとつは隣の値と比較して移動していくバブルソートもうひとつはある値より大きいの、小さいのと区切って、区切ったかたまりでまた区切って…と繰り返していくクイックソート今回はその計算量のは…
昨日自分でつくったフォームから送信した文字列がtwitterに送信されるというプログラムを書きました。今日はそれをちょこっとだけ応用して、文字列が逆さに送信されるというのを作ってみました。文字列を逆さにするクラス public class Reverse { public Str…
・文字コードはめんどくさい! ・すっきりしたコードを書くこと ・@SuppressWarnings("unchecked")は黄色のエラーを消す最後の手段にする ・NullPointerExceptionはnullなものになにかしようとするとスローされる。通称ぬるぽらしい。ガッ ・メソッドで例外…
サーブレット計画その1.4 に載せたクラスに以下を追加 TwitterPost twit = new TwitterPost(); try { twit.twitterPost(req); } catch (TwitterException e) { out.print("error"); } ちゃんとpostできました!
サーブレットを使って、仲良くさせてみました! 自分で作ったフォームに文字列を入力すると、twitterにpostされるというプログラムをつくりました わーたのしいっpostするクラス import javax.servlet.http.HttpServletRequest; import twitter4j.TwitterExc…
RequestとResponseについてブラウザからサーバーへいくのがRequestサーバーで処理をしてサーバーからブラウザへいくのがResponse
表示させるというインタフェース import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import javax.servlet.http.HttpServletRequest; public interface ParameterPrinter { void printParameter(HttpServletRequest req, PrintWrit…
リクエストのパラメータとキーを得るメソッドを使い表示させる(GETにもPOSTにも有効) import java.io.PrintWriter; import java.util.Enumeration; import javax.servlet.http.HttpServletRequest; public class DirectGet implements ParameterPrinter { …
表示させるメソッドを実装したクラス2パターンにわけてみましたurlの?以降を自分で=や&で分けて表示させる(GETにのみ有効) import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.securit…
送信先のソース GETで送信するとurlのうしろに ?name=hoge のように送信したキーとパラメータが表示されますPOSTで送ると表示されませんGETで送るとdoGETが呼び出され POSTで送るとdoPOSTが呼び出されてそれぞれ処理をします import java.io.IOException; im…
フォームに入力した文字列を表示させるプログラムつくってみました htmlの部分 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> form </title> </head> <body> <form method="POST" action="送信先url"> <input type="text" name="name"> <input type="submit" value="送信"> </form> </body> </html> 文字コードをヘッダで指定しない…
tomcatつかいませんでした jettyつかいました *プロジェクトのつくりかた*コマンドプロンプトでいつものようにmvn archetype:generate いつもarchetypeはデフォルトの15を選択していましたが、 今回は18を選択しますあとはいつも通りです そうしてでき…
反省点 テストで使った変数名exceptは全部expectの間違いです どんな変数かというと期待する値を格納するためのものexpect→期待する except→除くこれはひどいミスこういうのは混乱のもとなのでリファクタリングすべき!
クラス名は基本名詞 インタフェース名は〜ableというようにするメソッド名は基本動詞
テストの部分 import static org.hamcrest.CoreMatchers.*; import static org.junit.Assert.*; import java.util.ArrayList; import java.util.List; import org.junit.Test; public class QuickAndBubble { @Test public void 引数に与えた配列をクイック…
BbubbleSortクラスでSortableインタフェースのsortメソッドを実装 import java.util.*; public class BubbleSort implements Sortable{ public List<Integer> sort(List<Integer> list) { List<Integer> sortList = new ArrayList<Integer>(); sortList.addAll(list); for (int size = sortList.s</integer></integer></integer></integer>…
QuickSortクラスでSortableインタフェースのsortメソッドを実装 import java.util.ArrayList; import java.util.List; public class QuickSort implements Sortable { List<Integer> quickList = new ArrayList(); public List<Integer> sort(List<Integer> list) { List<Integer> sortList = new</integer></integer></integer></integer>…
インタフェース化しましたインタフェース import java.util.List; public interface Sortable { List<Integer> sort(List<Integer> list); }</integer></integer>
どんどん足していく予定です implement 実装する inherit 継承する abstract 抽象的な exception 例外 Unhandled 扱われていない iterate 繰り返す disabled 無効にされる test テストrecipient 受取人
文字化けを直すために、文字コードをutf8に設定しました Preferencesを開く→General→Workspaceをクリック Text file encoding をutf8にするそうすると新規でファイルを立ち上げたときに文字コードが全部utf8になります!でも今までのファイルの日本語部分が…
クイックソートもバブルソートも並び替えるって動作は同じなので 並び替えるインタフェースを作ってみることにしました だがしかし、この2つはプロジェクトもパッケージ名も違うのでちょっと苦労しそうです。 とりあえずパッケージ名を統一しようとリネーム…
バブルソートテストの部分 @Test public void 引数に与えた配列の要素数が複数のバブルソート() throws Exception { BubbleSort bubble = new BubbleSort(); List<Integer> sourceData = new ArrayList<Integer>(); sourceData.add(5); sourceData.add(3); sourceData.add(10);</integer></integer>…
バブルソート public List<Integer> sort(List<Integer> list) { List<Integer> sortList = new ArrayList<Integer>(); sortList.addAll(list); for (int size = sortList.size(); size > 1; size--) { for (int i = 0; i < size - 1; i++) { if (sortList.get(i) > sortList.get(i + 1)) { int t</integer></integer></integer></integer>…
クイックソートテストの部分 @Test public void 引数に与えた要素が複数の配列をクイックソートする() throws Exception { List<Integer> list = new ArrayList<Integer>(); list.add(8); list.add(4); list.add(2); list.add(9); list.add(3); list.add(1); QuickSort quick =</integer></integer>…