<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>駆け出しエンジニアの「シンタロウ」が、スーパーエンジニアを目指す</title>
<link>https://ameblo.jp/news-thinking/</link>
<atom:link href="https://rssblog.ameba.jp/news-thinking/rss20.xml" rel="self" type="application/rss+xml" />
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
<description>普段は金融系システムを扱う23歳のSE。新卒で入社した企業の研修でアプリケーション開発にはまる。スキル、知識ともに皆無な駆け出しエンジニアが、スーパーエンジニアを目指して日々悪戦苦闘しながら成長していく様子を発信する。</description>
<language>ja</language>
<item>
<title>画面の作成</title>
<description>
<![CDATA[ <p>札幌に旅行に行っていたため、久しぶりの更新になりました。</p><p>&nbsp;</p><p>今日はJSPを使って画面のコーディングを行いました。</p><p>完成品はこちら！</p><p><a href="https://stat.ameba.jp/user_images/20190811/17/news-thinking/65/90/p/o0986043014530965804.png"><img alt="" height="183" src="https://stat.ameba.jp/user_images/20190811/17/news-thinking/65/90/p/o0986043014530965804.png" width="420"></a></p><p>&nbsp;</p><p><a href="https://stat.ameba.jp/user_images/20190811/17/news-thinking/7b/90/p/o0989041214530966842.png"><img alt="" height="175" src="https://stat.ameba.jp/user_images/20190811/17/news-thinking/7b/90/p/o0989041214530966842.png" width="420"></a></p><p><span style="font-weight:bold;">工夫点</span>は</p><p>①ボタンの大きさ、配置をブラウザごとに変化</p><p>②マウスをボタンに合わせた時、クリック時にボタンの状態を変化</p><p>&nbsp;</p><p>実装において<span style="font-weight:bold;">手こずった</span>のは</p><p>①ボタンの中央寄せ</p><p>②tableにおいて、特定の列の枠を消す</p><p>③フォルダの構成を変更したところ、<code>HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINFというエラーが急に起こる</code></p><p>&nbsp;</p><p><code>上記の２つの観点について今回は書きたいと思います。</code></p><p>&nbsp;</p><p>まず工夫点から！！</p><p>&nbsp;</p><p>①ボタンの大きさ、配置をブラウザごとに変化</p><p>ボタンの大きさは、<span style="color:#ff0000;"><span style="font-weight:bold;">どのブラウザでどのwindowサイズで見ても適切な大きさになるように[vh][vw]という単位で指定</span></span>してあります。</p><p><span style="color:#ff0000;"><span style="font-weight:bold;">1vhとはビューポートの高さの100分の１のサイズ、1vwとはビューポートの幅の100分の１</span></span>のサイズのことです。</p><p>各種ボタンの位置もvwとvhで指定してあるため、windowサイズが変わっても相対的な位置関係が崩れないようになっています。</p><p>&nbsp;</p><p>それなら％で指定しても同じではないかと思ったので調べてみたところ</p><p>％は親要素の割合に対して適応されるそうです。</p><p>&nbsp;</p><p>どういうことかといえば、</p><p>例えばdivの中の要素に対して％を適応するとそのdivの大きさに対する割合になってしまうそうなんです。</p><p>&nbsp;</p><p>②マウスをボタンに合わせた時、クリック時にボタンの状態を変化</p><p>変化の様子は下記の通りです。</p><p>&nbsp;</p><p>まずマウスをボタンに合わせた時</p><p>&nbsp;</p><p><a href="https://stat.ameba.jp/user_images/20190811/17/news-thinking/5b/92/p/o0421039414530966495.png"><img alt="" height="393" src="https://stat.ameba.jp/user_images/20190811/17/news-thinking/5b/92/p/o0421039414530966495.png" width="420"></a></p><p>&nbsp;</p><p>次にクリック時の変化はこちら</p><p><a href="https://stat.ameba.jp/user_images/20190811/17/news-thinking/64/d7/p/o0426039814530965992.png"><img alt="" height="392" src="https://stat.ameba.jp/user_images/20190811/17/news-thinking/64/d7/p/o0426039814530965992.png" width="420"></a></p><p>&nbsp;</p><p>具体的にはボタンの色と影を変更しています。</p><p>実装方法は非常に簡単でボタンタグに対してhovorを指定するとボタンにマウスを合わせた時、</p><p>activeを指定するとボタンクリック時のスタイルを指定できます。</p><p>&nbsp;</p><p>言葉だと分かりにくいのでソースコードを貼っておきます。</p><p>&nbsp;</p><p><a href="https://stat.ameba.jp/user_images/20190811/18/news-thinking/3b/e3/p/o0244011214531010235.png"><img alt="" height="112" src="https://stat.ameba.jp/user_images/20190811/18/news-thinking/3b/e3/p/o0244011214531010235.png" width="244"></a></p><p>&nbsp;</p><p>次に手こずった点について！！</p><p>&nbsp;</p><p>&nbsp;</p><p>①ボタンの中央寄せ</p><p>どうやらボタンタグに対して直接text-aligin:centerやmargin:autoに指定しても効かないそうなんです。</p><p>&nbsp;</p><p>対策としては<span style="color:#ff0000;"><span style="font-weight:bold;">divでボタンをくくってそのdivのクラスに対してtext-aligin:centerやmargin:autoを指定する</span></span>とできます。</p><p>&nbsp;</p><p>②tableにおいて、特定の列の枠を消す</p><p>borderをnoneに指定すれば簡単に消えると思っていたのですがtableの外枠だけしぶとく残っていまい手こずりました。</p><p>&nbsp;</p><p>対策としては疑似クラスを使用しました。</p><p>疑似クラスとは簡単に言うと要素（buttonタグなど）の特定の状態や特定の位置を指定する方法のこと。</p><p>&nbsp;</p><p>先ほど書いたhovorやactiveなんかも疑似クラスの１つです。</p><p>&nbsp;</p><p>今回はtableの一番端の列の枠を消したかったので、最終要素を表すlast-childを使用しました。</p><p><a href="https://stat.ameba.jp/user_images/20190811/18/news-thinking/83/df/p/o0989041214531020152.png"><img alt="" height="175" src="https://stat.ameba.jp/user_images/20190811/18/news-thinking/83/df/p/o0989041214531020152.png" width="420"></a></p><p>&nbsp;</p><p>矢印で示した場所を消したかったので、last-childで指定した列のtopとbuttomのborderをnoneに適応しました。</p><p>これも分かりにくいのでコードを示しておきますね。</p><p>&nbsp;</p><p><a href="https://stat.ameba.jp/user_images/20190811/18/news-thinking/f6/b2/p/o0289008214531023359.png"><img alt="" height="82" src="https://stat.ameba.jp/user_images/20190811/18/news-thinking/f6/b2/p/o0289008214531023359.png" width="289"></a></p><p>&nbsp;</p><p>③フォルダの構成を変更したところ、<code>HTTP Status 500 - java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINFというエラーが急に起こる</code></p><p>&nbsp;</p><p>まったく原因が分からないエラーだったのですがmavenの更新を行った後に起こってしまったため、</p><p>何かlogに意図しないものが書き込まれているのではと疑いました。</p><p>&nbsp;</p><p>そこでプロジェクトを右クリックしてリフレッシュを行ったところ、解決できました。</p><p>ご参考まで！</p><p>&nbsp;</p><p>&nbsp;</p><p>次回はcontrollerやservice、mapperを作成して簡単な画面遷移ができるようにする予定です。</p><p>&nbsp;</p><p>それでは！</p><p>&nbsp;</p>
]]>
</description>
<link>https://ameblo.jp/news-thinking/entry-12504708063.html</link>
<pubDate>Sun, 11 Aug 2019 18:50:58 +0900</pubDate>
</item>
<item>
<title>アプリケーション開発の準備</title>
<description>
<![CDATA[ <p>今JavaのSpringフレームワークを使って、その日にやることを入力すると自動的にタイムスケジュールを組んでくれるWEBアプリケーションを開発しようと思っています。</p><p>&nbsp;</p><p>画面仕様書の一部は添付した画像の感じ。。</p><p>&nbsp;</p><p>そこで今日はWEBアプリケーション開発のための環境を構築しました。ｌ</p><p>&nbsp;</p><p>今日やったことをざっとまとめると・・・</p><p>&nbsp;</p><p>・MYSQLのサーバー構築</p><p>・データベースの作成</p><p>・eclipse内へのDB Viewerのプラグイン</p><p>・画面仕様書の作成</p><p>&nbsp;</p><p>すでにSpringはeclipseのマーケットプレースからインストールしてあったので、これでWEBアプリケーションを開発する環境が整ったはず、、、</p><p>&nbsp;</p><p>MySQLのサーバーも依然に構築してあったんですけど・・・</p><p>パスワードを忘れてしまって開けなくなってしまった（涙）</p><p>&nbsp;</p><p>本来は下記の感じでパスワードを回避して、再設定するっていう技が使えるらしいんですけど</p><p><a href="https://liginc.co.jp/web/programming/mysql/87393">https://liginc.co.jp/web/programming/mysql/87393</a></p><p>&nbsp;</p><p>どうしてもセーフモードで接続できなかったので泣く泣く再インストールすることに。。</p><p>&nbsp;</p><p>するとMySQLのConnecter NETが何度アンインストールしてもロールバックするという事態に</p><p>&nbsp;</p><p>1時間ぐらい格闘した結果した下のサイトからトラブルシューティングツールをインストールし、トラブルを解決できました</p><p><a href="https://support.microsoft.com/ja-jp/help/17588/windows-fix-problems-that-block-programs-being-installed-or-removed">https://support.microsoft.com/ja-jp/help/17588/windows-fix-problems-that-block-programs-being-installed-or-removed</a></p><p>&nbsp;</p><p>次回は画面をJSPで作成する予定</p><p>&nbsp;</p><p>それでは！！</p>
]]>
</description>
<link>https://ameblo.jp/news-thinking/entry-12501559746.html</link>
<pubDate>Sun, 04 Aug 2019 22:12:04 +0900</pubDate>
</item>
</channel>
</rss>
