以下に、Java EE 7の様々な技術を組み合わせて作成した、ユーザーの登録を行うWeb入力画面のサンプルを示す。Java EEには、サーブレットにJSP、またJSFとFaceletsといった、Web UIを作ることが可能ないくつかの技術が存在する。以下はJSFとFaceletsを用いた例である。コード上では明示されていないが、入力コンポーネントでは入力値の検証にBean Validationを使用している。<html xmlns="http://www.w3.org/1999/xhtml"      xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:f="http://xmlns.jcp.org/jsf/core">        <f:metadata>        <f:viewParam name="user_id" value="#{userEdit.user}" converter="#{userConvertor}" />    </f:metadata>        <h:body>            <h:messages />                <h:form>            <h:panelGrid columns="2">                <h:outputLabel for="firstName" value="First name" />                <h:inputText id="firstName" value="#{userEdit.user.firstName}" label="First name" />                                <h:outputLabel for="lastName" value="Last name" />                <h:inputText id="lastName" value="#{userEdit.user.lastName}" label="Last name" />                                <h:commandButton action="#{userEdit.saveUser}" value="Save" />            </h:panelGrid>        </h:form>        </h:body></html>
Resourceパッケージでは、Java EE Connector Architecture (JCA) APIが定義されている。JCAはEnterprise application integration (EAI) の一部であるアプリケーションサーバーや企業情報システム (EIS) の相互接続を実現するための技術である。このAPIはベンダーのための低レベルAPIであり、通常のアプリケーション開発者をターゲットとしてはいない。
BatchのAPIパッケージでは、Java EEのバッチ処理のためのAPIが定義されている。バッチ処理APIは、大容量のデータを扱う長時間に亘るバックグラウンドタスクや、定期的に実行されるタスクのための手法を提供する。
Messageパッケージでは、Java Authentication SPI (JASPIC) のインタフェースやクラスを含むAPIが定義されている。JASPICはセキュアなJava EEアプリケーションを構築するための仕様である。
Transactionパッケージでは、Java EEのトランザクション処理を担うJava Transaction API (JTA) のインタフェースとアノテーションを含むAPIが定義されている。これらのAPIは低レベルAPIが抽象化されたものであり、通常のアプリケーション開発者がJava EEを用いて開発する場合は、EJBのより高レベルのトランザクション管理を用いたり、このAPIのアノテーションとCDIの管理Beanとを組み合わせて使用することが想定されている。
Validationパッケージでは、Bean Validation APIのためのアノテーションとインタフェースが定義されている。Bean Validationはbean（例えばJPAのモデルクラス）に対する統一されたバリデーション（値の検証）手法を提供する。Java EEの各要素では、JPAが永続化層におけるバリデーションに、JSFがビュー層におけるバリデーションにまた関与する。
Enterprise JavaBeans (EJB) パッケージでは、EJBコンテナがサポートするトランザクション処理 (JTA)、RPC（RMIまたはRMI-IIOP）、並行性制御、依存性の注入 (DI)、ビジネスオブジェクトのためのアクセス制御といった軽量APIが定義されている。またこのパッケージは、エンタープライズBeanとそのクライアント間、エンタープライズBeanとEJBコンテナ間の取り決めを定義したクラスとインタフェースも含む。
Injectパッケージでは、Contexts and Dependency Injection (CDI) APIのためのインジェクションアノテーションが定義されている。CDIは依存性の注入 (DI) に関する仕様である。
ELパッケージでは、Java EEのEL式に関するクラスとインターフェースが定義されている。EL式はJSPやJSFを作成するWebアプリケーション開発者のためにデザインされた簡単な構文である。主にJSFにおいてコンポーネントに管理beanを結びつけるために用いられるが、仕様自体は独立しており、それ以外の部分でも使用可能である。
1999年に初版である1.2が発表された。主に小規模〜大規模サーバーシステムの標準仕様として、動的HTTPサーバー機能、自動トランザクション管理機能、データベース接続機能、メッセージング機能、各種通信プロトコル機能がAPIとして定められている。大規模システムにおける多層システムの構築も想定されており、XAプロトコルを用いた分散トランザクションにも対応している。過去のリリースに伴い名称が変化しており、2017年現在のバージョンはJava Platform, Enterprise Edition 8 (Java EE 8) と命名されているが、Java EE 5より過去のバージョンはJava 2 Platform, Enterprise Edition (J2EE) と命名されていた。Java EE自体は仕様であるため、各社・各組織がライセンスを受け実装している。オープンソースのものからプロプライエタリなもの、無償のものや有償のものなど選択肢が多い。Java EEの権利はサン・マイクロシステムズを買収したオラクルが保有してきたが、同社は2017年にJava EEをEclipse Foundationに寄贈してオープンソース化をすることを発表。Java EEの商標については引き続きオラクルが保有するため、Java EE 9以後はJakarta EEの名で開発が進められる事が発表された。
また、漫画原作者の関川夏央や狩撫麻礼とも、1970年代から1980年代にかけて交流があり、関川は「セキカワ教授」「山道山」など多数のキャラで、狩撫は坂口安吾の作品のキャラクターを元ネタとする「風博士」として、いしかわの漫画に登場していた。だが、エッセイ漫画「フロムK」で、狩撫を「漫画業界のパーティでは（自分の漫画の）風博士の真似をする」「パーティでは、かならず途中で機嫌を悪くして帰ってしまう。パーティが嫌いなら最初から来なければいいのに」と描写したのが狩撫の意に沿わず、その返答として狩撫が原作を担当する同じ雑誌掲載の「ボーダー」に、いしかわと関川を揶揄したエピソードが90話で描かれた。これに関川が激高し、正式に漫画アクション編集部に抗議したため、いしかわも態度を鮮明にせざるを得なくなり、関川を支持することとなる。結局、この件に関しては、漫画アクション編集部と狩撫、さらには作画担当であったたなか亜希夫までが同誌に謝罪文を掲載することとなり、こうした事情により単行本には収録されていない。後年、この件に関していしかわは、「狩撫はよくある楽屋落ちの冗談のつもりだったのだろうが、もともとあまりギャグのセンスがなかったこともあって、下劣で醜悪な物になってしまった」、「誰か（編集部、あるいは作画担当だったたなか亜希夫）が止めるべきだったのに誰も止めなかった」「関川が激高したことは理解出来るし、どちらを支持するかと言えば関川を支持することになる」、「とにかく悲しい出来事であり、あまり思い返したくない」と語り、暗に関川を巻き込まなければ、適当なところで手打になったであろうという意味のことも書いている。このことによりいしかわと狩撫との関係は悪化し、予定されていたコンビによる連載が中止になったという。さらに、関川と狩撫は完全に絶縁状態になった。関川との関係はその後も良好であり、後に撤回されているが『BSマンガ夜話』が局側の意向により一旦終了が決まった際、関川が原作を担当した『事件屋稼業』を取り上げている。また、この放送回は、批評される当事者の関川自身がゲスト出演した。