エディタでソースコードを編集している時など同じ操作を繰り返えして実行したい時があります。
そういう場合にはサクラエディタのマクロ機能を利用すると便利です。
「ブログ」カテゴリーアーカイブ
ブログ投稿用のカテゴリ
IE11にのみCSSを適用させる方法
業務でIE8には対応していた画面をIE11にも対応させる必要が出てきたのでIE11にのみスタイルシートを適用させる方法をご紹介します。
IE11にのみCSSを適用させたい場合はCSSハックという手法を用いると便利です。
IE11にのみ適用させるCSSハックの記述方法
1 2 3 4 5 6 |
@media all and (-ms-high-contrast:none){ *::-ms-backdrop, #ie11CssHackSample { color: red; font-size: 36px; } } |
IE10以下に適用させるCSSハックの記述方法
-
IE10以下に適用させたい場合は「*::-ms-backdrop,」の指定を外します。
1 2 3 4 5 6 |
@media all and (-ms-high-contrast:none){ #ie11CssHackSample { color: red; font-size: 36px; } } |
実行サンプル
IEに互換表示をさせない「X-UA-Compatible」の指定方法
Web開発者泣かせでお馴染みのIEにはIEの過去バージョンモードで表示出来る互換表示機能があります。
しかし互換表示することで表示が崩れてしまう場合、デフォルトでは互換表示させたくないケースが多々あります。
そういう場合にはmetaタグで「X-UA-Compatible」を指定する事で互換モードではなく、使用しているIEの各バージョンの標準モードでレンダリングさせる事が可能となります。
使用しているIEの各バージョン毎でレンダリング
-
使用しているIEの各バージョン毎でレンダリングさせたい場合は「X-UA-Compatible」へ「IE=edge」を指定します。
1 |
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
IEのバージョン固定でレンダリング
-
特定のIEのバージョン固定でレンダリングさせたい場合は「X-UA-Compatible」へIE8なら「IE=8」、IE11なら「IE=11」を指定します。
例えば「IE=8」を指定した場合、ブラウザのバージョンはIE11でもIE8の互換モードでレンダリングされます。
1 |
<meta http-equiv="X-UA-Compatible" content="IE=8"> |
1 |
<meta http-equiv="X-UA-Compatible" content="IE=11"> |
Oracle Bronze DBA11g 合格!
本日、「ORACLE MASTER Bronze DBA11g」を受験してきました。
結果は68%でギリギリで合格でした(^^;;
正直、試験終了時には落ちててもおかしくないなあという手応えだったので、運良く拾ったという感じでした。
学習期間
-
学習期間はおよそ3週間程で時間的には30~40時間程。
学習教材
-
使用したテキストはamazonで評価の高い「ORACLE MASTER Bronze[Bronze DBA11g](試験番号:1Z0-018)完全詳解+精選問題集」のみ使用しました。
章末問題を3週、巻末の模擬試験2つを9割以上正解(5週)するまで学習しました。
章末問題と模擬試験を限りなく100%の正答率で且つ内容をきっちり理解しておく必要があります。
正解だけ覚えていると実際の試験で足元救われる可能性も十分あるように思いました。
Oracleの業務経験
-
SQLを少々触った程度の経験しかないのでDBA関連の知識はほぼ初心者レベル。
実際の試験難易度
-
上記テキストの模擬試験よりは難易度は高めです。
テキストと同様の問題は3~4割程度で大半は模擬試験問題の応用編という印象でした。
選択式も2つより3つ選択する問題の方が多かった印象なので、曖昧な理解のままだと危ないです。
Oracleの試験はピアソンVUEですが、以前は試験終了後に即合否がわかりましたが、今は受験後30後位にメールで送られてきてOracleのサイトにアクセスする事で合否が確認出来る形式になっています。そのメールが来るまでの間がなんとも気持ち悪かった・・・。
今回は何とか合格は出来ましたが、理解度はまだまだなので引き続き学習は必要です。
さて次は何受けようかな。
Excel:生年月日から年齢を算出する方法
Excelで生年月日から年齢を算出する方法をご紹介します。
生年月日を表示する為にはDATEDIF関数をすると簡単に年齢を算出出来ます。
動作環境
-
Microsoft Office Professional 2013
年齢を表示する手順
- まず生年月日を入力するセルを設定します。 ※今回の例ではB3セルへ生年月日を表示します。
セルの書式は日付であれば好みで設定してOKです。 - 次に年齢を表示するセルを決めて以下の通り入力します。(今回はC3セルへ年齢を表示します。)
「=DATEDIF(B3,TODAY(),”Y”)」
※DATEDIF関数の書式は以下の通りとなります。
「DATEDIF(開始日,終了日,単位)」
単位 説明 "Y" 期間内の満年数 "M" 期間内の満月数 "D" 期間内の日数 "MD" 開始日から終了日までの日数 "YM" 開始日から終了日までの月数 "YD" 開始日から終了日までの日数 - 基本的には上記手順だけでも年齢は表示出来ますが、より分かりやすくするために年齢が「○○歳」という感じに表示されるように設定します。
単位を表示するためには年齢を表示するセルで右クリック⇒「セルの書式設定」から「ユーザ定義」の種類へ「0″歳”」と入力します。
- これで以下のように生年月日を入力すれば年齢が単位付で表示されます。
Excel:西暦から和暦へ変換する方法
Excel:ドロップダウンリストの設定方法
Excelでドロップダウン(プルダウン)リストを設定する方法をご紹介します。
Excelでは入力規則を使用することで簡単にドロップダウンリストを作成する事が出来ます。
動作環境
-
Microsoft Office Professional 2013
ドロップダウンリストの設定手順
Excel:ピボットテーブルの使い方
Excelでデータが箇条書きで順不同で一覧になっているような場合、通常はソートしてSUM関数やAVARAGE関数で合計や平均を算出したりしますが、ピボットテーブル機能を使用すれば簡単に集計処理やフィルタリングが行えるので使用すると作業が格段に楽になります。
動作環境
-
Microsoft Office Professional 2013
ピボットテーブルの使用方法
jbossとtomcatの違い
Web開発では必ずアプリケーションサーバ(APサーバ)とかWebサーバなどという言葉が出てきます。
ここでは「アプリケーションサーバ」とは何者なのか、またこの「アプリケーションサーバー」として使用されている「JBoss」と「Tomcat」の機能や違いについて整理しておきます。
その前に「アプリケーションサーバ」って何?という方もいると思いますので、簡単にまとめておきます。
アプリケーションサーバとは
- Webシステム開発する上で構成される「プレゼンテーション層」「アプリケーション層」、「データ層」の3階層モデルにおいて、「アプリケーション層」のプログラムを実行するサーバーのこと。
- アプリケーションサーバで提供するのは基本的に以下の3つとなります。
- Javaなどのプログラム実行環境やデータベースへの接続機能の提供。
- 複数の処理(スレッド)を連結するトランザクション管理機能。
- 業務処理の流れを制御するビジネスロジックの実装。
Jbossとは
- EJB(Enterprise JavaBeans)のオープンソース実装であるJavaによるオープンソースソフトウェア開発コミュニティのこと。
- JBossはEJB(J2EE対応アプリケーション)を動作させるためのサーバソフトウェアとして利用されています。本来JSPやサーブレットは動作しませんが、これらを動作させるためにWebコンテナとしてTomcatを採用しています。
- Jbossで提供される機能は「JTAトランザクションマネージャ」、「EJB」、「MDB」、「JPA」、「JMS」、「JCA」、「JAX-WS」、「JMX」、「log4jを用いたログ基盤」、「分散キャッシュなどの各種クラスタリングサービス」などがあります。
Tomcatとは
- Apache Tomcat Project内で開発されているオープンソースのソフトウェア。
- JavaサーブレットやJSPを処理するアプリケーションサーバ(APサーバ)/サーブレットコンテナの一つ。
- 単独でWebサーバとして動作することも可能。
- 実際にはプラグインとしての利用が主流となっています。
- Tomcatで提供される機能は基本的にServlet, JSP, JDBC接続プールのみ。
とつらつら書いてみましたが、要はJbossもTomcatも「JavaをWeb(ブラウザ)上で動かすためのプログラム」という感じで理解しておけば最初の内はいいのかなあと思います。ただTomcatでは使用出来る機能が限られる為、Tomcatの機能も包含しているJBossを使用しているケースが最近は多いようです。
インスタンス変数とローカル変数の違い
Webシステムは基本的に複数人で同時利用されるのが前提のため、マルチスレッドアクセスを考慮した設計・実装を行う必要があります。業務でJavaの各変数とスレッドセーフについて考える機会があったので、「インスタンス変数とローカル変数の違いとスレッドセーフとの関係」について今回は整理してみようと思います。
Javaでの変数毎のメモリ管理イメージ
上記は変数毎のメモリ管理イメージとなります。Javaではクラス変数やインスタンス変数はヒープ領域と呼ばれる共有メモリ領域へ保存されます。複数のスレッドで共有され別のスレッドに書き換えられる可能性があり,スレッドセーフではありません。対してローカル変数はJavaスタックと呼ばれるスレッド固有メモリ領域へ保存されます。スレッド固有領域なので別のスレッドに書き換えられる可能性はないのでスレッドセーフとなります。
インスタンス変数とは
- サンプルコード
1234public class ClassSample{/** インスタンス変数 */private String hoge;} - メソッドの外に記述します。staticは付けません(staticが付くとクラス変数になります)。
- ヒープ領域と呼ばれる共有メモリ領域へ保存される為、宣言しただけではスレッドセーフにはなりません。
- スレッドセーフを保つ為には初期化する必要があります。
- コンスラクタで初期化
- インスタンス宣言時に初期化
- 最初のget時に初期化
- 他のスレッドからの更新を防ぐ為、修飾子はprivateにする必要があります。
- 当該クラス内の任意のメソッドから参照可能となります。
ローカル変数とは
- サンプルコード
123456public class ClassSample{public static void methodSample(){// ローカル変数int num = 1;}} - メソッド内に記述します。
- そのメソッドが実行中の間だけ有効となります。
- Javaスタックと呼ばれるスレッド固有メモリ領域へ保存される為、スレッドセーフとなります。