Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
![Spring 2.5の新機能を使ってアプリケーションを作る(その1)](https://cdn-ak-scissors.b.st-hatena.com/image/square/7d1ee5c207da48b7f4c6a6b805f8693129103f7e/height=288;version=1;width=512/https%3A%2F%2Fcdn.infoq.com%2Fstatics_s2_20240521072754%2Fstyles%2Fstatic%2Fimages%2Flogo%2Flogo-big.jpg)
Twitter4Jとは? Twitter4J は Twitter API の Java ラッパです。 Twitter4J を使うと JSON や HTTP に詳しくなくても容易に Twitter とインタラクトするアプリケーションを書くことが出来ます。Twitter4J は Twitter 非公式のライブラリです。 ✔ 100% Pure Java - works on any Java Platform version 5 or later ✔ Android やGoogle App Engine上でも動作します ✔ 依存なし : 追加の jar ファイルなどは必要ありません ✔ OAuth に対応 ✔ デフォルトで gzip をサポートするため高速 ✔ Twitter API 1.1に完全対応 システム要件 OS: Java をサポートする Windows または Unix 系 OS
メソッドの総称型 メソッドのみに総称型を適用した定義を行うことも出来る。[2007-06-12] 戻り値の型の直前に「<仮型引数, 仮型引数…>」を置くだけ。後はクラスの場合と同様。 public static <T> T notNull(T arg1, T arg2) { T ret; if (arg1 != null) { ret = arg1; } else { ret = arg2; } return ret; } このメソッドを呼び出す側は、クラスの場合とは異なり、明示的に型引数を指定する必要は無い。 指定した引数の値に応じて、自動的に型が判断される。 String s = notNull("abc", "def"); //型引数はString Long l = notNull(new Long(1), new Long(2)); //型引数はLong int i = notNu
筑波大学は3学期制で,12月1日から3学期が始まりました.3学期には私が担当している学類生(普通の大学の学部生)3年生向けの実験があります.約3ヶ月を掛けて,ほどほどの規模のプログラム作成を行います.私が作り,担当しているプログラム実験は「Webサーチエンジン」といいまして,テキストはこちらに公開しています. この実験,結構,自信作なんです.Javaの基本的なプログラミングができることだけを仮定して,漏れのない全文検索を行うWebサーエンジンを作ります.Webデータ収集を自動的に行うクローラー付き.Googleのようなページランキング機能はありませんが,一応,サーチエンジンの基本機能を備えます.自慢は,このテキストが実質A4で印刷して2ページくらいであること.数学の小問を解いていくように,順番に小問を解いていくと,最後にはWebサーチエンジンができます. ミソはサフィックス・アレイ(suf
HelloWorldやっても面白くねーんだよ!! 皆さんこんにちは。 Google App Engine (GAE)でJavaがサポートされ、 PythonはスルーしたけどJavaならやりたい!でもJava未経験! GAE/Jに手を出してみたけど、結局hello, world!のサンプルアプリを公開したまま 放置した状態になっていませんか? 僕はそうです! Java使えたら楽しいだろうなー Java覚えて仕事の案件こなしたいなー Java使えたらオブジェクト指向がもっとわかるだろうなー リア充へのあこがれ と、常々思っていつつも、Javaの最初の面倒臭さの前にいつもやる気喪失するんですよね。 HelloWorldひとつやるのにpublic static void main()書くなんて面倒臭すぎです コンパイルなんて面倒でやってられません eclipseの使い方憶えるのが面倒だし ecli
株式会社鳥人間 郷田まり子 2009/10/22 ついにプレビュー公開が始まった、リアルタイム&(ポーリングによる)擬似プッシュ型のコミュニケーションとコラボレーションのプラットフォーム「Google Wave」の特集です。その概要と「Gadget」「Embed」「Robot」という3つの拡張APIを使ったWaveの作り方を徹底解説します Google WaveのRobotをGoogle App Engineに作る 前編の「プレビュー公開が始まったGoogle Wave「超」入門」では、Google Waveの概要や、クライアントサイドのGadgetとEmbedについて解説しました。後編の今回は、クラウドサイドのRobotについて解説します。 前編でも説明しましたが、Robotは一般参加者と同列の参加者として、Wave上で発言をしたり、画像を張ったりと、自動でコミュニケーションするソフトウ
最近FizzBuzzをblogで書くといいよみたいな流れになっている(曲解)ので FizzBuzz - 文殊堂 と id:monjudoh が言ったからというわけではないのだけど、FizzBuzzとアルゴリズムの書き換えの話をしよう。 やや昔のエントリになるけどもJavaでFizzBuzzを再帰で作ったというエントリをみつけた。 public class FizzBazzSaiki{ public static void main(String[] args){ System.out.println(func(args.length>0?Integer.parseInt(args[0]):30)); } public static String func(int i){ if(i == 1) return "1"; System.out.println(func(i-1)); return
Apache WicketはオープンソースのJava Webアプリケーションフレームワークのひとつである。Java用のWebアプリケーションフレームワークは多数存在するが、Wicketが特徴的なのは、XMLなどによる設定ファイルを排除し、ほぼHTMLとJavaのコードだけでWebアプリケーションが作成できるようになっている点だ。それも画面デザインとロジックを明確に分離し、デザインのためのマークアップとJavaのコードを混ぜて記述する必要がないように作られている。 Wicketを使えば、モデル定義も画面遷移もすべてJavaのコードで書くことができる。複雑なXMLに気を煩わせる必要はない。その上、Wicketで利用するオブジェクトはコンテナで制御されるのではないため、プログラマが自由に扱うことができる。ページデザインのためのHTMLにしても、JSPのような特別なコードをいっさい必要としない。そ
グーグルが新プログラミング言語「Noop」を公開しました。Noopは新旧のプログラミング言語からいいとこ取りをした、JavaVMで動作するプログラミング言語と説明されています。 Noopは、サン・マイクロシステムズで開催中の「JVM Language Summit」で、グーグルの2人のエンジニア、Alex Eagle氏とJérémie Lenfant-Engelmann氏によって発表されました。 すでにJVM Language Summitでの発表資料がPDFとして公開されており、その資料には、Noopのミッションが次のように説明されています。 Noop's mission Help teams develop software that is easier to understand and maintain. Noopのミッション 分かりやすくメンテナンスしやすいソフトウェアのチーム開
今回は、ArrayListやHashMapの実際のソースコードを通じて、実際にどのようにGenericの機能を使いながらAPIが作成されているかをかいつまんで説明する。 java.util.ArrayList ArrayListのクラス定義部分がリスト1.1である。AbstractList<E>を継承し、List<E>・RandomAccess・Cloneable・Serializableを実装していることがわかる。 リスト1 java.util.ArrayList - クラスでGenericを使っている public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable { ArrayListで使われているテンプレートは<E
”ジェネリックなクラス”という意味です。”ジェネリックなクラス”は例えば、 ↓のようなクラスです。 public class GenericClass <T> { void disp(T msg) { System.out.println(msg); } } この<T>は、コンパイル時に指定された型になります。 どういうことかというと、 GenericClass<String> msg = new GenericClass<String>(); のように<T>の部分を<String>に置き換えて宣言すると、 void disp(T msg) { は void disp(String msg) { として解釈され↓のように記述できます。 msg.disp("hhh"); また、 GenericClass<Integer> msg2 = new GenericClass<Integer>();
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
_ 5年後に後悔しないJavaプログラムの書き方 ここ数日、死ぬほど後悔しまくっているので、あらためて(というのは、数年前にも一度後悔しまくって、そのときの知見はあらかた処方箋とかコーディングの掟に書いているからだが)後悔しないための書き方をいくつか紹介する。 とにかく、ファクトリメソッドパターンを使うこと。 これは本当に重要。しかも簡単でありながら効果は絶大。 だめな例。 public class FooBar { private Connection conn; ... protected void setup() { ... conn = DriverManager.getConnection(url); ... } urlを指定することや、DriverManagerの実装を交換すれば良いだろうと想定していても(というか、Connectionならそういう方法もあり得るが、そうはいかな
App EngineをjQueryでAjax化しBigtableをCRUD操作:Google App Engineで手軽に試すJavaクラウド(3)(1/4 ページ) BigtableはCRUD処理ができるんです! 連載第1回の「EclipseでJava版App Engineを始めるための基礎知識」では環境設定が中心でしたが、連載第3回となる今回は、「Google App Engine for Java(以下、GAEj)」上で動作するJSPのユーザーインターフェイス(以下、UI)をAjax/JavaScriptでリッチにし、「Bigtable」でCRUD(登録・参照・更新・削除)処理を行ってみます。 今回の解説では、Ajax/JavaScriptライブラリのjQueryのバージョン1.3.2を使用したCRUD処理画面の操作内容と、そのJavaScriptでのプログラム処理を最初に見ていき、
[追記 2012/09/29] 最近でもこの記事を参照してくださる方がいるので追記します。下記エントリを書いた時点では非常に局所的なケースで重い現象に悩まされていたことを前提に調査しており、その延長線上で「一律InnoDBというのは言い過ぎな印象を受けるパフォーマンス差に感じる」ということを書いてしまっていますが、その後色々と勉強した結果、特定箇所のニッチなベンチマークではなく一般的な運用上の負荷を焦点にした場合はInnoDBは適切に設定しておれば十分にパフォーマンスがある(もしくはInnoDBの方が有利)というのが現在の意見です。 「MyISAM InnoDB」で検索するとあちらこちらであるように、今時は理由がなければInnoDB、ということでMyISAMのテーブルをいくつかInnoDBに変更したところ、かなりパフォーマンスが落ちるケースがあった。 InnoDBにしたら軒並み遅くなったと
本連載を初めて読む人へ:先行き不透明な時代をITエンジニアとして生き抜くためには、何が必要なのでしょうか。それを学ぶ1つの手段として、わたしたちはIT業界で活躍してきた人々の偉業を知ることが有効だと考えます。本連載では、IT業界を切り開いた117人の先駆者たちの姿を紹介します。普段は触れる機会の少ないIT業界の歴史を知り、より誇りを持って仕事に取り組む一助としていただければ幸いです。(編集部) 本連載は、2002年 ソフトバンク パブリッシング(現ソフトバンク クリエイティブ)刊行の書籍『IT業界の冒険者たち』を、著者である脇英世氏の許可を得て転載しており、内容は当時のものです。 ジェームズ・ゴスリング(James Gosling)―― Javaを作った伝説的プログラマ ジェームズ・ゴスリングについては、インターネットを調べるといくらでもデータがある。そして本人自身のホームページもある。写
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く