「昨日の晩ご飯は何食ったかな?」
というぐらい私の記憶力はひどいものだ。
Javaのライブラリの取得のために初めてMavenを使ってみたのだけれども、少し嵌まったところがあったので、メモを残しておこう。
開発を始めるときの「最初のとっかかり」情報のまとめメインです。プライベート開発チーム共有用でもあります。Java関連が多いですが、MacとかUbuntuとかWin8、Gitなどなども書きます。 間違いがあったら教えてくださいませ。
2012年6月20日水曜日
2012年6月17日日曜日
[Spring] JdbcTemplateとC3P0を使ってデータベースアクセス (前編)
その昔、Javaプログラマ達はJDBCを直接使ってデータベースへのアクセスをしておったのじゃ。
それはそれは長く退屈なコードじゃった。。。
それはそれは長く退屈なコードじゃった。。。
2012年6月5日火曜日
2012年2月4日土曜日
AndroidでHelloWorldだ~
だがちょっと待ってほしい
Eclipseでプロジェクト作る前に、文字コードの設定をしておいたほうがいい。
ウィンドウ→設定→一般→ワークスペース左下の「テキストファイルのエンコード」で
その他 「UTF-8」 を選択し、適用(またはOK)。
これをプロジェクト作った後からやると「R.javaが手動で書き換えられましたよ」という不吉な赤い文字がコンソールにでる。(R.javaは開発ツールが自動生成するんです。)
Androidプロジェクトの作成
ファイル→新規作成→その他で「Androidプロジェクト」を選択。
プロジェクト名はもちろん"HelloWorld"を記入して「次へ」。
ビルドターゲットを選択する。ここでは Android 2.3.3 を選択して「次へ」。
パッケージ名を適当につけて「完了」。
これでプロジェクトとアプリのテンプレートまで生成されている。
参考書籍とは異なるテンプレートが生成されているが、まあよしとしよう。
(プロジェクトの構成については別途書きます)
ひとまず、AndroidManifext.xmlを書き換えてデバック可能にしておく。
プロジェクト直下のAndroidManifext.xmlをダブルクリックして開くと専用のエディタが立ち上がる。
「アプリケーション」のタブを開くとDebuggableという設定項目があるはず。
これをtrueにしておく。
生成されたHelloWorldアプリを試しに実行
見たところ、生成されたテンプレートはこのまま実行できそうだ。
とりあえず、
実行→デバッグ→Androidアプリケーションで実行してみる。
エミュレータ(仮想デバイス)が起動し、しばらく待つとHelloWorld画面が表示されるはず。
やったぜ。
デバッグの構成の設定
先の環境構築の際に作った仮想デバイスをターゲットに指定しておく。
実行→デバッグの構成「Androidアプリケーション」で"HelloWorld"をクリック
ない場合は、右クリック→新規で作成
「ターゲット」タブで前回作成した仮想デバイスを選択し「適用」をクリック。
エミュレータ画面が異様にでかい場合は、同じく「ターゲット」タブの
「エミュレーター・コマンド行の追加オプション」でオプションを設定する。
8割ぐらいの大きさにしたい場合は、
-scale 0.8でOK。
2012年1月12日木曜日
Red5でHello World(1) - サーバ編
※他のRed5関連のエントリはこちら
FlexアプリからRTMPでRed5側のメソッドを呼び出し、実行結果をFlexに返す、という超簡単なプログラムを作ってみよう。
まずはRed5(サーバ)側から。
とっかかり、何もわからんが、やるべきことは
に違いない。ということでやってみる。
Eclipseでのプロジェクトの作成、Red5サーバーの設定
せっかくEclipseのRed5Pluginをインストールしているので、これを使って参考サイトを見ながらプロジェクト作成からやってみよう。
これでプロジェクトができた。
あと、「サーバ」タブでサーバ定義しておこう。
[参考サイト]
Creating Red5 Projects with Red5 Plugin
Applicationクラスとメソッドの作成
ネットでいろいろ調べてみると、どうやら
org.red5.server.adapter.ApplicationAdapter
を継承したクラスを作成して、そこに適当にメソッドを実装すればいいらしいことが判明。
さっき作ったプロジェクトの"Java Resources"→"src"に適当にパッケージ作って、そこにJavaクラスを作成する。
クラス、メソッドは下記参考サイトのものをそのまんま書きました。
作成したクラス名は"Application"としたけど、もしかしたらなんでもOKかな。
[参考サイト]
[Red5入門コース第3回]サンプルアプリケーションの作成
作成したアプリケーションのRed5へのデプロイ
Red5ってなんかTomcatっぽいし(2012/2/26追記 Jettyがベースのようですね)、インストールフォルダに"webapps"ってフォルダあるから、たぶんこのこの中に自作アプリ用のフォルダ、WEB-INFとかフォルダ作って、WEB-INFの中にディプロイメントディスクリプタ(構成情報ファイル)とか書いとけば動くんじゃない?と、なんとなく思うわけだ。
またまた得意のネットで調べてみると、どうやら次の3つのファイルが必要になるみたい。
0から手書きは面倒なので、下記参考サイトをガン見して3つのファイルを作る。
ここまでやってやっとデプロイできそう。
デプロイはRed5Pluginを使って実施。
さっき作った"サーバー"を上を、 右クリック→「公開」
これで、webappsフォルダに自分のアプリケーション用のフォルダが作成され、必要なファイルが適切なフォルダに配置されるのだ。
ここで、Red5を起動させて変なエラーがでないか確認してみよう。
"サーバー"を上を右クリック→「開始」とするとコンソールタブに切り替わり、Red5の起動ログが出力されていく。この中に、
[INFO] [Launcher:/(自作アプリの名前)]・・・
みたいなログが表示されていれば無事にデプロイされている、はず。
ちなみに、停止するには、"サーバー"を上を右クリック→「停止」。
[参考サイト]
red5を使ってライブストリーミングアプリケーションをつくる
Red5サーバ側はここまで。
次回はFlex側じゃー!
FlexアプリからRTMPでRed5側のメソッドを呼び出し、実行結果をFlexに返す、という超簡単なプログラムを作ってみよう。
まずはRed5(サーバ)側から。
とっかかり、何もわからんが、やるべきことは
- "Hellow, World."という文字列を返すメソッドを含んだクラスを作る。
- 作成したクラスをRed5へ配置し、動くようにする。
に違いない。ということでやってみる。
Eclipseでのプロジェクトの作成、Red5サーバーの設定
せっかくEclipseのRed5Pluginをインストールしているので、これを使って参考サイトを見ながらプロジェクト作成からやってみよう。
- Eclipseのメニューから、「ファイル」→「新規」→「動的Webプロジェクト(Dynamic Web Project)」で新規プロジェクトを作成。プロジェクト名は適当でOK。
- 一番最初にプロジェクトを作成するときは、ターゲット・ラインタイムが<None>になっているはずなので、「新規ランタイム」ボタンをポチる。
- 新規サーバ・ランタイム環境の画面が表示されるので、フィルターに"Red5"と入力してみる。 Red5Plugin がちゃんとインストされていれば"Red5 Server Runtime"が選択できるはず。
- JREに1.6 、Runtime Directoryにred5.jarが格納されているフォルダ(Red5にインストールフォルダ)を指定して、"完了"ボタンをポチる。
- あとは適当に完了ボタン押下。
これでプロジェクトができた。
あと、「サーバ」タブでサーバ定義しておこう。
- 右クリック→「新規」→「サーバー」
- サーバータイプに"Red5 Server Runtime"を選択。「サーバーのホスト名」はlocalhostかIPアドレスかな。サーバ名は適当。たぶん自動で作成されるのでそのまま使った。サーバー・ランタイム環境も "Red5 Server Runtime"。これで「次へ」
- (ここ重要)"Auto Deploy Directory"にRed5インストールフォルダ配下の"webapps"を指定。"Start Script"と"Stop Script"は、これまたインストールフォルダにある"red5-debug.bat"、"red5-shutdown.bat"を指定。サーバ・ポート、デバッグ・ポートはデフォルトの5080、87787のまま(ちなみにこの2つのバッチファイルはそのままだとうまく動かなかったので書き換えてしまった)。これで「次へ」。
- 追加および除去の画面が表示される。さっき作ったプロジェクトが使用可能欄に表示されているはずなので、これを選択して「追加」ボタンをポチる。これで「完了」
[参考サイト]
Creating Red5 Projects with Red5 Plugin
Applicationクラスとメソッドの作成
ネットでいろいろ調べてみると、どうやら
org.red5.server.adapter.ApplicationAdapter
を継承したクラスを作成して、そこに適当にメソッドを実装すればいいらしいことが判明。
さっき作ったプロジェクトの"Java Resources"→"src"に適当にパッケージ作って、そこにJavaクラスを作成する。
クラス、メソッドは下記参考サイトのものをそのまんま書きました。
作成したクラス名は"Application"としたけど、もしかしたらなんでもOKかな。
[参考サイト]
[Red5入門コース第3回]サンプルアプリケーションの作成
作成したアプリケーションのRed5へのデプロイ
Red5ってなんかTomcatっぽいし(2012/2/26追記 Jettyがベースのようですね)、インストールフォルダに"webapps"ってフォルダあるから、たぶんこのこの中に自作アプリ用のフォルダ、WEB-INFとかフォルダ作って、WEB-INFの中にディプロイメントディスクリプタ(構成情報ファイル)とか書いとけば動くんじゃない?と、なんとなく思うわけだ。
またまた得意のネットで調べてみると、どうやら次の3つのファイルが必要になるみたい。
- red5-web.properties
- red5-web.xml
- web.xml
0から手書きは面倒なので、下記参考サイトをガン見して3つのファイルを作る。
- Red5にインストールしたデモSOSapmleのフォルダ(webapps/SOSample/WEB-INF)にあるred5-web.properties、red5-web.xmlの2つのファイルをコピって、Eclipseのプロジェクトの"WebContent"→"WEB-INF"にペーストして元を作る。 web.xmlはもともとプロジェクト作成時に自動生成されているものを利用する。
- 各3つのファイルをEclipse上で開いて自分のアプリ用に修正、追記する。
red5-web.properties・・・コンテキスト・パスを修正(必要があればバーチャルホストも)
red5-web.xml・・・beanタグのid="web.handler"のclassを、自作のApplicationクラスのフルパスに修正
web.xml・・・context-paramタグ、webAppRootKeyを追記
ここまでやってやっとデプロイできそう。
デプロイはRed5Pluginを使って実施。
さっき作った"サーバー"を上を、 右クリック→「公開」
これで、webappsフォルダに自分のアプリケーション用のフォルダが作成され、必要なファイルが適切なフォルダに配置されるのだ。
ここで、Red5を起動させて変なエラーがでないか確認してみよう。
"サーバー"を上を右クリック→「開始」とするとコンソールタブに切り替わり、Red5の起動ログが出力されていく。この中に、
[INFO] [Launcher:/(自作アプリの名前)]・・・
みたいなログが表示されていれば無事にデプロイされている、はず。
ちなみに、停止するには、"サーバー"を上を右クリック→「停止」。
[参考サイト]
red5を使ってライブストリーミングアプリケーションをつくる
Red5サーバ側はここまで。
次回はFlex側じゃー!
登録:
投稿 (Atom)