tag:blogger.com,1999:blog-36544277928077584762024-03-14T01:31:38.153+09:00米泥棒最近著しく記憶力が低下しているので、あれこれ備忘録的な・・・Unknownnoreply@blogger.comBlogger50125tag:blogger.com,1999:blog-3654427792807758476.post-16659903937818928932016-02-24T10:33:00.002+09:002016-02-24T10:39:50.633+09:00PHP 5.4.0 から、CLI SAPI にはウェブサーバーの機能が組み込まれるようになりましたPHP 5.4.0 から、CLI SAPI にはウェブサーバーの機能が組み込まれるようになりました
<div class="code">
$ cd ~/public_html<br/>
$ php -S localhost:8000
</div>
<a href="http://php.net/manual/ja/features.commandline.webserver.php">http://php.net/manual/ja/features.commandline.webserver.php</a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-81790439200773733132015-09-22T19:40:00.001+09:002015-09-22T19:40:12.095+09:00Ubuntu 15.04のRAMディスク作成についてUbuntu15.04でRAMディスク作成する場合、/etc/fstabの書き方がこれまでとちょっと違う様子。
コメント行を見てみると
<div class="code">
# <file system> <mount point> <type> <options> <dump> <pass>
</div>
となっているので
1GBのRAMディスクを作成するには
<div class="code">
tmpfs /ramdisk tmpfs size=1g 0 0
</div>
という感じになる。
RAMディスク作ったらとりあえずMOZCの動作が快適になってかなりストレス軽減Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-83010620582957280802015-09-20T14:07:00.000+09:002015-09-20T14:07:30.681+09:00apt-getでインストール可能なバージョンをリストアップするUbuntuにcasperjsをインストールしようとしたところ、casperjsはphantomjsの1.x系が必要らしいが、普通にapt-getでphantomjsをインストールしてしまうとphantomjs2.0系がインストールされてしまう。<br/>
<br/>
そこで<br/>
<br />
<div class="code">
sudo apt-cache showpkg phantomjs
</div>
<br/>
でインストール可能なバージョンをリストアップし、
<br />
<br/>
<div class="code">
sudo apt-get install phantomjs=1.9.0-1
</div>
<br/>
とバージョンを指定してインストールした。
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-78025785842879730272015-09-20T13:43:00.001+09:002015-09-20T13:43:30.368+09:00FreeBSDにphantomjsをインストールしたらlibfreetype.so.6がないと怒られた某FreeBSDのレンタルサーバーでphantomjsをインストールしたところ、 libfreetype.so.6がないと怒られたのでportsでprint/freetype2 をインストール。<br />
<br />
<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-107639032358225582015-09-01T14:55:00.001+09:002015-09-01T14:56:03.706+09:00WindowsでIPアドレスからホスト名を調べるには
<div class="code">
nbtstat -A IPアドレス
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-83960891297299216322015-08-25T22:16:00.001+09:002015-08-25T22:16:04.211+09:00MySQLのポート番号を確認するにはMySQLのポート番号を確認するには
show variables like 'port'Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-73053534502458750902015-08-23T18:16:00.000+09:002015-08-23T19:16:33.949+09:00ubuntu 15.04にSymfony 2.7をインストールしてみたいつの間にやらSymfony2のインストール方法いろいろ変わってるのね・・・
1)curlのインストール
sudo apt-get install curl
2)Symfonyインストーラのインストール
sudo curl -LsS http://symfony.com/installer -o /usr/local/bin/symfony
sudo chmod a+x /usr/local/bin/symfony
3)プロジェクトを作成
symfony new PROJECT_NAME
4)開発用サーバーを起動
cd PROJECT_NAME
php app/console server:run
↑これでlocalhost:8000でアプリが起動する
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-49703158147499144092015-08-10T09:19:00.000+09:002015-08-10T09:19:12.035+09:00正規表現で特定の文字列を「含まない」行を削除する^(?!.*css).*$ を 長さ0の文字列に置換
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-87503125375985276012015-03-24T14:25:00.003+09:002015-03-24T14:25:58.860+09:00GrassFish ServerのパラメータのデフォルトエンコーディングをUTF-8に変更するにはGrassFish Serverでパラメータが文字化けする。<br />
これはGrassFish ServerのパラメータのデフォルトエンコーディングがISO-8859-1だから。<br />
grassfish-resources.xmlに以下を追加することで、デフォルトエンコーディングをUTF-8に変更できる。<br />
<br />
<div class="code">
<parameter-encoding default-charset="UTF-8" /><br />
</div>
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-68690505481497328392015-03-23T16:47:00.001+09:002015-03-23T16:48:04.664+09:00MySQLのload dataでテーブルの特定のカラムにのみファイルの内容をインポートするにはMySQLのload dataでテーブルの特定のカラムにのみファイルの内容をインポートするには、以下のようにファイル内のフィールドをマッピングする列をset句で指定する。<br />
<br />
<div class="code">
load data infile 'c:/temp/stocks.csv' into table stocks<br />
fields terminated by '\t' (@code,@name,@sector1,@sector2)<br />
set code=@code,name=@name,sector1=@sector1,sector2=@sector2;<br />
</div>
<div>
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-69514355390908588182015-03-17T17:44:00.000+09:002015-03-17T17:44:21.975+09:00GlassFish Server 4.1でJSF2.2+Bootstrapのアプリケーションを作成中、サーバのコンソールに以下のようなメッセージが表示されていることに気が付いた。<br />
<br />
<br />
<div class="code">
警告: JSF1091: ファイル fonts/glyphicons-halflings-regular.woff2 の MIME タイプが見つかりませんでした。これを解決するには、アプリケーションの web.xml に MIME タイプのマッピングを追加します。
</div>
<br />
<div>
<br /></div>
<div>
どうやらweb.xmlにMIMEタイプマッピングを追加しないといけないらしい。<br />
<br /></div>
<div class="code">
<?xml version="1.0" encoding="UTF-8"?><br />
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee"<br />
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br />
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"><br />
<context-param><br />
<param-name>javax.faces.PROJECT_STAGE</param-name><br />
<param-value>Development</param-value><br />
</context-param><br />
<servlet><br />
<servlet-name>Faces Servlet</servlet-name><br />
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class><br />
<load-on-startup>1</load-on-startup><br />
</servlet><br />
<servlet-mapping><br />
<servlet-name>Faces Servlet</servlet-name><br />
<url-pattern>/faces/*</url-pattern><br />
</servlet-mapping><br />
<session-config><br />
<session-timeout><br />
30<br />
</session-timeout><br />
</session-config><br />
<welcome-file-list><br />
<welcome-file>faces/index.xhtml</welcome-file><br />
</welcome-file-list><br />
<span style="background-color: yellow;"> <mime-mapping></span><br />
<span style="background-color: yellow;"> <extension>woff</extension> </span><br />
<span style="background-color: yellow;"> <mime-type>application/x-font-woff</mime-type> </span><br />
<span style="background-color: yellow;">
</mime-mapping></span><br />
<span style="background-color: yellow;"> <mime-mapping></span><br />
<span style="background-color: yellow;"> <extension>woff2</extension> </span><br />
<span style="background-color: yellow;"> <mime-type>application/x-font-woff2</mime-type> </span><br />
<span style="background-color: yellow;"> </mime-mapping></span><br />
</web-app><br />
<br /></div>
<div>
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-88453574969840207802015-03-17T13:54:00.002+09:002015-03-17T13:54:51.989+09:00JSF2.2でバリデーションエラー時のメッセージをカスタマイズするには1.以下のjarファイルを任意のディレクトリにコピー<br />
javax.faces.jar<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBVEqhiQdREXxChGLgdhXYNoIBZeFh0u0gtc28Gn23LMZxY8H9WFTCvao0MHEDOjuyvkLS1ecvxSZSoLo_CO78f6joJ0ydBDylnKUgln8yO0mfdbAeyyqgfXrvB5bDzhHByf6HcXeszSVK/s1600/jsf02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBVEqhiQdREXxChGLgdhXYNoIBZeFh0u0gtc28Gn23LMZxY8H9WFTCvao0MHEDOjuyvkLS1ecvxSZSoLo_CO78f6joJ0ydBDylnKUgln8yO0mfdbAeyyqgfXrvB5bDzhHByf6HcXeszSVK/s1600/jsf02.png" height="219" width="320" /></a></div>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
2.上記1でコピーしたjarファイルの拡張子をzipに変更して展開し、Messages_ja.propertiesファイルをソースパッケージ内の任意のフォルダにコピーする<br />
(例:xxxx/messages/Messages_ja.properties)<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFiUZnrzr0ylCXt8RZNhjoyselRni_5bq71xbEjIAUx4fAJfiKLZDLK2pkoYo_LT1IqEPX6WeR5IzQ2DreDkkXgKzbA5i7dMeoeCsLds_fSEUMA96DP-Qu8s8lCKgz2hCOAfb9LPVgmviB/s1600/jsf02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFiUZnrzr0ylCXt8RZNhjoyselRni_5bq71xbEjIAUx4fAJfiKLZDLK2pkoYo_LT1IqEPX6WeR5IzQ2DreDkkXgKzbA5i7dMeoeCsLds_fSEUMA96DP-Qu8s8lCKgz2hCOAfb9LPVgmviB/s1600/jsf02.png" height="219" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
3.WEB-INFフォルダ内にfaces-config.xmlを作成し、上記リソースファイルを読み込むように指定する<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQCZ45fhatwrogbFpJy519kcCYFP2wt4yk6bHJBS6bufX0ujjYXXLZMHCfRyLTMiorl5vebVxS_oRxr8xQGB-9WZGe3SaM1EqIZZPq4H5LfZk4ZHA6JAXbYGor3UNVPtGh_qs1WmnWKWcq/s1600/jsf03.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQCZ45fhatwrogbFpJy519kcCYFP2wt4yk6bHJBS6bufX0ujjYXXLZMHCfRyLTMiorl5vebVxS_oRxr8xQGB-9WZGe3SaM1EqIZZPq4H5LfZk4ZHA6JAXbYGor3UNVPtGh_qs1WmnWKWcq/s1600/jsf03.png" height="166" width="320" /></a></div>
<br />
<div class="code">
<?xml version='1.0' encoding='UTF-8'?><br />
<faces-config version="2.2"<br />
xmlns="http://xmlns.jcp.org/xml/ns/javaee"<br />
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br />
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee<br />
http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"><br />
<application><br />
<message-bundle>
stocks/messages/Messages
</message-bundle> </application><br />
</faces-config>
<br />
<br />
<br /></div>
4.xxxx/messages/Messages_ja.propertiesのメッセージをカスタマイズする
<br /><br />(参考書籍:秀和システム わかりやすいJavaEE ウェブシステム入門 川場隆・著)<br />
<div>
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-70653398473887826532015-03-03T17:18:00.002+09:002015-03-03T17:18:47.370+09:00Selenium2でPHPUnit_Extensions_Selenium2TestCaseを使ってプルダウンやラジオボタンを操作するPHPUnit_Extensions_Selenium2TestCaseを継承したテストクラスで、
Yahoo!ファイナンスにアクセスし、ヤフー(株)を検索→検索結果のリンクをクリックして
プルダウンやラジオボタンを操作し、2014年1月1日~2014年12月31日の週間時系列データを
表示させるサンプルです。
<div class="code">
<?php<br />
require_once 'phpunit.phar';<br />
<br />
/*<br />
* PHPUnitとSelinum2を使って、Yahoo!ファイナンスのサイトにアクセスし、<br />
* ヤフー(株)の株価時系列情報の2014年1月1日~2014年12月31日までの<br />
* データを表示します。<br />
*/<br />
class WebTest extends PHPUnit_Extensions_Selenium2TestCase<br />
{<br />
protected function setUp()<br />
{<br />
// http://finance.yahoo.co.jp/にアクセス<br />
$this->setBrowser('chrome');<br />
$this->setBrowserUrl('http://www.google.com');<br />
}<br />
<br />
public function testTitle()<br />
{<br />
// Yahoo!ファイナンスにアクセス<br />
$this->url('http://finance.yahoo.co.jp/');<br />
// 銘柄名でヤフーを検索<br />
$this->byId('searchText')->value('ヤフー');<br />
sleep(5);<br />
// 銘柄検索ボタンをクリック<br />
$this->byId('searchButton')->click();<br />
sleep(5);<br />
// 検索結果からヤフーをクリック<br />
$this->byLinkText('ヤフー(株) [4689] - 東証1部')->click();<br />
sleep(5);<br />
// 「時系列」をクリック<br />
$this->byLinkText('時系列')->click();<br />
sleep(5);<br />
// 2014年1月1日~2014年12月31日、「週間」を選択<br />
$this->select($this->byId('selYear'))->selectOptionByValue('2014');<br />
$this->select($this->byId('selMonth'))->selectOptionByValue('1');<br />
$this->select($this->byId('selDay'))->selectOptionByValue('1');<br />
$this->select($this->byId('selYearT'))->selectOptionByValue('2014');<br />
$this->select($this->byId('selMonthT'))->selectOptionByValue('12');<br />
$this->select($this->byId('selDayT'))->selectOptionByValue('31');<br />
$this->byId('weekly')->click();<br />
sleep(5);<br />
// 表示ボタンをクリック<br />
$this->byClassName('submit')->click();<br />
}<br />
}<br />
?><br />
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-83380484949400873272015-03-03T15:58:00.002+09:002015-03-03T15:58:27.068+09:00<b>PHPUnitとselenium2でブラウザの自動テスト</b><br />
<br />
Selenium ServerはOSを通してブラウザのタスクを自動実行するテストツールです。<br />
ここではPHPによるSeleniumの使い方を解説しています。<br />
<br />
<b>インストール</b><br />
<br />
1.seleniumのサイトからSelenium Serverをダウンロードします。<br />
<br />
<a href="http://docs.seleniumhq.org/download/">http://docs.seleniumhq.org/download/</a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0_AQsGAYRYZBmmpo2bvRzaRo-J6QGMPjTN35TSgUv1QwzFlNMTTqDvp7vQJRvjZ4fhruBEpAAEBwFI7qHMAu_WgY1DOTpA4n0_OiFBjOL2-KUNsT6dEioICF4OZwSkvi934qY-LsAfsWr/s1600/selenium01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0_AQsGAYRYZBmmpo2bvRzaRo-J6QGMPjTN35TSgUv1QwzFlNMTTqDvp7vQJRvjZ4fhruBEpAAEBwFI7qHMAu_WgY1DOTpA4n0_OiFBjOL2-KUNsT6dEioICF4OZwSkvi934qY-LsAfsWr/s1600/selenium01.png" height="179" width="320" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<br />
2.下記のサイトからテストで使用するブラウザのDriverをダウンロードする<br />
(今回はChromeを使用する)<br />
<br />
<a href="https://sites.google.com/a/chromium.org/chromedriver/">https://sites.google.com/a/chromium.org/chromedriver/</a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxw8NDdS1vyYpapxw5BtFgMQpkYW3Fo3hJ_1mKv95EBXfjoEPG3q2UicIixsCl4VxPHjBnpl5FtMvd61CeN3xobDGHvqVrb3C9HYztvquEYJcDnqFwa7a03J8ZPhbk9xCgxMdEApPGRlPz/s1600/selenium02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxw8NDdS1vyYpapxw5BtFgMQpkYW3Fo3hJ_1mKv95EBXfjoEPG3q2UicIixsCl4VxPHjBnpl5FtMvd61CeN3xobDGHvqVrb3C9HYztvquEYJcDnqFwa7a03J8ZPhbk9xCgxMdEApPGRlPz/s1600/selenium02.png" height="178" width="320" /></a></div>
<br />
<br />
3.上記2でダウンロードしたzipファイルの中身を1でダウンロードしたselenium-server-standalone-2.9.0.jarと同じフォルダに展開する<br />
<br />
4.PHPUnitのpharファイルをダウンロードする<br />
<br />
<a href="https://phar.phpunit.de/phpunit.phar">https://phar.phpunit.de/phpunit.phar</a><br />
<br />
5.テスト用のクラス作成<br />
(以下のクラスではwww.google.comにアクセスして、ページのタイトルが'Google'である場合は成功です)<br />
<br />
<div class="code">
<?php<br />
class WebTest extends PHPUnit_Extensions_Selenium2TestCase<br />
{<br />
protected function setUp()<br />
{<br />
$this->setBrowser('chrome');<br />
$this->setBrowserUrl('http://www.google.com');<br />
}<br />
<br />
public function testTitle()<br />
{<br />
$this->url('http://www.google.com');<br />
$this->assertEquals('Google', $this->title());<br />
}<br />
<br />
}<br />
?></div>
<br />
6.selenium2サーバーを起動する<br />
(ダウンロードしたjarファイルのバージョンに読み替えてください)<br />
<br />
selenium2を使用する際に上記3で展開したDriverにパスが通っている必要があるので、以下のようなBATファイルを作成してSelenium Serverを起動するとよいでしょう。<br />
<br />
<div class="code">
SET PATH=%PATH%;.\<br />
<br />
java -jar .\selenium-server-standalone-2.45.0.jar</div>
<br />
7.テストケースの実行<br />
以下のようにして上記5で作成したWebTestクラスを実行します。<br />
<br />
<div class="code">
php phpunit.phar WebTest</div>
<br />
<br />
なおPHPUnitに関しては以下のサイトを参照してください。<br />
<br />
<a href="https://phpunit.de/manual/current/ja/installation.html">https://phpunit.de/manual/current/ja/installation.html</a><br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-2930718613755693982015-02-26T15:02:00.000+09:002015-02-26T15:09:57.867+09:00PHPでTwitterからTweetするまでを日本語で解説PHPでTwitterからTweetするまでを日本語で解説<br />
<br />
1.Twitterのアプリケーション管理のサイトへアクセス<br />
<a href="https://apps.twitter.com/">https://apps.twitter.com/</a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3ZRSa2vKv5E0RuyR6uWT_qbASrO_YffmEBuv5v2QA6kyvUM4bRgGVgAzEMwCP9j06XM4DCPQafT80pqnvHCiSbWvrONudKxs9BkA2Xue8zpxNt1gU_Wq-bfPnvLOQsddQjLo0OT58eoKh/s1600/twitter01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3ZRSa2vKv5E0RuyR6uWT_qbASrO_YffmEBuv5v2QA6kyvUM4bRgGVgAzEMwCP9j06XM4DCPQafT80pqnvHCiSbWvrONudKxs9BkA2Xue8zpxNt1gU_Wq-bfPnvLOQsddQjLo0OT58eoKh/s1600/twitter01.png" height="191" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />
2.[Create New App]をクリック<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhXN1Hrs9NIStMNHd_tko5MWdM6PrgWEnq5h7zQSFNkXqaYH9_Y4sF9xUvKOedvRuHgr97GgJs7d4YF6JA79MUopyAJyUSxzm5NnPi3Q4posETgo089xbRSAGQ2ehIfqM_zK6KN5o0WNS9/s1600/twitter03.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhXN1Hrs9NIStMNHd_tko5MWdM6PrgWEnq5h7zQSFNkXqaYH9_Y4sF9xUvKOedvRuHgr97GgJs7d4YF6JA79MUopyAJyUSxzm5NnPi3Q4posETgo089xbRSAGQ2ehIfqM_zK6KN5o0WNS9/s1600/twitter03.png" height="191" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />
<br />
3.[sign in]をクリック<br />
<br />
4.メールアドレスとパスワードを入力してサインイン<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZxQZF8EHoFfJFdNHnKRQqywBF0_sTIVpoAMXMt3SO9hY1oZo8kUrqXfwEQsNSNsQc6nj6AEaUyhelSwH-kjLkCTfW7GBdqZerV3AGCIcCijy3EF5LOkKJRei_fyszHqev2ITfGoogbMxC/s1600/twitter02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZxQZF8EHoFfJFdNHnKRQqywBF0_sTIVpoAMXMt3SO9hY1oZo8kUrqXfwEQsNSNsQc6nj6AEaUyhelSwH-kjLkCTfW7GBdqZerV3AGCIcCijy3EF5LOkKJRei_fyszHqev2ITfGoogbMxC/s1600/twitter02.png" height="191" width="320" /></a></div>
<br />
<br />
5.とりあえず必須入力項目なのでName, Description, Websiteを入力<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
・Name・・・あなたのアプリケーション名。これは、つぶやきのとユーザ側の認証画面でソースの属性に使用されます。 32文字以内。<br />
・Description・・・ユーザー向けの認証画面に表示され、アプリケーションの説明、。 10と200文字以内の間。<br />
・Website・・・ユーザーは、ダウンロードを利用するか、あなたのアプリケーションの詳細情報を見つけるために行くことができ、アプリケーションのパブリックにアクセスホームページ、。この完全修飾URLは、あなたのアプリケーションで作成されたつぶやきのソース帰属で使用され、ユーザ側の認証画面に表示されます。<br />
(あなたはまだ、URLをお持ちでない場合は、ちょうどここプレースホルダーを入れて、後でそれを変更することを忘れないでください。)<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRJH-2c-EqhIzD5cnCI3ot4de3TGj4d7-LWa8juxh4wWISDxm_bN6llsNcHhPsvr5Vk0mxmQeDKkadL6qGDzfSVCb-GJldYHVMSMuHl8AfadkL7M9ThigZt-G4edySq2Zpla2nmhQwKCBN/s1600/twitter04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRJH-2c-EqhIzD5cnCI3ot4de3TGj4d7-LWa8juxh4wWISDxm_bN6llsNcHhPsvr5Vk0mxmQeDKkadL6qGDzfSVCb-GJldYHVMSMuHl8AfadkL7M9ThigZt-G4edySq2Zpla2nmhQwKCBN/s1600/twitter04.png" height="217" width="320" /></a></div>
<br />
<br />
Developer Agreementに同意するなら[Yes, I agree]にチェックを入れて[Create Your Twitter application]をクリック<br />
<br />
6.以下のErrorが表示された場合、<a href="https://twitter.com/settings/add_phone">https://twitter.com/settings/add_phone</a> にアクセスして携帯電話番号を登録する。<br />
ここで登録した携帯電話宛てに認証コードが送られてくるが、設定によっては迷惑メールに分類されたりするので注意。<br />
送られてきた認証コードを入力してモバイルアプリの登録を完了させる。<br />
<br />
7.認証が完了するとアプリケーション管理の画面にアクセスできる。<br />
<br />
8.Accessレベルを[Read and Write]に変更する。<br />
Access LevelがデフォルトではRead-onlyになっており、このままではTweetできないので、[modify app permissions]をクリックして、<br />
[Read and Write]を選択し、[Update Settings]をクリックする<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgps955IsICffvWcUVBWQqpJ-t5ypT9qIEhuXud_dkzMwtpDrrQGF3GxoiomM1E8o8VF4R9gF_hWJ-bcj_xXknJC2fnLl4jnd6oErdn-iWwWy05tsd2UGe3ohZ5vW-15QAzRdmQHaoBepf4/s1600/twitter05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgps955IsICffvWcUVBWQqpJ-t5ypT9qIEhuXud_dkzMwtpDrrQGF3GxoiomM1E8o8VF4R9gF_hWJ-bcj_xXknJC2fnLl4jnd6oErdn-iWwWy05tsd2UGe3ohZ5vW-15QAzRdmQHaoBepf4/s1600/twitter05.png" height="217" width="320" /></a></div>
<br />
<br />
とりあえずアプリケーションの登録がここまで。実際にコードを書くよりも、登録作業が面倒臭い感じ。<br />
<br />
9.次にtwitteroauthのソースをダウンロード。これはアプリケーションの認証に使用する。<br />
<br />
・<a href="https://github.com/abraham/twitteroauth">https://github.com/abraham/twitteroauth</a> にアクセス<br />
・[Download Zip]をクリック<br />
・ダウンロードしたZipを展開して適当なフォルダ名に変更。(例:twitteroauth)<br />
<br />
10.アプリケーションに必要な情報を取得する。<br />
<br />
・<a href="https://apps.twitter.com/">https://apps.twitter.com/</a> にサインインする<br />
・さきほど作成したアプリケーション名をクリックする<br />
・[Keys and Access Tokens]のタブをクリックし、[Regenerate My Access Token and Token Secret]をクリックしてAccess Tokenを発行する<br />
以下の情報がアプリケーションを作成するのに必要となるのでコピーしておく<br />
<br />
Consumer Key (API Key)<br />
Consumer Secret (API Secret)<br />
Access Token<br />
Access Token Secret<br />
<br />
11.コードはこんな感じ?<br />
<div class="code">
require "twitteroauth/autoload.php";<br />
use Abraham\TwitterOAuth\TwitterOAuth;<br />
<br />
$consumer_key = "XXXXXXXXXXXXXXXXXXXXXXXXX";<br />
$consumer_secret = "XXXXXXXXXXXXXXXXXXXXXXXXX";<br />
$access_token = "XXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXX";<br />
$access_token_secret = "XXXXXXXXXXXXXXXXXXXXXXXXX";<br />
<br />
$connection = new TwitterOAuth($consumer_key, $consumer_secret, $access_token, $access_token_secret);<br />
<br />
$res = $connection->post("statuses/update", array("status" => "こんにちは Twitter"));<br />
<br />
echo print_r($res, true);</div>
<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-15304334443889905882015-02-22T15:53:00.000+09:002015-02-23T11:18:44.476+09:00SSHでログインしてvimで作業するときに、日本語が文字化けするのでvimを置き換えてみたさくらインターネットのサーバーを利用しているのだが、SSHでログインしてソースを修正するときにコメントなどの日本語が文字化けするので、.cshrcを編集して日本語を正しく表示できるようにしてみた。<br />
<br />
<br />
<div class="code">
alias vi "jvim3 -K TTT -k t"<br/>
#setenv EDITOR vi<br/>
setenv EDITOR jvim3<br/>
setenv LANG ja_JP.UTF-8<br/>
</div>
jvim3がインストールされていたので、jvim3のエイリアスにviを割り当てて、ついでにデフォルトの言語をja_JP.UTF-8に変更。
一旦、ログアウトしてログインしなおしたら無事日本語が文字化けせずに表示された。
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-53867068389351812352015-02-21T16:46:00.000+09:002015-02-21T16:46:05.121+09:00XAMPPをインストール久しぶりにPHPでアプリケーションを作りたくなり、手っ取り早く開発環境を整えるためにXAMPPをインストールしました。
<br />
<br />
XAMPP は最も人気のある PHP 開発環境です。
XAMPP は、完全に無償で MySQL、PHP、および Perl を含んだ、簡単にインストールできる Apache ディストリビューションです。XAMPP オープン ソース パッケージは、インストールと利用が非常に簡単できるよう設定されています。<br />
<br />
1.ダウンロード<br />
<a href="https://www.apachefriends.org/jp/download.html">https://www.apachefriends.org/jp/download.html</a> から今回は5.6.3 / PHP 5.6.3をダウンロード。<br />
<br />
2.ダウンロードしたインストーラを実行します<br />
<br />
3.アンチウィルスソフトが動作していると下のような質問が表示されますが、「Yes」をクリックして次へ進みます。<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtekKwOvzN7otOiwYugHTdlW96tBua9YrtlHY9d3bKGESetrGG3YDg0SIgEuigwtBbltY6riOyajd39UAQueX87ydrfJlEEudZ6Vd3dzVwK7RQ9hW_UyBsOljepELiARvvslDKnLgG8xJe/s1600/xampp01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtekKwOvzN7otOiwYugHTdlW96tBua9YrtlHY9d3bKGESetrGG3YDg0SIgEuigwtBbltY6riOyajd39UAQueX87ydrfJlEEudZ6Vd3dzVwK7RQ9hW_UyBsOljepELiARvvslDKnLgG8xJe/s1600/xampp01.png" height="141" width="320" /></a></div>
<br />
<br />
4.今度は下のような警告が表示されますが、「OK」をクリックして次へ進みます。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkIkU2KCqE60jvtGQOE7ePz6TWaQUgiTpj1RN4VEzziPjBOJENUuofmTSllzGaVlZETPkw1s6a9xekmcMJTiUd5K3Kc6BYD5x1_7VqWc4i8XpvulW3SoUEhfx-eKYcA33vHf4AAWnus3Hz/s1600/xampp02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkIkU2KCqE60jvtGQOE7ePz6TWaQUgiTpj1RN4VEzziPjBOJENUuofmTSllzGaVlZETPkw1s6a9xekmcMJTiUd5K3Kc6BYD5x1_7VqWc4i8XpvulW3SoUEhfx-eKYcA33vHf4AAWnus3Hz/s1600/xampp02.png" height="105" width="320" /></a></div>
<br />
5.ようやくインストールが始まります。<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUB4tMIYAmoYzEvRm1-xxR1TNbVZCxDbLCs9DSrlex9bH8jkeRjdREumLqtBGAhQ7ZzWdO1OSg60z8qDN01BDwvlQ95sNuyroklbdPGf5u_0Cnj9ipgdool6TBYl51oOb77QBQxM5F5Nk5/s1600/xampp03.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUB4tMIYAmoYzEvRm1-xxR1TNbVZCxDbLCs9DSrlex9bH8jkeRjdREumLqtBGAhQ7ZzWdO1OSg60z8qDN01BDwvlQ95sNuyroklbdPGf5u_0Cnj9ipgdool6TBYl51oOb77QBQxM5F5Nk5/s1600/xampp03.png" height="267" width="320" /></a></div>
<br />
6.必要なコンポーネントを選択します。とりあえずデフォルトで全部チェック入っているので、そのまま「Next」でいいでしょう。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOSrlhn0H7IEANLu86PEhGUP1bmSGwKZl2ycLCOo4NlzDQvP_y8V39VkSzjO54hDBgUqtHHI6sRYhkSQqPxSSLpNhOrv9DuuE87LE4kg5GMtGUyG3hkcxfdUCOraapnEZqwke8zM-mEjoG/s1600/xampp04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOSrlhn0H7IEANLu86PEhGUP1bmSGwKZl2ycLCOo4NlzDQvP_y8V39VkSzjO54hDBgUqtHHI6sRYhkSQqPxSSLpNhOrv9DuuE87LE4kg5GMtGUyG3hkcxfdUCOraapnEZqwke8zM-mEjoG/s1600/xampp04.png" height="267" width="320" /></a></div>
<br />
7.インストール先も特に問題がなければそのままで「Next」をクリック。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib09lmspo51hFge9OYi7I2w5RQQBvlyL5M9C-HCHOJDtLM09-VyhjIymZ6F6zjY3IQRlquXrZWauUgJkbA6Snj3OMjA6VEkJ7oIWzD_Iz9-Q9Io8NTYt47ZXN_NfjiGpORrGTb9cDT772O/s1600/xampp05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEib09lmspo51hFge9OYi7I2w5RQQBvlyL5M9C-HCHOJDtLM09-VyhjIymZ6F6zjY3IQRlquXrZWauUgJkbA6Snj3OMjA6VEkJ7oIWzD_Iz9-Q9Io8NTYt47ZXN_NfjiGpORrGTb9cDT772O/s1600/xampp05.png" height="267" width="320" /></a></div>
<br />
8.Bitnamiからのお知らせもそのまま「Next」をクリック。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7shdne-_HmCgC3M4y15iJNQAOoyU9fKuUXjpIIr-_27w7vaDO001XcXbwLt-bVKx1CWfV5Dl5znYuinWB1-YxdAzf5SLH3NArshNFePLH5J6kDhiNHYDJZuSBk_UYOOdvCCJHAdx6AEO_/s1600/xampp06.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7shdne-_HmCgC3M4y15iJNQAOoyU9fKuUXjpIIr-_27w7vaDO001XcXbwLt-bVKx1CWfV5Dl5znYuinWB1-YxdAzf5SLH3NArshNFePLH5J6kDhiNHYDJZuSBk_UYOOdvCCJHAdx6AEO_/s1600/xampp06.png" height="267" width="320" /></a></div>
<br />
9.ここで「Next」をクリックすると後は待つだけ。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcn5m07nNKCo912tDgH8hHRJ9uSSxbAalXN7VGe_pvlZyJ5SsCcKWe23XDKiGXI8GuT-WzRReyBDCi5Zm4QqWsMSNTBf_XcUauY-mQMcYDXjA-_c7mSw4fvANRfKn_ZXp9Tseoq_y_8oWv/s1600/xampp08.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcn5m07nNKCo912tDgH8hHRJ9uSSxbAalXN7VGe_pvlZyJ5SsCcKWe23XDKiGXI8GuT-WzRReyBDCi5Zm4QqWsMSNTBf_XcUauY-mQMcYDXjA-_c7mSw4fvANRfKn_ZXp9Tseoq_y_8oWv/s1600/xampp08.png" height="267" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
10.XAMPPのControl Panelを開始するか聞いてくるので、チェックボックスをONにして「Finish」をクリック。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEt8xhfomOQxicUxMCdi4aiMPJ7NzZlMZ7ZqqrJ38mNL7iDSjJFvBIeuKA5bFgRUi48TQXG9geq5rCYp3vVIESIA2uOVcmq3bycKtNdunEHXju4CZXyJ_I3Mt0D4Wwj4zBeAkoJMYFe4BZ/s1600/xampp09.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEt8xhfomOQxicUxMCdi4aiMPJ7NzZlMZ7ZqqrJ38mNL7iDSjJFvBIeuKA5bFgRUi48TQXG9geq5rCYp3vVIESIA2uOVcmq3bycKtNdunEHXju4CZXyJ_I3Mt0D4Wwj4zBeAkoJMYFe4BZ/s1600/xampp09.png" height="267" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
11.サービスとして動作させたいアプリケーションを設定します。</div>
<div class="separator" style="clear: both; text-align: left;">
サービスとしてインストールしておくと、Windowsの起動時に自動的に実行されるので、手動で動かす手間が省けます。反面、Windowdsの起動に時間がかかったりする場合もあるので、ここはお好みで。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
私の場合はApacheとMySQLをサービスとしてインストールしたいので、この2つのチェックを有効にしました。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLWhDXDqDntxl5cEJQpLcsbkWJtdTVOysolL4Cqpi-WFnvCpd9Ff6ecaBMq7yNqT_AuodoJaq9S1rVYEcSpK-XKu66-xO_nYBsmLxCr1C9YWYC0hDHg9veUI30RXblY6JQd5a6ahyphenhyphenOZst0/s1600/xampp10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLWhDXDqDntxl5cEJQpLcsbkWJtdTVOysolL4Cqpi-WFnvCpd9Ff6ecaBMq7yNqT_AuodoJaq9S1rVYEcSpK-XKu66-xO_nYBsmLxCr1C9YWYC0hDHg9veUI30RXblY6JQd5a6ahyphenhyphenOZst0/s1600/xampp10.png" height="205" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
12.最後にApacheとMySQLの「Start」ボタンをクリックします。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc7LDNjaDT1utF2SPNcccN9d5cQOrY_GK0mnbpz8hKFi-SJQKJfga15Zm9jSx1wytRmCExzaLcYqTOh7fvV2rFfy2dfMnW8pf_1PP8bUeYxr-31OqR3GS34ZtlYTIrwev7o-FK09w3YFbP/s1600/xampp11.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc7LDNjaDT1utF2SPNcccN9d5cQOrY_GK0mnbpz8hKFi-SJQKJfga15Zm9jSx1wytRmCExzaLcYqTOh7fvV2rFfy2dfMnW8pf_1PP8bUeYxr-31OqR3GS34ZtlYTIrwev7o-FK09w3YFbP/s1600/xampp11.png" height="205" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
13.動作確認してみましょう。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
ブラウザを起動して http://localhost にアクセスして以下の画面が表示されればインストールは成功です。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHpDhErP3lrk2qwKXYuVzCdmJIWhyphenhyphentE-jcw1hKoe7F4cx6FGzzbODjU0xOrGGRRsdUCyYbQg-35dN988qzgKhT6zyOohHmhBBzxBgZny7OCNAdP2k178RCPDif11tNBVgSzF0UCk3SbYAC/s1600/xampp12.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHpDhErP3lrk2qwKXYuVzCdmJIWhyphenhyphentE-jcw1hKoe7F4cx6FGzzbODjU0xOrGGRRsdUCyYbQg-35dN988qzgKhT6zyOohHmhBBzxBgZny7OCNAdP2k178RCPDif11tNBVgSzF0UCk3SbYAC/s1600/xampp12.png" height="201" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-28068120860447748132014-12-10T10:37:00.002+09:002014-12-15T09:46:58.101+09:00日付_時刻のフォルダを作成してカレントディレクトリ内のファイルをバックアップするバッチファイル日付_時刻のフォルダを作成してカレントディレクトリ内のファイルをバックアップするバッチファイル
<br />
<div class="code">
<br />
@ECHO OFF<br />
<br />
SET YYYYMMDD=%DATE:~-10,4%%DATE:~-5,2%%DATE:~-2,2%<br />
SET HHMM=%TIME:~0,8%<br />
set HHMM=%HHMM::=%<br />
set HHMM=%HHMM: =0%<br />
<br />
SET DIR_NAME=%YYYYMMDD%_%HHMM%<br />
<br />
ECHO %DIR_NAME%<br />
MKDIR %DIR_NAME%<br />
<br />
COPY .\* %DIR_NAME%<br />
<br />
PAUSE<br />
<div>
<br /></div>
</div>
<br />
<div>
</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-29736935994845438182014-12-07T18:02:00.001+09:002014-12-07T18:02:05.593+09:00YouTubeの動画をダウンロードするにはYouTubeの動画をダウンロードするには<br />
<br />
① 以下のURLからRealPlayerをダウンロードします
<br />
<br />
http://jp.real.com/windows/<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikU_hvMzurTBZW8vyAYiHT0LjRyYW2ONwfEIq2D_ECf3naLqCwbN5uMuzv0YbyojE3cyMVEx1OrtnCDfTg0ZbrAyi6rsuBjkbGNUt_nd44e16CbM3Bbe-roOAjDNymyhGK2lwn8L64Y2Qd/s1600/real01.png" imageanchor="1"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikU_hvMzurTBZW8vyAYiHT0LjRyYW2ONwfEIq2D_ECf3naLqCwbN5uMuzv0YbyojE3cyMVEx1OrtnCDfTg0ZbrAyi6rsuBjkbGNUt_nd44e16CbM3Bbe-roOAjDNymyhGK2lwn8L64Y2Qd/s320/real01.png" /></a><br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0iYDtmwGdxIbbtwPkQXtWqe1OndQGsU4dffY0rBKnGTAFo5z70TXPbooEOAss2rLUsVKecXwb2obJMyJJB0pr836FgzwLCK6N2Q3zKfDMB2RGreUpASbpVzPHWvgJD8WdRmBWEmoFxmMu/s1600/real02.png" imageanchor="1"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0iYDtmwGdxIbbtwPkQXtWqe1OndQGsU4dffY0rBKnGTAFo5z70TXPbooEOAss2rLUsVKecXwb2obJMyJJB0pr836FgzwLCK6N2Q3zKfDMB2RGreUpASbpVzPHWvgJD8WdRmBWEmoFxmMu/s320/real02.png" /></a><br />
<br />
② ダウンロードしたRealPlayerCloud_ja.exeを実行します<br />
<br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhusyA-73jLx9c1lzWG2hQ4k5vZpyPo2UPjyvyXhmslnlhyphenhyphenSrkjjGqCHAGesYpa5Gs8TztL-sVPrmI3kI2lNJkdQjDnJGpy1tBjutVBH_26mXzZGvJTjB8e7e8MpCgO3hJGqFov7hK7naoi/s1600/real03.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhusyA-73jLx9c1lzWG2hQ4k5vZpyPo2UPjyvyXhmslnlhyphenhyphenSrkjjGqCHAGesYpa5Gs8TztL-sVPrmI3kI2lNJkdQjDnJGpy1tBjutVBH_26mXzZGvJTjB8e7e8MpCgO3hJGqFov7hK7naoi/s1600/real03.png" height="207" width="320" /></a><br /><br />
③ 「次のプログラムにこのコンピュータへの変更を許可しますか?」と聞かれたら「はい」<br /><br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVMTg4ZTiK2CK35Wxz38SMGDdNVhZlTXr8T4jKJIlQN2fWfWsZKmrfVoujBqnHvoK9HjinciQis8NuAIFiWjcmOdHqB9VI9oQFsQAtTWCBcx6t7VgxsP8ohhApB3n5KuPrClB1glBdTU_R/s1600/real04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVMTg4ZTiK2CK35Wxz38SMGDdNVhZlTXr8T4jKJIlQN2fWfWsZKmrfVoujBqnHvoK9HjinciQis8NuAIFiWjcmOdHqB9VI9oQFsQAtTWCBcx6t7VgxsP8ohhApB3n5KuPrClB1glBdTU_R/s1600/real04.png" height="179" width="320" /></a><br />
<br />
④ [同意する]をクリック<br /><br />
<div style="text-align: start;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJYHGD8iEmai2C5JNwsbCW_h22G478I-aSNpYMMdf2FlkcwO6IYzj4CTLxWl7QKdQRtoQOB3XC59LIo8sx4fpBFvhdZko_q-ehTO-nDbpLe4hBFm5J90bbZ6MuBdr2xZs0JRNVHjh9bYYC/s1600/real05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJYHGD8iEmai2C5JNwsbCW_h22G478I-aSNpYMMdf2FlkcwO6IYzj4CTLxWl7QKdQRtoQOB3XC59LIo8sx4fpBFvhdZko_q-ehTO-nDbpLe4hBFm5J90bbZ6MuBdr2xZs0JRNVHjh9bYYC/s1600/real05.png" height="290" width="320" /></a><br /></div>
<div style="text-align: start;">
⑤ BaiduIME 日本語入力システムをインストールするか確認されるので</div>
<div style="text-align: start;">
<b><span style="font-size: large;"> チェックボックスを外す</span></b>(インストールしない)<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf9vxfQRZpnuh5s7Ru4yzB0xiNxpo4WrTu_DJXlm-SnI46Z03_Ygc9rRc2xvQHr9mT_2K0dbPWb-oMprlnulOGU2mioGub-4FtB4SV_RQcNggja7auf2ufqYr9ZYM-IJ7Z56PmHZkkFQ3q/s1600/real06.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf9vxfQRZpnuh5s7Ru4yzB0xiNxpo4WrTu_DJXlm-SnI46Z03_Ygc9rRc2xvQHr9mT_2K0dbPWb-oMprlnulOGU2mioGub-4FtB4SV_RQcNggja7auf2ufqYr9ZYM-IJ7Z56PmHZkkFQ3q/s1600/real06.png" height="290" width="320" /></a><br /></div>
<div style="text-align: start;">
⑥ セットアップを選択するように聞かれても画面右上のXボタンで閉じる<br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjU62CI1Zj07LqFb2EURurKwaACuJDR7rBhbMh7K6j_kmCwYvR_kLIJVqYQA5NsEjWgxgdkGm7zHG5u982KlFbBwczu6ltAiPPMiXnFZKq0wbVA4YBBG5LkOdnwJis9wB6wLut2Noytcdsr/s1600/real07.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjU62CI1Zj07LqFb2EURurKwaACuJDR7rBhbMh7K6j_kmCwYvR_kLIJVqYQA5NsEjWgxgdkGm7zHG5u982KlFbBwczu6ltAiPPMiXnFZKq0wbVA4YBBG5LkOdnwJis9wB6wLut2Noytcdsr/s1600/real07.png" height="290" width="320" /></a><br /></div>
<div style="text-align: start;">
⑦ 「PCライブラリへのメディアの追加」は「次へ」をクリックする<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ3rJY690DWr8aGOloN5rSw4cxT8KXGid1A3H3DTlg-2LyvXJ5FlVbHGb8k91urBqkA6afzZgz76WXTN-jJff5v0bXZXhrplz_Vgmiq-LlWNJvPyEwx9Oukc9TK9GTXH1u2HhvWC9pfedI/s1600/real08.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ3rJY690DWr8aGOloN5rSw4cxT8KXGid1A3H3DTlg-2LyvXJ5FlVbHGb8k91urBqkA6afzZgz76WXTN-jJff5v0bXZXhrplz_Vgmiq-LlWNJvPyEwx9Oukc9TK9GTXH1u2HhvWC9pfedI/s1600/real08.png" height="202" width="320" /></a><br /></div>
<div style="text-align: start;">
⑧ 「結果」が表示されたら「完了」をクリックする。<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYdBwfyS8q9tRCQBhROPBQXmA9lCK5sirwkMENfFevJWTqyuAQ_1QfdPbfjAkNNTKpLBwLj8hbh18PvaWmmn2elVv8Iz0rd2U_-YRzErQG5JmJHMqQBaVuxE0Ot19XJLN5UOW9I-aSBoVt/s1600/real10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYdBwfyS8q9tRCQBhROPBQXmA9lCK5sirwkMENfFevJWTqyuAQ_1QfdPbfjAkNNTKpLBwLj8hbh18PvaWmmn2elVv8Iz0rd2U_-YRzErQG5JmJHMqQBaVuxE0Ot19XJLN5UOW9I-aSBoVt/s1600/real10.png" height="202" width="320" /></a><br /></div>
<div style="text-align: start;">
⑨ ここから先はインストールしたRealPlayerで動画を保存する方法です。</div>
<div style="text-align: start;">
[スタート]→[すべてのプログラム]→[RealNetworks]→[RealPlayer]でRealPlayerを起動します。<br /> 勝手に動画ニュースが再生され始めるので動画の左下にある一時停止ボタンで止めます。</div>
<div style="text-align: start;">
(これをやっとかないと、YouTubeと同時にニュースも再生されるので邪魔)<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSAfOsL0Vorl3LEhTFFxcE6-axbx3xAB5gkyAwvnVaJtpRex9GY4ItrUFewh9hN9W3mNBgNAPYg5uraDeH1IJmX6H8tIx5jklJPdio9etv-r2vCugkNp4z9b3lXvbayr7pv4k5eOH8aSIp/s1600/real11.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSAfOsL0Vorl3LEhTFFxcE6-axbx3xAB5gkyAwvnVaJtpRex9GY4ItrUFewh9hN9W3mNBgNAPYg5uraDeH1IJmX6H8tIx5jklJPdio9etv-r2vCugkNp4z9b3lXvbayr7pv4k5eOH8aSIp/s1600/real11.png" height="192" width="320" /></a><br /></div>
<div style="text-align: start;">
⑩ 画面左上の[RealPlayer Cloud]のボタンをクリックして[ファイル]→[開く]をクリックします<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiap_fI4-ZrU6hjtFQbit2iv1nxvTyFe0U4wHyQfxE3YC0Zyf7rWSIwFtxf5T-c-XOOnK1JdvwQmhw6pCaCcB8acb7_SjUgcZxGFmT4CRCHmV-3zTXgcDi-J_0PerQG0lXkxWR7t4ie_R57/s1600/real12.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiap_fI4-ZrU6hjtFQbit2iv1nxvTyFe0U4wHyQfxE3YC0Zyf7rWSIwFtxf5T-c-XOOnK1JdvwQmhw6pCaCcB8acb7_SjUgcZxGFmT4CRCHmV-3zTXgcDi-J_0PerQG0lXkxWR7t4ie_R57/s1600/real12.png" height="263" width="320" /></a><br /></div>
<div style="text-align: start;">
⑪ [開く]の画面が表示されたら「youtube.com」と入力します。<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtFZBwuIlHu24dsuHNFz5ldKaNXSzLAfzx6h4DUYChcVkHVDAX2Kxf7OwEcMCENPMslZFeQIM5ktSSXbs1HZ0W5VcRzqNTKgB52i3hRVW0xXFR9Oy6ghIoMlwrEtASZX6RGlBXB64ioNQK/s1600/real13.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtFZBwuIlHu24dsuHNFz5ldKaNXSzLAfzx6h4DUYChcVkHVDAX2Kxf7OwEcMCENPMslZFeQIM5ktSSXbs1HZ0W5VcRzqNTKgB52i3hRVW0xXFR9Oy6ghIoMlwrEtASZX6RGlBXB64ioNQK/s1600/real13.png" height="106" width="320" /></a><br /><br />⑫ RealPlayerの中でYouTubeが見れるので、お目当ての動画を表示して再生すると、</div>
<div style="text-align: start;">
動画の右上に「このビデオをダウンロード」というボタンが表示されるので、これをクリックする<br /> とPCに動画がダウンロードできます。<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrRw-nPZUyf3MWzvxO1nTM-HYDnww28vS3RvS0ytrJR6uz8C8Q5MvEFNpuFcK3EcKHvfw_tDffT6KeZ0byzlNy5YtWQZEHhOCCuCTVjyuCsTTi1OvcP1frdbE4mwzOuJrb2OVVpjrN0TjF/s1600/real14.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrRw-nPZUyf3MWzvxO1nTM-HYDnww28vS3RvS0ytrJR6uz8C8Q5MvEFNpuFcK3EcKHvfw_tDffT6KeZ0byzlNy5YtWQZEHhOCCuCTVjyuCsTTi1OvcP1frdbE4mwzOuJrb2OVVpjrN0TjF/s1600/real14.png" height="192" width="320" /></a></div>
<div style="text-align: start;">
<br /></div>
<div style="text-align: start;">
⑬ ちなみに次回以降RealPlayerを起動するとFaceBookにログインするように言われるけど、画面右上のXボタンで無視できます。<br /><div style="text-align: start;">
<br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZHTkYwXb9Qun-t1-qnvbvsRMPh_1oRe1rm7hlo-HSaQjbXtnJUexkOF_kT6cGTnE-cZwqFz1hyphenhyphen2MRC5MhywJpNAnQ3XE_Vo8CYoE7cgxe2FY1XJH3LgKCq2q7YtDmx4bLnrsTrp6Q5sIA/s1600/real15.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZHTkYwXb9Qun-t1-qnvbvsRMPh_1oRe1rm7hlo-HSaQjbXtnJUexkOF_kT6cGTnE-cZwqFz1hyphenhyphen2MRC5MhywJpNAnQ3XE_Vo8CYoE7cgxe2FY1XJH3LgKCq2q7YtDmx4bLnrsTrp6Q5sIA/s1600/real15.png" height="310" width="320" /></a></div>
</div>
<div style="text-align: start;">
<br /></div>
<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-35227174092238577712014-11-28T14:28:00.000+09:002014-11-28T14:29:06.156+09:00スネーク記法をキャメル記法に変換するExcelの関数DBの仕様書をもとにクラスのメンバを定義するのはよくあること。
DBのカラム名はスネーク記法で定義されていて、クラスのメンバはキャメル記法な場合にExcelで一気にスネーク記法からキャメル記法に変換するのに使ってました。
<div class="code">
Attribute VB_Name = "snake2Camel"<br/>
Option Explicit<br/>
<br/>
Const DELIMITER_SNAKE = "_"<br/>
Const DELIMITER_CHAIN = "-"<br/>
Const DELIMITER_CAMEL = ""<br/>
<br/>
'------------------------------------------------------------<br/>
' 文字列strをUpperCamel形式に変換して返す<br/>
'------------------------------------------------------------<br/>
Function UpperCamel(ByVal str As String)<br/>
Dim delimiter As String<br/>
Dim i As Integer 'loop index<br/>
Dim tmp As String<br/>
<br/>
'変換前の記法を判定<br/>
If InStr(str, DELIMITER_SNAKE) > 0 Then<br/>
delimiter = DELIMITER_SNAKE<br/>
ElseIf InStr(str, DELIMITER_CHAIN) > 0 Then<br/>
delimiter = DELIMITER_CHAIN<br/>
Else<br/>
delimiter = DELIMITER_CAMEL<br/>
End If<br/>
<br/>
If delimiter <> DELIMITER_CAMEL Then<br/>
Dim tokens() As String<br/>
tokens = Split(str, delimiter)<br/>
For i = 0 To UBound(tokens)<br/>
tokens(i) = UCase(Left(tokens(i), 1)) & LCase(Mid(tokens(i), 2))<br/>
Next<br/>
str = Join(tokens, "")<br/>
Else<br/>
str = UCase(Left(str, 1)) & LCase(Mid(str, 2))<br/>
End If<br/>
<br/>
'最初の1文字と数字の次は大文字<br/>
tmp = UCase(Left(str, 1))<br/>
For i = 2 To Len(str)<br/>
If InStr("0123456789", Mid(str, i - 1, 1)) > 1 Then<br/>
tmp = tmp & UCase(Mid(str, i, 1))<br/>
Else<br/>
tmp = tmp & Mid(str, i, 1)<br/>
End If<br/>
Next<br/>
UpperCamel = tmp<br/>
<br/>
End Function<br/>
<br/>
'------------------------------------------------------------<br/>
' 文字列strをlowerCamel形式に変換して返す<br/>
'------------------------------------------------------------<br/>
Function LowerCamel(ByVal str As String)<br/>
Dim delimiter As String<br/>
Dim i As Integer 'loop index<br/>
Dim tmp As String<br/>
<br/>
'変換前の記法を判定<br/>
If InStr(str, DELIMITER_SNAKE) > 0 Then<br/>
delimiter = DELIMITER_SNAKE<br/>
ElseIf InStr(str, DELIMITER_CHAIN) > 0 Then<br/>
delimiter = DELIMITER_CHAIN<br/>
Else<br/>
delimiter = DELIMITER_CAMEL<br/>
End If<br/>
<br/>
If delimiter <> DELIMITER_CAMEL Then<br/>
Dim tokens() As String<br/>
tokens = Split(str, delimiter)<br/>
For i = 0 To UBound(tokens)<br/>
tokens(i) = UCase(Left(tokens(i), 1)) & LCase(Mid(tokens(i), 2))<br/>
Next<br/>
str = Join(tokens, "")<br/>
Else<br/>
'小文字が一つも出現しない場合は1単語とみなして全て小文字化<br/>
If Not isContainSmallCase(str) Then<br/>
str = LCase(str)<br/>
End If<br/>
End If<br/>
<br/>
'最初の1文字は小文字、数字の次は大文字<br/>
tmp = LCase(Left(str, 1))<br/>
For i = 2 To Len(str)<br/>
If InStr("0123456789", Mid(str, i - 1, 1)) > 1 Then<br/>
tmp = tmp & UCase(Mid(str, i, 1))<br/>
Else<br/>
tmp = tmp & Mid(str, i, 1)<br/>
End If<br/>
Next<br/>
LowerCamel = tmp<br/>
<br/>
End Function<br/>
<br/>
'------------------------------------------------------------<br/>
' 文字列strに小文字を含む場合はTRUEを返す<br/>
'------------------------------------------------------------<br/>
Function isContainSmallCase(ByVal str As String) As Boolean<br/>
Dim i As Integer ' loop index<br/>
Dim a As Integer ' ascii code<br/>
isContainSmallCase = False<br/>
For i = 1 To Len(str)<br/>
a = Asc(Mid(str, i, 1))<br/>
If a >= 97 And a <= 122 Then<br/>
isContainSmallCase = True<br/>
End If<br/>
Next<br/>
End Function<br/>
</div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-75455860537842708332014-09-18T17:11:00.001+09:002014-09-18T17:11:16.330+09:00Eclipse上のTomcatをデバッグで起動しようとしたらAGENT_ERROR_TRANSPORT_INITEclipse上のTomcatをデバッグで起動しようとしたらコンソールにAGENT_ERROR_TRANSPORT_INITが表示されてデバッグ起動が失敗。
<br /><br />
<div class="code">
ATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
ERROR: transport error 202: gethostbyname: unknown host
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:741]
</div>
サーバー、プロジェクトをクリーンしても起動できず・・・
Eclipseをクリーンしたところ起動できた。
<br /><br />
<div class="code">
cd /d %~dp0
start .\eclipse.exe -clean %*
</div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-63512264930625240432013-12-03T11:28:00.002+09:002013-12-03T11:28:43.435+09:00チートシートあれこれHTML5タグ★チートシート<br />
<a href="http://www.atmarkit.co.jp/fdotnet/chushin/cheatsheet_02/cheatsheet_02.pdf">http://www.atmarkit.co.jp/fdotnet/chushin/cheatsheet_02/cheatsheet_02.pdf</a><br />
<br />
XPath チートシート<br />
<a href="http://aoproj.web.fc2.com/xpath/XPath_cheatsheets_v2.pdf">http://aoproj.web.fc2.com/xpath/XPath_cheatsheets_v2.pdf</a><br />
<br />
Vimチートシート<br />
<a href="http://www.namaraii.com/files/vim-cheatsheet.pdf">http://www.namaraii.com/files/vim-cheatsheet.pdf</a><br />
<br />
OpenCV 2.2 チートシート(C++)<br />
<a href="http://opencv.jp/opencv-2.2/opencv_cheatsheet.pdf">http://opencv.jp/opencv-2.2/opencv_cheatsheet.pdf</a><br />
<br />
WordPressチートシート<br />
<a href="http://www.webcreatorbox.com/wp-content/themes/wcb/images/wordpress_cheatsheet3.pdf">http://www.webcreatorbox.com/wp-content/themes/wcb/images/wordpress_cheatsheet3.pdf</a><br />
<br />
MySQLチートシート<br />
<a href="http://www.mysqlpracticewiki.com/files/cheat-sheet.pdf">http://www.mysqlpracticewiki.com/files/cheat-sheet.pdf</a><br />
<br />
CSSチートシート<br />
<a href="http://www.textdrop.net/wp-content/uploads/css-cheat-sheet-v2-ja.pdf">http://www.textdrop.net/wp-content/uploads/css-cheat-sheet-v2-ja.pdf</a><br />
<br />
JUnitチートシート<br />
<a href="http://image.gihyo.co.jp/assets/files/book/2012/978-4-7741-5377-3/download/junitbook_cheatsheet.pdf">http://image.gihyo.co.jp/assets/files/book/2012/978-4-7741-5377-3/download/junitbook_cheatsheet.pdf</a><br />
<br />
<a href="http://www.blogger.com/goog_1799172038">Mac OS X チートシート</a><br />
<a href="http://www.senote.org/dl/cheatsheet/MacOSX-CheatSheet-2in1p.pdf">http://www.senote.org/dl/cheatsheet/MacOSX-CheatSheet-2in1p.pdf</a><br />
<br />
物流用語チートシート<br />
<a href="http://www.boldweb.jp/work/cs/butsuryu-cheat-sheet-v0.1.pdf">http://www.boldweb.jp/work/cs/butsuryu-cheat-sheet-v0.1.pdf</a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-14403262221021263302013-12-02T11:42:00.000+09:002013-12-02T11:42:48.174+09:00iBatisでSQLのWHEREでINキーワードを使うにはiBatisでSQLのWHEREでINキーワードを使うには、parameterClassにListを使用する。
sqlMap
<pre>
<select id="select-test" resultMap="MyTableResult" parameterClass="list">
select * from my_table where col_1 in
<iterate open="(" close=")" conjunction=",">
#[]#
</iterate>
</select>
</pre>
Java
<pre>
List<String> list = new ArrayList<String>(3);
list.add("1");
list.add("2");
list.add("3");
List objs = sqlMapClient.queryForList("select-test",list);
</pre>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-90740310701741266502013-11-28T15:54:00.001+09:002013-11-28T15:54:54.470+09:00Excelのセル内のテキストをもとにShapeを作り、グループ化するマクロExcelで作成したDBのテーブル定義書などをもとにER図をExcelのShapeを使って作成するのを補助するマクロです。
カラム名を選択した状態でこのマクロを実行すると、各セル単位でShapeを作成し、グループ化します。
ER図作成時にコネクタを任意のカラムに結合したのに、レイアウトの都合からShapeを移動するとコネクタの位置がずれるので作成しました。
<pre>
Sub CellTextToShape()
'
' ER図作成補助 Macro
' 選択された範囲の文字列をテキストとするShapeを作成する
'
' Keyboard Shortcut: Ctrl+q
'
Set xColumns = New Collection
'外枠
px = Selection.Left - 5
py = Selection.Top - 5
pw = Selection(1).Width + 10
ph = Selection(1).Height * Selection.Count + 10
Dim xParent As Shape
Set xParent = ActiveSheet.Shapes.AddShape(Type:=msoShapeRectangle, Left:=px, Top:=py, Width:=pw, Height:=ph)
xParent.Line.ForeColor.RGB = RGB(0, 0, 0)
xParent.Fill.ForeColor.RGB = RGB(255, 255, 255)
xColumns.Add xParent
'中身
For i = Selection(1).Row To Selection(Selection.Count).Row
nCol = Selection(1).Column
nRow = Selection(1).Row
x = Cells(i, nCol).Left
y = Cells(i, nCol).Top
w = Cells(i, nCol).Width
h = Cells(i, nCol).Height
txt = Cells(i, nCol).Value
s = Cells(i, nCol).Font.Size
Dim xShape As Shape
Set xShape = ActiveSheet.Shapes.AddShape(Type:=msoShapeRectangle, Left:=x, Top:=y, Width:=w, Height:=h)
xShape.TextFrame.Characters.Text = txt
xShape.TextFrame.Characters.Font.Color = vbBlack
xShape.TextFrame.Characters.Font.Size = s
xShape.TextFrame.HorizontalAlignment = xlHAlignLeft
xShape.TextFrame.MarginBottom = 0
xShape.TextFrame.MarginTop = 0
xShape.Fill.Visible = False
xShape.Line.Visible = False
xShape.Name = txt
xColumns.Add xShape
Debug.Print (txt & vbTab & w & vbTab & h)
'ActiveSheet.Shapes(txt).TextFrame.Characters.Text = txt
Next
For Each xShape In xColumns
xShape.Select Replace:=False
Next
Selection.Group
End Sub
</pre>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3654427792807758476.post-92043952776392279692013-11-28T14:09:00.001+09:002013-11-28T14:09:34.603+09:00Excel2007でリボンに[開発]タブを表示するにはMicrosoft2007でリボンに[開発]タブを表示するには、Excelのオプションを開き、[基本設定]の「[開発]タブをリボンに表示する」のチェックをオンにする。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjklxGyYZouVpHymTq5XDkQXjbZEmhjuMo2QFoLGZ0Wooz_EuD0aKmbxIlt6grsWovJE3JFR-zXZJJ3nPdCOKVpwEO-nXr0RLyOIRwX-3pT1GMD_dWx2ZQFXeN2UqAIDVgXfZVY9mgWTETo/s1600/ExcelDev.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="208" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjklxGyYZouVpHymTq5XDkQXjbZEmhjuMo2QFoLGZ0Wooz_EuD0aKmbxIlt6grsWovJE3JFR-zXZJJ3nPdCOKVpwEO-nXr0RLyOIRwX-3pT1GMD_dWx2ZQFXeN2UqAIDVgXfZVY9mgWTETo/s320/ExcelDev.png" width="320" /></a></div>
<br />Unknownnoreply@blogger.com0