自称バドミントン評論家の管理人の独断私的ノミネートです
- 1 ユーバー杯優勝
- 2 トーマス杯準優勝
- 3 渡辺/東野 全英混複制覇
- 4 桃田完全復帰 デンマークオープン優勝
- 5 タイツーイン大活躍
- 6 今井監督除名と福島/廣田追いかけ移籍
- 7 タカマツ、フクヒロ世界ランキング1位をキープ
2019年第1週WDランキング - 8 タカマツ WTファイナルズ制覇
- 9 桃田 全日本総合制覇
- 10 JAPAN OPEN 桃田 悲願の初優勝
Semakin di depan
自称バドミントン評論家の管理人の独断私的ノミネートです
[ 基本 ]
URL をセットして get すればよい
final String URL = "http://xxxxx/yyy";
Document jsdocall = Jsoup.connect(URL)
.get();
[ 実践 ]
プロキシ、ユーザーエージェント、ヘッダー、リファラーをセット
private final String USER_AGENT
= "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36";
private final String HEADER_ACCEPT = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
private final String HEADER_ACCEPT_LANG = "ja,en-US;q=0.7,en;q=0.3";
private final String HEADER_ACCEPT_ENCODING = "gzip, deflate, br";
private final String HEADER_REFERER = "https://www.xxxxx/yyyy";
Document jsdoc = Jsoup.connect(this.kwurl)
.proxy(this.proxyHost, this.proxyPort)
.userAgent(USER_AGENT)
.header("Accept", HEADER_ACCEPT)
.header("Accept-Language", HEADER_ACCEPT_LANG)
.header("Accept-Encoding", HEADER_ACCEPT_ENCODING)
.header("Referer", HEADER_REFERER)
.timeout(10 * 1000)
.get();
|
以前運営してた、技術系備忘録などを主にする Catatan hari-harai をサーバーの契約解消時期の手違いで、バックアップなしで消失してしまい、
新たに0から作り直しました。
WordPressが以前のから変わり、まだ使い方がわからない点多く、機能不足感ありますが、少しずつ改良する予定でいます。
掲載トピックにつきましては、以前の技術系備忘録中心から、今まで経験して、広く使ってもらえれば、役に立つツールの紹介、活用シーン、はまりどころ紹介、試用録になる予定です。
技術系だけではつまらないので、バドミントンニュース、軍事研究、コンテナ船も充実させていきたいですので、少しご期待下さい。
2014年より前まで、
WEBページの作成としては、JSP, JavaBean を使って、sessionにデータ保持して同期リクエスト、ページ再読込、全更新という、過去からある伝統的方法でした。
googleマップの出現以来、AJax利用のページ再読込なしのページが普通となりつつある頃において、もう限界を感じ始めてました。
時代の流れにちゃんとついて行く為、jQueryベースのグリッドUIをいくつか試しはじめました。
いくつか試した結果、あくまで主観ですが、
1) ネットでの日本語情報が、比較的多い。StackOverFlowのトピックも多い
2) 追加、編集、削除とかのコーディングがわかりやすく書ける
3) 編集フォームがカスタマイズしやすい
4) jQuery-uiのテーマが全部使え、スタイルシートの記述だけで切替られる
5) カラム定義のバリエーションが豊富で、バリデーションチェックも楽
6) DOMがtableを基本としてるので、ツールバーのカスタマイズなどもわかりやすい
7) 他と比べて、デザインが平凡なので、業務システムにふさわしく、ユーザーサイドで好まれる
8) 他と共通してますが、全ブラウザ対応、スマホ、タブレットでも変更なしで表示できる
9) 積極的にバージョンアップ、バグフィックスがなされてる
10) ライセンスが安い
などです。
業務システムでデータベースは必須と思います。
データベースといえば、SQLが必須と思います。
昔、Java始めた頃は、iBatisもMyBatisもなかったので、Javaに標準についてるjavax.sql使ってJDBC介して操作してましたので、SQLを直接ソースコードにべた書きしたり、プロパティファイルから読んだり、独自テキストファイルに記述されたのを読んだりしていて、
かなり統一性に欠ける、メンテナンス性の悪い、後で苦労することしてました。
iBatis (MyBatisの前身)を知ってから、
コードが大変短くなり、SQLをまとめて分類して置いておけ、やりたい事がJavaコードに制約されず、簡潔に速くできるようになりました。
MyBatisのxml内で、条件分岐、パラメータ以外のメタ文字も指定できるので、プログラム側で行うか、静的に行うかの選択肢が増えて、ケースバイケースな事がしやすくなります。
xml内if利用例
<!-- 商品マスタアップロードエクセル列マッピングリスト -->
<select id="selExcelMapList" parameterType="ParamMstMnt" resultMap="ExcelMapMap">
SELECT
ID, m.IDX_EXCEL,
fc_sel_columntitle('goodslist', m.NM_TBLFLD, #{cdLang}) AS NM_EXCELTXT,
m.NM_TBLFLD, 1 AS FLG_CHECKED,
fc_sel_columnfld('goodslist', m.NM_TBLFLD) AS NM_JAVAFLD,
c.NM_FORMATTER
FROM
m_defupldclms m
INNER JOIN m_jqcolumn c ON (m.NM_TBLFLD = c.NM_TBLFIELD AND c.ID_GRID = 'goodslist')
WHERE
1 = 1
<if test="!isSK">
AND c.IS_EDITABLE_CUST = 1 OR c.NM_TBLFIELD = 'CD_JAN'
</if>
ORDER BY ID
</select>
|
Javascript + AJax でのフロントエンドが主流となってきて、受信データ型式がJSONが普通と思います。
主に、jqGridのデータ取得バックエンドのJavaで使ってます。
PHPとかでは、JSONへのエンコードが、すぱっとワンステートメントで出来るところ、gsonの存在がわからぬ頃、StringBuffer にJavaオブジェクトのデータをgetして追加、文字列にして応答するという、煩雑で間違いやすく、メンテナンス性の悪い方法を使ってました。
gson使ってからは、JSON型式文字列への変換が、単純配列、単純リストはもちろん、JavaBeanのリストなんかもワンメソッドで出来、コード量削減、間違い減少、メンテナンス性大幅向上してます。
リフレクション使えば、デコードも短いコードでさっと出来て、JSON型式でのリクエストパラメータなんかも簡単に扱えます。
Groovyは、Javaではありませんが、非常にJavaに近いスクリプト言語
Wikipedia : https://ja.wikipedia.org/wiki/Groovy
本家 Home : http://groovy-lang.org/index.html
本家 Documentation : http://groovy-lang.org/documentation.html
Wikipedia : https://ja.wikipedia.org/wiki/Groovy
API Document : http://groovy-lang.org/api.html
本家 Home : http://blog.mybatis.org/
Wikipedia : https://ja.wikipedia.org/wiki/MyBatis
使い方メモ : https://qiita.com/opengl-8080/items/a9b5d4038f19d4813ee6
jsoup は Java で HTML の解析・編集を行うためのライブラリ。
本家 Home : https://jsoup.org/
Wikipedia : https://en.wikipedia.org/wiki/Jsoup
Qiita : いちばんわかりたすい入門
コメントを投稿するにはログインしてください。