CINXE.COM
Java Servlet Technology Overview
<!DOCTYPE html> <html lang="en-US" class="no-js"><head> <title> Java Servlet Technology Overview</title> <meta name="Title" content=" Java Servlet Technology Overview"> <meta name="Description" content=" Java Servlet Technology Overview"> <meta name="Keywords" content=" Java Servlet Technology Overview"> <!-- Container/Display Start --> <!-- _Raw-Text --> <!-- css / js files start --> <script> !function(){ var d=document.documentElement;d.className=d.className.replace(/no-js/,'js'); if(document.location.href.indexOf('betamode=') > -1) document.write('<script src="https://www.oracle.com/asset/web/js/ocom-betamode.js"><\/script>'); }(); </script> <link data-wscss href="https://www.oracle.com/asset/web/css/ocom-v1-base.css" rel="stylesheet"> <link data-wscss href="https://www.oracle.com/asset/web/css/ocom-v1-styles.css" rel="preload" as="style" onload="this.rel='stylesheet'" onerror="this.rel='stylesheet'"> <noscript> <link href="https://www.oracle.com/asset/web/css/ocom-v1-styles.css" rel="stylesheet"> </noscript> <link data-wsjs data-reqjq href="https://www.oracle.com/asset/web/js/ocom-v1-base.js" rel="preload" as="script"> <link data-wsjs data-reqjq href="https://www.oracle.com/asset/web/js/ocom-v1-lib.js" rel="preload" as="script"> <script data-wsjs src="https://www.oracle.com/asset/web/js/jquery-min.js" async onload="$('head link[data-reqjq][rel=preload]').each(function(){var a = document.createElement('script');a.async=false;a.src=$(this).attr('href');this.parentNode.insertBefore(a, this);});$(function(){$('script[data-reqjq][data-src]').each(function(){this.async=true;this.src=$(this).data('src');});});"></script> <!-- end css / js files start --> <!-- / _Raw-Text --> <!-- Container/Display end --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <meta name="siteid" content="us"> <meta name="countryid" content="US"> <meta name="robots" content="index, follow"> <meta name="country" content="United States"> <meta name="Language" content="en"> <meta name="Updated Date" content="2019-03-04T20:06:36Z"> <script type="text/javascript"> var pageData = pageData || {}; //page info pageData.pageInfo = pageData.pageInfo || {}; pageData.pageInfo.language = "en"; pageData.pageInfo.country = "United States"; pageData.pageInfo.pageTitle = " Java Servlet Technology Overview"; pageData.pageInfo.description = "Java Servlet Technology Overview"; pageData.pageInfo.keywords = "Java Servlet Technology Overview"; pageData.pageInfo.siteId = "us"; pageData.pageInfo.countryId = "US"; pageData.pageInfo.updatedDate = "2019-03-04T20:06:36Z"; </script> <!-- start : ocom/common/global/components/seo-taxonomy-meta-data--> <script type="text/javascript"> var pageData = pageData || {}; //taxonmy pageData.taxonomy = pageData.taxonomy || {}; pageData.taxonomy.productServices = []; pageData.taxonomy.industry = []; pageData.taxonomy.region = []; pageData.taxonomy.contentType = []; pageData.taxonomy.buyersJourney = []; pageData.taxonomy.revenue = []; pageData.taxonomy.title = []; pageData.taxonomy.audience = []; pageData.taxonomy.persona = []; </script> <!-- end : ocom/common/global/components/seo-taxonomy-meta-data--> <!-- start : ocom/common/global/components/social-media-meta-tags --> <!-- end : ocom/common/global/components/social-media-meta-tags --> <!-- start : ocom/common/global/components/seo-hreflang-meta-tags --><link rel="canonical" href="https://developer.oracle.com/java/technologies/servlet-technology.html" /> <link rel="alternate" hreflang="en-US" href="https://developer.oracle.com/java/technologies/servlet-technology.html" /> <!-- end : ocom/common/global/components/seo-hreflang-meta-tags --> <!-- Container/Display Start --> <!-- _Raw-Text --> <!-- www-us HeadAdminContainer --> <link rel="icon" href="https://www.oracle.com/asset/web/favicons/favicon-32.png" sizes="32x32"> <link rel="icon" href="https://www.oracle.com/asset/web/favicons/favicon-128.png" sizes="128x128"> <link rel="icon" href="https://www.oracle.com/asset/web/favicons/favicon-192.png" sizes="192x192"> <link rel="apple-touch-icon" href="https://www.oracle.com/asset/web/favicons/favicon-120.png" sizes="120x120"> <link rel="apple-touch-icon" href="https://www.oracle.com/asset/web/favicons/favicon-152.png" sizes="152x152"> <link rel="apple-touch-icon" href="https://www.oracle.com/asset/web/favicons/favicon-180.png" sizes="180x180"> <meta name="msapplication-TileColor" content="#fcfbfa"/> <meta name="msapplication-square70x70logo" content="favicon-128.png"/> <meta name="msapplication-square150x150logo" content="favicon-270.png"/> <meta name="msapplication-TileImage" content="favicon-270.png"/> <meta name="msapplication-config" content="none"/> <meta name="referrer" content="no-referrer-when-downgrade"/> <script async="async" type="text/javascript" src='//consent.truste.com/notice?domain=oracle.com&c=teconsent&js=bb¬iceType=bb&text=true>m=1&cdn=1&pcookie' crossorigin></script> <style> #oReactiveChatContainer1 { display:none;} </style> <!-- Truste for RU --> <script type="text/javascript"> if (location.pathname.indexOf("/ru/") == 0){ document.write('\x3Cscript async="async" src=//consent.truste.com/notice?domain=oracleru.com&c=teconsent&js=bb¬iceType=bb&text=true>m=1&cdn=1&pcookie crossorigin="">\x3C/script>'); } </script> <!--Tealium embed code --> <script src="https://tms.oracle.com/main/prod/utag.sync.js"></script> <!-- Loading script asynchronously --> <script type="text/javascript"> (function(a,b,c,d){ if(location.href.indexOf("tealium=dev") == -1) { a='https://tms.oracle.com/main/prod/utag.js'; } else { a='https://tms.oracle.com/main/dev/utag.js'; } b=document;c='script';d=b.createElement(c);d.src=a;d.type='text/java'+c;d.async=true; a=b.getElementsByTagName(c)[0];a.parentNode.insertBefore(d,a); })(); </script> <!--End--> <!-- / _Raw-Text --> <!-- Container/Display end --> <script>(window.BOOMR_mq=window.BOOMR_mq||[]).push(["addVar",{"rua.upush":"false","rua.cpush":"false","rua.upre":"false","rua.cpre":"false","rua.uprl":"false","rua.cprl":"false","rua.cprf":"false","rua.trans":"","rua.cook":"false","rua.ims":"false","rua.ufprl":"false","rua.cfprl":"false","rua.isuxp":"false","rua.texp":"norulematch","rua.ceh":"false","rua.ueh":"false","rua.ieh.st":"0"}]);</script> <script>!function(e){var n="https://s.go-mpulse.net/boomerang/";if("False"=="True")e.BOOMR_config=e.BOOMR_config||{},e.BOOMR_config.PageParams=e.BOOMR_config.PageParams||{},e.BOOMR_config.PageParams.pci=!0,n="https://s2.go-mpulse.net/boomerang/";if(window.BOOMR_API_key="DXNLE-YBWWY-AR74T-WMD99-77VRA",function(){function e(){if(!o){var e=document.createElement("script");e.id="boomr-scr-as",e.src=window.BOOMR.url,e.async=!0,i.parentNode.appendChild(e),o=!0}}function t(e){o=!0;var n,t,a,r,d=document,O=window;if(window.BOOMR.snippetMethod=e?"if":"i",t=function(e,n){var t=d.createElement("script");t.id=n||"boomr-if-as",t.src=window.BOOMR.url,BOOMR_lstart=(new Date).getTime(),e=e||d.body,e.appendChild(t)},!window.addEventListener&&window.attachEvent&&navigator.userAgent.match(/MSIE [67]\./))return window.BOOMR.snippetMethod="s",void t(i.parentNode,"boomr-async");a=document.createElement("IFRAME"),a.src="about:blank",a.title="",a.role="presentation",a.loading="eager",r=(a.frameElement||a).style,r.width=0,r.height=0,r.border=0,r.display="none",i.parentNode.appendChild(a);try{O=a.contentWindow,d=O.document.open()}catch(_){n=document.domain,a.src="javascript:var d=document.open();d.domain='"+n+"';void(0);",O=a.contentWindow,d=O.document.open()}if(n)d._boomrl=function(){this.domain=n,t()},d.write("<bo"+"dy onload='document._boomrl();'>");else if(O._boomrl=function(){t()},O.addEventListener)O.addEventListener("load",O._boomrl,!1);else if(O.attachEvent)O.attachEvent("onload",O._boomrl);d.close()}function a(e){window.BOOMR_onload=e&&e.timeStamp||(new Date).getTime()}if(!window.BOOMR||!window.BOOMR.version&&!window.BOOMR.snippetExecuted){window.BOOMR=window.BOOMR||{},window.BOOMR.snippetStart=(new Date).getTime(),window.BOOMR.snippetExecuted=!0,window.BOOMR.snippetVersion=12,window.BOOMR.url=n+"DXNLE-YBWWY-AR74T-WMD99-77VRA";var i=document.currentScript||document.getElementsByTagName("script")[0],o=!1,r=document.createElement("link");if(r.relList&&"function"==typeof r.relList.supports&&r.relList.supports("preload")&&"as"in r)window.BOOMR.snippetMethod="p",r.href=window.BOOMR.url,r.rel="preload",r.as="script",r.addEventListener("load",e),r.addEventListener("error",function(){t(!0)}),setTimeout(function(){if(!o)t(!0)},3e3),BOOMR_lstart=(new Date).getTime(),i.parentNode.appendChild(r);else t(!1);if(window.addEventListener)window.addEventListener("load",a,!1);else if(window.attachEvent)window.attachEvent("onload",a)}}(),"".length>0)if(e&&"performance"in e&&e.performance&&"function"==typeof e.performance.setResourceTimingBufferSize)e.performance.setResourceTimingBufferSize();!function(){if(BOOMR=e.BOOMR||{},BOOMR.plugins=BOOMR.plugins||{},!BOOMR.plugins.AK){var n=""=="true"?1:0,t="",a="bdpnbeqxjpkyoz2bwira-f-b0dc8faa7-clientnsv4-s.akamaihd.net",i="false"=="true"?2:1,o={"ak.v":"39","ak.cp":"82485","ak.ai":parseInt("604074",10),"ak.ol":"0","ak.cr":3,"ak.ipv":4,"ak.proto":"http/1.1","ak.rid":"6aab8a06","ak.r":42017,"ak.a2":n,"ak.m":"dscx","ak.n":"essl","ak.bpcip":"8.222.208.0","ak.cport":40102,"ak.gh":"184.28.235.13","ak.quicv":"","ak.tlsv":"tls1.2","ak.0rtt":"","ak.0rtt.ed":"","ak.csrc":"-","ak.acc":"reno","ak.t":"1732358690","ak.ak":"hOBiQwZUYzCg5VSAfCLimQ==+dVTrcCGFlYKhFyIYSgeYbteJMGPAClFGcXhzOmNvE7jgbc0mSy9BmPJ+j3We8QYkiS2MyfygTKBGulISQntF90jh9fHme9FgwYl7kF+QbV4ViVDmd7I7yCsPwubWSyWNKVqyx/yqDXiDj1cvTNV/n7/A4jH6ZQzA85IjGVR2z1qvb0vl07JF56fDsfQ25TaEJzlBNiMrbYmqU9mZ0p9rlRgMe9f26isUv1qWHYfjJSo3LG4FX4VmT6lcxI6RvR1q5utUVr8TRN1OkYBgjBtWluxIzM0VQxfaKBShjwtBPnu0rTPel7t7XCOsoGdNeKTONG7o67/TbWPSOMj5pGy+4D/vR848USQJQJ/CFcuQrogwS9/NgiDibdaF2bfnbjlDG8Ux8nxJZUakZPOQHGCdTaRXBOD0hZAAYXZwhq4AdE=","ak.pv":"492","ak.dpoabenc":"","ak.tf":i};if(""!==t)o["ak.ruds"]=t;var r={i:!1,av:function(n){var t="http.initiator";if(n&&(!n[t]||"spa_hard"===n[t]))o["ak.feo"]=void 0!==e.aFeoApplied?1:0,BOOMR.addVar(o)},rv:function(){var e=["ak.bpcip","ak.cport","ak.cr","ak.csrc","ak.gh","ak.ipv","ak.m","ak.n","ak.ol","ak.proto","ak.quicv","ak.tlsv","ak.0rtt","ak.0rtt.ed","ak.r","ak.acc","ak.t","ak.tf"];BOOMR.removeVar(e)}};BOOMR.plugins.AK={akVars:o,akDNSPreFetchDomain:a,init:function(){if(!r.i){var e=BOOMR.subscribe;e("before_beacon",r.av,null,null),e("onbeacon",r.rv,null,null),r.i=!0}return this},is_complete:function(){return!0}}}}()}(window);</script></head> <body class="f11 f11v6"> <div class="f11w1"> <!-- start Common/Header --> <!-- Dispatcher:null --> <!-- BEGIN: oWidget_C/_Raw-Text/Display --> <!-- U30v3 --> <style> #u30{opacity:1 !important;filter:opacity(100%) !important;position:sticky;top:0} .u30v3{background:#3a3632;height:50px;overflow:hidden;border-top:5px solid #3a3632;border-bottom:5px solid #3a3632} #u30nav,#u30tools{visibility:hidden} .u30v3 #u30logo {width:121px;height: 44px;display: inline-flex;justify-content: flex-start;} #u30:not(.u30mobile) .u30-oicn-mobile,#u30.u30mobile .u30-oicn{display:none} #u30logo svg{height:auto;align-self:center} .u30brand{height:50px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:1344px;padding:0 48px;margin:0 auto} .u30brandw1{display:flex;flex-direction:row;color:#fff;text-decoration:none;align-items:center} @media (max-width:1024px){.u30brand{padding:0 24px}} #u30skip2,#u30skip2content{transform:translateY(-100%);position:fixed} .rtl #u30{direction:rtl} </style> <section id="u30" class="u30 u30v3 pause searchv2" data-trackas="header"> <div id="u30skip2"> <ul> <li><a id="u30skip2c" href="#maincontent">Skip to content</a></li> <li><a id="u30acc" href="https://www.oracle.com/corporate/accessibility/">Accessibility Policy</a></li> </ul> </div> <div class="u30w1 cwidth" id="u30w1"> <div id="u30brand" class="u30brand"> <div class="u30brandw1"> <a id="u30btitle" href="https://www.oracle.com/" data-lbl="logo" aria-label="Home"> <div id="u30logo"> <svg class="u30-oicn-mobile" xmlns="http://www.w3.org/2000/svg" width="32" height="21" viewBox="0 0 32 21"><path fill="#C74634" d="M9.9,20.1c-5.5,0-9.9-4.4-9.9-9.9c0-5.5,4.4-9.9,9.9-9.9h11.6c5.5,0,9.9,4.4,9.9,9.9c0,5.5-4.4,9.9-9.9,9.9H9.9 M21.2,16.6c3.6,0,6.4-2.9,6.4-6.4c0-3.6-2.9-6.4-6.4-6.4h-11c-3.6,0-6.4,2.9-6.4,6.4s2.9,6.4,6.4,6.4H21.2"/></svg> <svg class="u30-oicn" xmlns="http://www.w3.org/2000/svg" width="231" height="30" viewBox="0 0 231 30" preserveAspectRatio="xMinYMid"><path fill="#C74634" d="M99.61,19.52h15.24l-8.05-13L92,30H85.27l18-28.17a4.29,4.29,0,0,1,7-.05L128.32,30h-6.73l-3.17-5.25H103l-3.36-5.23m69.93,5.23V0.28h-5.72V27.16a2.76,2.76,0,0,0,.85,2,2.89,2.89,0,0,0,2.08.87h26l3.39-5.25H169.54M75,20.38A10,10,0,0,0,75,.28H50V30h5.71V5.54H74.65a4.81,4.81,0,0,1,0,9.62H58.54L75.6,30h8.29L72.43,20.38H75M14.88,30H32.15a14.86,14.86,0,0,0,0-29.71H14.88a14.86,14.86,0,1,0,0,29.71m16.88-5.23H15.26a9.62,9.62,0,0,1,0-19.23h16.5a9.62,9.62,0,1,1,0,19.23M140.25,30h17.63l3.34-5.23H140.64a9.62,9.62,0,1,1,0-19.23h16.75l3.38-5.25H140.25a14.86,14.86,0,1,0,0,29.71m69.87-5.23a9.62,9.62,0,0,1-9.26-7h24.42l3.36-5.24H200.86a9.61,9.61,0,0,1,9.26-7h16.76l3.35-5.25h-20.5a14.86,14.86,0,0,0,0,29.71h17.63l3.35-5.23h-20.6" transform="translate(-0.02 0)" /></svg> </div> </a> </div> </div> <div id="u30nav" class="u30nav" data-closetxt="Close Menu" data-trackas="menu"> <nav id="u30navw1" aria-label="Oracle website"> <button data-navtarget="products" aria-controls="products" aria-expanded="false" class="u30navitem">Products</button> <button data-navtarget="industries" aria-controls="industries" aria-expanded="false" class="u30navitem">Industries</button> <button data-navtarget="resources" aria-controls="resources" aria-expanded="false" class="u30navitem">Resources</button> <button data-navtarget="customers" aria-controls="customers" aria-expanded="false" class="u30navitem">Customers</button> <button data-navtarget="partners" aria-controls="partners" aria-expanded="false" class="u30navitem">Partners</button> <button data-navtarget="developers" aria-controls="developers" aria-expanded="false" class="u30navitem">Developers</button> <button data-navtarget="company" aria-controls="company" aria-expanded="false" class="u30navitem">Company</button> </nav> </div> <div id="u30tools" class="u30tools"> <div id="u30search"> <div id="u30searchw1"> <div id="u30searchw2"> <form name="u30searchForm" id="u30searchForm" data-contentpaths="/content/Web/Shared/Auto-Suggest Panel Event" method="get" action="https://search.oracle.com/results"> <div class="u30s1"> <button id="u30closesearch" aria-label="Close Search" type="button"> <span>Close Search</span> <svg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M8 13L2 7L8 1" stroke="#161513" stroke-width="2" /> </svg> </button> <span class="u30input"> <div class="u30inputw1"> <input id="u30input" name="q" value="" type="text" placeholder="Search" autocomplete="off" aria-autocomplete="both" aria-label="Search Oracle.com" role="combobox" aria-expanded="false" aria-haspopup="listbox" aria-controls="u30searchw3"> </div> <input type="hidden" name="size" value="10"> <input type="hidden" name="page" value="1"> <input type="hidden" name="tab" value="all"> <span id="u30searchw3title" class="u30visually-hidden">Search Oracle.com</span> <div id="u30searchw3" data-pagestitle="SUGGESTED LINKS" data-autosuggesttitle="SUGGESTED SEARCHES" data-allresultstxt="All results for" data-allsearchpath="https://search.oracle.com/results?q=u30searchterm&size=10&page=1&tab=all" role="listbox" aria-labelledby="u30searchw3title"> <ul id="u30quicklinks" class="autocomplete-items" role="group" aria-labelledby="u30quicklinks-title"> <li role="presentation" class="u30auto-title" id="u30quicklinks-title">QUICK LINKS</li> <li role="option"><a href="/cloud/" data-lbl="quick-links:oci">Oracle Cloud Infrastructure</a> </li> <li role=" option"><a href="/applications/" data-lbl="quick-links:applications">Oracle Fusion Cloud Applications</a></li> <li role="option"><a href="/database/technologies/" data-lbl="quick-links:database">Oracle Database</a></li> <li role="option"><a href="/java/technologies/downloads/" data-lbl="quick-links:download-java">Download Java</a> </li> <li role="option"><a href="/careers/" data-lbl="quick-links:careers">Careers at Oracle</a></li> </ul> </div> <span class="u30submit"> <input class="u30searchbttn" type="submit" value="Submit Search"> </span> <button id="u30clear" type="reset" aria-label="Clear Search"> <svg width="20" height="20" viewBox="0 0 20 20" aria-hidden="true" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M7 7L13 13M7 13L13 7M19 10C19 14.9706 14.9706 19 10 19C5.02944 19 1 14.9706 1 10C1 5.02944 5.02944 1 10 1C14.9706 1 19 5.02944 19 10Z" stroke="#161513" stroke-width="2" /> </svg> </button> </span> </div> </form> <div id="u30announce" data-alerttxt="suggestions found to navigate use up and down arrows" class="u30visually-hidden" aria-live="polite"></div> </div> </div> <button class="u30searchBtn" id="u30searchBtn" type="button" aria-label="Open Search Field" aria-expanded="false"> <span>Search</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"> <path d="M15,15l6,6M17,10a7,7,0,1,1-7-7A7,7,0,0,1,17,10Z" /> </svg> </button> </div> <span id="ac-flag"> <a class="flag-focus" href="/countries-list.html#countries" data-ajax="true" rel="lightbox" role="button"> <span class="sr-only">Country</span> <img class="flag-image" src="" alt=""/> <svg class="default-globe" alt="Country" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <rect width="20" height="20" fill="url(#pattern0)"/> <defs> <pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> <use xlink:href="#image0_1_1830" transform="translate(-0.166667 -0.166667) scale(0.0138889)"/> </pattern> <image alt="" id="image0_1_1830" width="96" height="96" xlink:href="data:image/png;base64,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"/> </defs> </svg> </a> </span> <div id="u30-profile" class="u30-profile"> <button id="u30-flyout" data-lbl="sign-in-account" aria-expanded="false"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M17,19.51A3,3,0,0,0,14,17H10a3,3,0,0,0-3,2.51m9.92,0a9,9,0,1,0-9.92,0m9.92,0a9,9,0,0,1-9.92,0M15,10a3,3,0,1,1-3-3A3,3,0,0,1,15,10Z"/></svg> <span class="acttxt">View Accounts</span> </button> <div id="u30-profilew1"> <button id="u30actbck" aria-label="close account flyout"><span class="u30actbcktxt">Back</span></button> <div class="u30-profilew2"> <span class="u30acttitle">Cloud Account</span> <a href="/cloud/sign-in.html" class=" u30darkcta u30cloudbg" data-lbl="sign-in-to-cloud">Sign in to Cloud</a> <a href="/cloud/free/" class="u30lightcta" data-lbl="try-free-cloud-trial">Sign Up for Free Cloud Tier</a> </div> <span class="u30acttitle">Oracle Account</span> <ul class="u30l-out"> <li><a href="https://www.oracle.com/webapps/redirect/signon?nexturl=" data-lbl="profile:sign-in-account" class="u30darkcta">Sign-In</a></li> <li><a href="https://profile.oracle.com/myprofile/account/create-account.jspx" data-lbl="profile:create-account" class="u30lightcta">Create an Account</a></li> </ul> <ul class="u30l-in"> <li><a href="/corporate/contact/help.html" data-lbl="help">Help</a></li> <li><a href="javascript:sso_sign_out();" id="u30pfile-sout" data-lbl="signout">Sign Out</a></li> </ul> </div> </div> <div class="u30-contact"> <a href="/corporate/contact/" data-lbl="contact-us" title="Contact Sales"><span>Contact Sales</span></a> </div> <a href="/global-menu-v2/" id="u30ham" role="button" aria-expanded="false" aria-haspopup="true" aria-controls="u30navw1"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"> <title>Menu</title> <path d="M16,4 L2,4" class="p1"></path> <path d="M2,12 L22,12" class="p2"></path> <path d="M2,20 L16,20" class="p3"></path> <path d="M0,12 L24,12" class="p4"></path> <path d="M0,12 L24,12" class="p5"></path> </svg> <span>Menu</span> </a> </div> </div> <script> var u30min = [722,352,0,0]; var u30brsz = new ResizeObserver(u30 => { document.getElementById('u30').classList.remove('u30mobile','u30tablet','u30notitle'); let u30b = document.getElementById('u30brand').offsetWidth, u30t = document.getElementById('u30tools').offsetWidth ; u30v = document.getElementById('u30navw1'); u30w = document.getElementById('u30w1').offsetWidth - 48; if((u30b + u30t) > u30min[0]){ u30min[2] = ((u30b + u30t) > 974) ? u30b + u30t + 96 : u30b + u30t + 48; }else{ u30min[2] = u30min[0]; } u30min[3] = ((u30b + 112) > u30min[1]) ? u30min[3] = u30b + 112 : u30min[3] = u30min[1]; u30v.classList.add('u30navchk'); u30min[2] = (u30v.lastElementChild.getBoundingClientRect().right > u30min[2]) ? Math.ceil(u30v.lastElementChild.getBoundingClientRect().right) : u30min[2]; u30v.classList.remove('u30navchk'); if(u30w <= u30min[3]){ document.getElementById('u30').classList.add('u30notitle'); } if(u30w <= u30min[2]){ document.getElementById('u30').classList.add('u30mobile'); } }); var u30wrsz = new ResizeObserver(u30 => { let u30n = document.getElementById('u30navw1').getBoundingClientRect().height, u30h = u30[0].contentRect.height; let u30c = document.getElementById('u30').classList, u30w = document.getElementById('u30w1').offsetWidth - 48, u30m = 'u30mobile', u30t = 'u30tablet'; if(u30c.contains('navexpand') && u30c.contains(u30m) && u30w > u30min[2]){ if(!document.querySelector('button.u30navitem.active')){ document.getElementById('u30ham').click(); } u30c.remove(u30m); if(document.getElementById('u30').getBoundingClientRect().height > 80){ u30c.add(u30t); }else{ u30c.remove(u30t); } }else if(u30w <= u30min[2]){ if(getComputedStyle(document.getElementById('u30tools')).visibility != "hidden"){ u30c.add(u30m); u30c.remove(u30t); } }else if(u30n < 30 && u30h > 80){ u30c.add(u30t); u30c.remove(u30m); }else if(u30n > 30){ u30c.add(u30m); u30c.remove(u30t); }else if(u30n < 30 && u30h <= 80){ u30c.remove(u30m); if(document.getElementById('u30').getBoundingClientRect().height > 80){ u30c.add(u30t); }else{ u30c.remove(u30t); } } }); u30brsz.observe(document.getElementById('u30btitle')); u30wrsz.observe(document.getElementById('u30')); </script> </section> <!-- /U30v3 --> <!-- END: oWidget_C/_Raw-Text/Display --> <!-- end Common/Header --> <!-- U03v5 --> <nav class="u03 u03v5 u03bttns" data-trackas="breadcrumb" data-ocomid="u03"> <div class="cwidth"> <div class="u03w1"> <ul> <li><a href="/java/">Java</a></li> <li><a href="/java/technologies/">Technologies</a></li> </ul> <h1> Java Servlet Technology </h1> </div> </div> <script type="text/javascript"> var pageData = pageData || {}; //page info pageData.pageInfo = pageData.pageInfo || {}; pageData.pageInfo.breadCrumbs = "Java / Technologies"; </script> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Java", "item": "https://www.oracle.com/java/" }, { "@type": "ListItem", "position": 2, "name": "Technologies", "item": "https://www.oracle.com/java/technologies/" } ] } </script> </nav> <!-- _Raw-Text --> <!-- CB83v2 --> <section class="cb83 cb83v2 cb83credit cpad bgblue" data-trackas="cb83" data-ocomid="cb83"> <div class="cb83w7 cwidth"> <div class="cb83w3"> <h1 class="herotitle txtwhite">Java Servlet Technology Overview</h1> <p>Servlets are the Java platform technology of choice for extending and enhancing Web servers. Servlets provide a component-based, platform-independent method for building Web-based applications, without the performance limitations of CGI programs. And unlike proprietary server extension mechanisms (such as the Netscape Server API or Apache modules), servlets are server- and platform-independent. This leaves you free to select a "best of breed" strategy for your servers, platforms, and tools. </p> </div> </div> </section> <!-- /CB83v2 --> <section class="cc01 cc01v0 cpad"> <div class="cc01w1 cwidth"> <p> Servlets have access to the entire family of Java APIs, including the <a href="/java/technologies/javase/javase-tech-database.html">JDBC API</a> to access enterprise databases. Servlets can also access a library of HTTP-specific calls and receive all the benefits of the mature Java language, including portability, performance, reusability, and crash protection. </p><p> Today servlets are a popular choice for building interactive Web applications. Third-party servlet containers are available for Apache Web Server, Microsoft IIS, and others. Servlet containers are usually a component of Web and application servers, such as BEA WebLogic Application Server, IBM WebSphere, Sun Java System Web Server, Sun Java System Application Server, and others. </p><p> You might want to check out the latest information on <a href="//jcp.org/en/jsr/detail?id=52">JavaServer Pages (JSP)</a> technology. JSP technology is an extension of the servlet technology created to support authoring of HTML and XML pages. It makes it easier to combine fixed or static template data with dynamic content. Even if you're comfortable writing servlets, there are several compelling reasons to investigate JSP technology as a complement to your existing work. </p> </div> </section> <!-- / _Raw-Text --> <!-- U10v0 --> <!-- Dispatcher:null --> <!-- BEGIN: oWidget_C/_Raw-Text/Display --> <!-- U10v0 --> <footer id="u10" class="u10 u10v6" data-trackas="footer" type="redwood" data-ocomid="u10" data-a11y="true"> <nav class="u10w1" aria-label="Footer"> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Resources for</div> <ul> <li><a data-lbl="resources-for:career" href="/careers/">Careers</a></li> <li><a data-lbl="resources-for:developers" href="/developer/">Developers</a></li> <li><a data-lbl="resources-for:investors" href="https://investor.oracle.com/home/default.aspx">Investors</a></li> <li><a data-lbl="resources-for:partners" href="/partner/">Partners</a></li> <li><a data-lbl="resources-for:researchers" href="/research/">Researchers</a></li> <li><a data-lbl="resources-for:students-educators" href="https://academy.oracle.com/en/oa-web-overview.html">Students and Educators</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Why Oracle</div> <ul> <li><a data-lbl="why-oracle:analyst-reports" href="/corporate/analyst-reports/">Analyst Reports</a> </li> <li><a data-lbl="why-oracle:gartner-mq-erp-cloud" href="/erp/what-is-erp/best-erp/">Best cloud-based ERP</a></li> <li><a data-lbl="why-oracle:cloud-economics" href="/cloud/economics/">Cloud Economics</a></li> <li><a data-lbl="why-oracle:corporate-responsibility" href="/social-impact/">Social Impact</a></li> <li><a data-lbl="why-oracle:culture-inclusion" href="/careers/diversity-inclusion/">Culture and Inclusion</a></li> <li><a data-lbl="why-oracle:security-pracitices" href="/corporate/security-practices/">Security Practices</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Learn</div> <ul> <li><a data-lbl="learn:cloud-computing" href="/cloud/what-is-cloud-computing/">What is cloud computing?</a></li> <li><a data-lbl="learn:crm" href="/cx/what-is-crm/">What is CRM?</a></li> <li><a data-lbl="learn:docker" href="/cloud/cloud-native/container-registry/what-is-docker/">What is Docker?</a></li> <li><a data-lbl="learn:kubernetes" href="/cloud/cloud-native/kubernetes-engine/what-is-kubernetes/">What is Kubernetes?</a></li> <li><a data-lbl="learn:python" href="/developer/what-is-python-for-developers/">What is Python?</a></li> <li><a data-lbl="learn:saas" href="/applications/what-is-saas/">What is SaaS?</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">News and Events</div> <ul> <li><a data-lbl="newsandevents:news" href="/news/">News</a></li> <li><a data-lbl="newsandevents:oracle-cloudworld" href="/cloudworld/">Oracle CloudWorld</a></li> <li><a data-lbl="newsandevents:oracle-cloudworld-tour" href="/cloudworld-tour/">Oracle CloudWorld Tour</a></li> <li><a data-lbl="newsandevents:oracle-health-summit" href="/health/health-summit/">Oracle Health Summit</a></li> <li><a data-lbl="newsandevents:devlive" href="/developer/devlive/">Oracle DevLive</a></li> <li><a data-lbl="newsandevents:search-all-events" href="https://search.oracle.com/events?q=&lang=english">Search all events</a></li> </ul> </div> </div> <div class="u10w2"> <div class="u10w3"> <div class="u10ttl">Contact Us</div> <ul> <li><a href="tel:18006330738">US Sales: +1.800.633.0738</a></li> <li><a data-lbl="contact-us:how-can-we-help" href="/corporate/contact/">How can we help?</a></li> <li><a data-lbl="contact-us:subscribe-to-emails" href="https://go.oracle.com/subscriptions">Subscribe to emails</a></li> <li><a data-lbl="contact-us:integrity-helpline" href="https://secure.ethicspoint.com/domain/media/en/gui/31053/index.html">Integrity Helpline</a></li> <li><a data-lbl="contact-us:accessibility" href="/corporate/accessibility/">Accessibility</a></li> </ul> </div> </div> <div class="u10w4"> <hr /> </div> </nav> <div class="u10w11"> <ul class="u10-cr"> <li class="u10mtool" id="u10cmenu"> <a data-lbl="country-region" class="u10ticon u10regn" href="/universal-menu/#u10countrymenu">Country/Region</a> </li> </ul> <nav class="u10w5 u10w10" aria-label="Site info"> <ul class="u10-links"> <li></li> <li><a data-lbl="copyright" href="/legal/copyright/">© 2024 Oracle</a></li> <li><a data-lbl="privacy" href="/legal/privacy/">Privacy</a><span>/</span><a data-lbl="do-not-sell-my-info" href="/legal/privacy/privacy-choices/">Do Not Sell My Info</a></li> <li> <div id="teconsent"></div> </li> <li><a data-lbl="ad-choices" href="/legal/privacy/privacy-policy/#adchoices">Ad Choices</a></li> <li><a data-lbl="careers" href="/corporate/careers/">Careers</a></li> </ul> </nav> <nav class="u10scl" aria-label="Social media links"> <ul class="scl-icons"> <li class="scl-facebook"><a data-lbl="scl-icon:facebook" href="https://www.facebook.com/Oracle/" target="_blank" title="Oracle on Facebook"></a></li> <li class="scl-twitter"><a data-lbl="scl-icon:twitter" href="https://twitter.com/oracle" target="_blank" title="Follow Oracle on Twitter"></a></li> <li class="scl-linkedin"><a data-lbl="scl-icon:linkedin" href="https://www.linkedin.com/company/oracle/" target="_blank" title="Oracle on LinkedIn"></a></li> <li class="scl-youtube"><a data-lbl="scl-icon:you-tube" href="https://www.youtube.com/oracle/" target="_blank" title="Watch Oracle on YouTube"></a></li> </ul> </nav> </div> </footer> <!-- /U10v6 --> <!-- END: oWidget_C/_Raw-Text/Display --> <!-- /U10v0 --> </div> <!-- Container/Display Start --> <!-- _Raw-Text --> <!-- www-us EndBodyAdminContainer --> <!-- Start SiteCatalyst code --> <script language="JavaScript" src="https://www.oracle.com/us/assets/metrics/ora_ocom.js"></script> <!-- End SiteCatalyst code --> <!-- www-us EndBodyAdminContainer --> <!-- / _Raw-Text --> <!-- Container/Display end --> </body> </html>