[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

javaに関するJxckのブックマーク (31)

  • 我々はいかにして技術選択を間違えたのか? 2016 - Cybozu Inside Out | サイボウズエンジニアのブログ

    どうも!アプリケーション基盤チームの横田(@yokotaso)です! kintoneなどで利用していたJavaフレームワークのSeasarのEOLに伴い、S2Daoからの脱却を試みたのですが、パフォーマンス問題や障害を発生させてしまうなど問題を多々発生させてしまいました。 同じ過ちを繰り返さないという強い決意のもと、今回の失敗をブログで公開いたします。 失敗をあえて公開する点で斬新かつ濃いブログ記事となっております! 失敗体験の公開は恥だが役に立つ! 移行先の選定の失敗 移行先として選定したプロダクトは Hibernate*1です。 Hibernateを選んだ理由としては Spring Framework を選定した Spring Frameworkで Interface + アノテーションでプログラミングするならSpring Data JPA が有力 JPAに準拠したのORMの中でも、H

    我々はいかにして技術選択を間違えたのか? 2016 - Cybozu Inside Out | サイボウズエンジニアのブログ
    Jxck
    Jxck 2016/12/28
    そのあと結局どうしたんだろ、 JPA 諦めたのかな?
  • JavaPoly.js — Java(script) in the Browser

    Introduction JavaPoly.js is a library that polyfills native JVM support in the browser. It allows you to import your existing Java code, and invoke the code directly from Javascript. JavaPoly works even if the user does not have Java installed on their computer. It finally allows Java to become a first class citizen by running directly in the browser's script tags (and interacting directly with th

    Jxck
    Jxck 2016/05/09
    トランスパイルかと思ったら、 Java class ファイル読める JVM の JS 実装なのか。 Applet と心中したプロジェクトに光がww
  • Javaの謎のパフォーマンス劣化現象との戦い - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。アプリケーション基盤チームの横田です。 Javaの謎のパフォーマンス劣化にまつわる調査をしていたのですが、1ヶ月の苦労の末に原因がわかりましたので、報告させていただきます! 公開後に頂いたはてなブックマークでのご指摘・社内でのタイポ・読みにくいなどの指摘を受けてたので、謹んで修正させいただきます。 修正した内容につきましては、記事の最後を参照してください。 忙しい人のためのまとめ jdk-7u4以降のjdk-7 *1 でJavaのパフォーマンスが劣化する謎の現象 CodeCacheの容量限界に近づくとJITコンパイラを停止してコンパイルしたコードを捨てる機能が原因だった 起動オプションで回避できるので、長期運用するときは -XX:-UseCodeCacheFlushing, -XX:ReservedCodeCacheSize=128m をつける 上のオプションを設定した時に、C

    Javaの謎のパフォーマンス劣化現象との戦い - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 作って理解するDIコンテナ - きしだのHatena

    DIコンテナ使ってるけど、アノテーションってなんなの!って聞かれて、作ってみたらわかるよと答えてみたので、自分でも作ってみました。 よくわかった。 「DIコンテナ使うと何がいいの?」ということも、作ってみるとわかります。あと「DIって何がいいの?」に関しては、「DIはちょっとコードを書くのが楽になるだけで、それだけあっても仕方ない、大事なのはコンテナ」と答えるようにしてますが、コード比率からもそれがよくわかります。 続編としてWebフレームワークも作っているので参考まで。 作って理解するWebフレームワーク - きしだのHatena まずはコンテナを作る とりあえず1ソースの状態で。 こんな感じで、管理する型を登録できるようにします。 static Map<String, Class> types = new HashMap<>(); static void register(String

    作って理解するDIコンテナ - きしだのHatena
    Jxck
    Jxck 2016/04/07
  • OutOfMemoryError の調べ方 - Qiita

    Java 8 で、 Oracle の JVM を前提とした話です。 Java のメモリ管理 これを知っておかないと、 OOME が起こっても、メモリ内で何が起こっていて、どこを調査すべきで、どのように対処したらいいのかが判断できない。 なので、まずは、そもそも Java がどうやってメモリを管理しているのかを知る。 しかし、実際調べてみたら予想通りというかなんというか、量が多くなってしまった。 なので、個々の用語の説明は末尾の 用語集 に押し込めたので、ここではざっくりとした概要だけ記載する。 メモリの構造 超ざっくりとした、メモリ構造を表した図。 おおきく、ヒープ(Heap)領域とネイティブ(Native)領域の2つの領域がある。 ヒープは Java プログラムが使う領域で、プログラム上で生成したオブジェクトは、このヒープ領域に配置される。 一方、ネイティブ領域は JVM が動くのに必要

    OutOfMemoryError の調べ方 - Qiita
  • ちょっといいJavaコードを書こう - Qiita

    一人でプログラムを書いてたりすると、環境によってはあまりコードの書き方には指摘を受けなくて困りますよね。プロになっても、曲がりなりにもちゃんと動くコードを書けてしまうとあまりに当たり前のことなんかは指摘されることも稀で、そのままある程度偉くなっちゃった日には、もはや自分で気付くしかなくなってしまいます。 FindBugsとか、Effective Javaなら使ったり読んでみたり読ませたりすることはできますが、それ以前のところって難しいんですよね。よいコードと言うよりそれが当たり前だと思われているので、指摘するにしても「こうすればいいよ」(アドバイス)じゃなくて「なんでこうしてないの?」(詰問)になってしまいがちです。 そこで、最近そういうJavaニュービーに指摘している(したい)ことの多い、Javaの基礎的な事柄をまとめてみました。ワタシJavaチョットデキルって人は、これ以外にもやりがち

    ちょっといいJavaコードを書こう - Qiita
    Jxck
    Jxck 2015/11/27
  • 主要Javaアプリケーションサーバに影響するJavaライブラリの脆弱性を正しく理解する |

    広く Javaアプリケーションサーバに影響する Javaライブラリの脆弱性の存在が報道、公表されています。件は多くの問題を内包し、複雑です。記事では、その影響範囲と問題点を正しく理解するために、情報の整理を行いたいと思います。 ■この脆弱性の概要 この脆弱性は、Java のデシリアル化処理を利用して任意のコードを実行可能、というものです。すでに 2015年1月に行われた AppSecCali 2015の「Marshalling Pickles」と題する発表の中で、セキュリティ研究者の Gabriel Lawrence氏と Christopher Frohoff氏により、PoC(概念実証コード、攻撃コード)が公開されています。この PoC の対象のクラスは「Apache Commons Collections」「Spring」「Groovy」です。 ■この脆弱性の影響範囲と深刻度 そして

  • Oracle Blogs

    Oracle Blogs

  • 2015年のJavaによるWeb開発 - Qiita

    最近Javaしてますか? 昔はServletとJSPでやったな・・・Seasar2には感動したっけ、そんな思い出が浮かんだとしたらあなたのJavaはJ2EE、JavaEE的には5.0ぐらいで止まっているといわなければなりません。 ※Seasar2は2016/9/26にサポートが停止になります。OSSであるためforkされメンテナンスが続く可能性はありますが、一つの時代の区切りになると思います。 あれからJavaも進化を重ね、最新版のJavaEE7.0では他言語のフレームワークの生産性にも引けを取りません。 まだJavaやってるの(苦笑)の時代が長すぎたのか、2013年のリリースにもかかわらずJavaEE7.0についての記事は充実しているとは言えない状況です。ただ、その仕組みは素晴らしいものがあるのでこれを機に久々にJavaでもやってみるかなと思ってもらえれば幸いです。 ※2017/9/21

    2015年のJavaによるWeb開発 - Qiita
    Jxck
    Jxck 2015/02/22
  • Spring Bootで高速アプリ開発 | DevelopersIO

    Spring Bootとは いまから10年以上前、Spring frameworkは巨大化したJ2EEへのアンチテーゼとして登場し、 DIやAOPといった、当時の最新技術をもってWebアプリ開発に必要な機能を提供してくれました。 ※Spring frameworkについてはこのへん参照 Webアプリ開発において革新をもたらしたSpringでしたが、時間が経つにつれSpring frameworkまわりの さまざまなプロダクトが登場し、J2EE以上に肥大化していきました。 そこで最近登場したのが、今回紹介するSpring Bootです。 Spring Bootは「コードを全く生成することなく、XML構成ファイルなしで番環境で利用できる Springベースのアプリを作成し、すぐに実行できるようにすること」とのことです。 開発者がSpring Bootを使用することで、「Springプラットフ

    Spring Bootで高速アプリ開発 | DevelopersIO
  • SpringのCache Abstractionについて

    SpringのCache Abstractionについて
    Jxck
    Jxck 2015/02/19
    JSR371 が名前なの?
  • Javaトラブルに備えよう #jjug_ccc #ccc_h2

    1. 【JJUG CCC 2014 Spring H-­‐2】 Javaトラブルに備えよう 日Javaユーザグループ 上 宜人 (あげつま のりと) はてなブログ : n-agetsuma.hatenablog.com 2. 自己紹介 上 宜人 (あげつま のりと) n  電話の裏側を作っている会社で働いています n  Java/APサーバの社内技術サポート、トラブル解析 n  Blog 『見習いプログラミング日記』 【JJUG CCC 2014 Spring H-­‐2】

    Javaトラブルに備えよう #jjug_ccc #ccc_h2
    Jxck
    Jxck 2014/05/19
  • Java EE 7 HoL on JJUG CCC

    Java EE 7 HoL on JJUG CCC 2013年10月23日 at 3:53 午後 1件のコメント 2013 年 11 月 9 日に JJUG CCC 2013 Fall がベルサール西新宿で開催されますが、13:15 – 15:05 まで「R5-1 Java EEハンズオン」を実施します。今日はそのハンズオンで実施する内容についてご紹介します。 2013年11月 11日追記:JJUG CCC で実施したハンズオンの資料を下記に公開しました。また、プロジェクトの全ソースコードは下記より参照できます。 https://github.com/yoshioterada/JavaEE7-HoL/ HoL の資料は Step by Step で記載したためページ数が多いですが、実装コード量はとても少ないです。 HoL では Java EE 7 に含まれる技術だけを使ってリアルタイ

    Java EE 7 HoL on JJUG CCC
  • ジェネリクスの基礎と�クラス設計への応用

    1. ジェネリクスの基礎と クラス設計への応用 2013 年版 Twetter : @nagise はてな : Nagise 所属  java-ja  北陸エンジニアグループ 2. 導入 Java 1.4 までのコード ArrayList list = new ArrayList(); list.add("hoge"); String s = (String) list.get(0);

    ジェネリクスの基礎と�クラス設計への応用
  • Javaアプリケーションサーバ 構築・運用の勘所

    Javaアプリケーションサーバの歴史はそれなりに長いですが、残念ながら運用時のトラブルは後を絶ちません。 トラブルを起こしにくい・起きても解決しやすくするにはどうすべきか、これだけは押さえておきたい構築・運用時のポイントを紹介します。Read less

    Javaアプリケーションサーバ 構築・運用の勘所
    Jxck
    Jxck 2013/11/11
  • じっくり学ぶ Java講座 [初心者向け・入門] | みるくあいらんどっ!

    「じっくり学ぶ Java講座」は、初心者向けの Java入門講座サイトです。多くのサンプルコードを目にすることでじっくり着実に Javaプログラミングの基を勉強します。 更新履歴 第01章: はじめに はじめに ウェブサイトの目標とターゲット 学習の心構え おすすめ書籍 おおまかな構成 第02章: Java概論と開発環境の構築 Javaとは 開発環境の構築 開発環境メモ 第03章: はじめての Javaプログラム ハローワールド 読みやすいソースコードを書こう 第04章: 基型と基型変数、演算子とキャスト、Math.randomメソッドと自作ライブラリ 基型と基型変数 演算子と基型のキャスト Math.randomメソッドと自作ライブラリ 第05章: 条件分岐 if文 switch文 第06章: 繰り返し for文 while文 do while文 gotoは使えない 第07

    じっくり学ぶ Java講座 [初心者向け・入門] | みるくあいらんどっ!
    Jxck
    Jxck 2013/11/11
  • 今どきのJava Webフレームワークってどうなってるの? - きしだのHatena

    昨日のSeasar2のエントリについたコメントなどで、「とはいえ代わりに何つかうの?」みたいな話が出てたので、とりあえずJava EEのWebフレームワークについて簡単にまとめてみます。 Java SE 8+Java EE 7+lombokで書いていますが、基的なところはJava SE 7+Java EE 6でも大丈夫です。 なので、今どきとは書いてますが、基的には2009年12月のJava EE 6ということで、実はすでに4年近くたってます。 何も考えてない なんも難しいこと考えないなら、やっぱJSPが楽ですよね。 なんでも書けちゃう。 <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content=

    今どきのJava Webフレームワークってどうなってるの? - きしだのHatena
    Jxck
    Jxck 2013/11/08
    なんかかつて習ったのと違う言語だ。。でもいまだに JSP なんだなぁ。
  • 最近の Java Web 開発 : http://qiita.com/monzou/items/9174d0baf08af295e703

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    最近の Java Web 開発 : http://qiita.com/monzou/items/9174d0baf08af295e703
    Jxck
    Jxck 2013/10/26
    色々変わってるんだなぁ。
  • マルチコア時代のプログラマは関数脳になろう〜Java8のススメ〜 - Tech-Sketch

    CPUのクロックアップに限界が訪れ、マルチコア化することで処理性能向上を目指す時代になりました。これからのプログラマには、マルチコアで処理性能が向上するプログラム=マルチスレッドで並列処理が可能なプログラムを書く能力が必要になります。今回は「関数型」でプログラムを書くことによって、いとも簡単に並列化ができることを実例を元に解説します。 関数型プログラミングと並列処理 「関数型でプログラムを書くことで簡単に並列化できる」と書きましたが、そもそもここで言う「関数」とは何なのでしょうか? 関数型プログラミングの特徴 関数型プログラミングの「関数」を理解するためには、数学における「関数」を想像するとわかりやすいでしょう。 例えば三角関数を用いた y=cos(x) という式を考えてみます。この式に入力値 x=0 を与えた場合、いつでも必ず結果は y=1 になります。x= π/3 の場合は y =

  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

    Jxck
    Jxck 2013/07/19