{"id":85316,"date":"2018-12-24T19:35:41","date_gmt":"2018-12-24T17:35:41","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/?page_id=85316"},"modified":"2023-03-06T16:39:23","modified_gmt":"2023-03-06T14:39:23","slug":"play-framework-tutorials","status":"publish","type":"page","link":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials","title":{"rendered":"Play Framework Tutorials"},"content":{"rendered":"<p><a href=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/play-framework-logo.jpg\"><img decoding=\"async\" class=\"aligncenter wp-image-80358\" style=\"border: none;\" src=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/play-framework-logo.jpg\" alt=\"Hibernate Tutorials\" width=\"300\" height=\"300\"><\/a><\/p>\n<p>In this detailed Resource page, we feature an abundance of <strong>Play Framework Tutorials<\/strong>!<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Play_Framework\">Play Framework<\/a> is an open-source web application framework, written in Scala and also usable from other programming languages that are compiled to Bytecode, e.g. Java, which follows the model\u2013view\u2013controller (MVC) architectural pattern. It aims to optimize developer productivity by using convention over configuration, hot code reloading and display of errors in the browser.<sup id=\"cite_ref-2\" class=\"reference\"><\/sup><\/p>\n<p>Support for the Scala programming language has been available since version 1.1 of the framework. In version 2.0, the framework core was rewritten in Scala. Build and deployment was migrated to SBT, and templates use Scala instead of Apache Groovy.<\/p>\n<p>Play is heavily inspired by ASP.NET MVC, Ruby on Rails and Django and is similar to this family of frameworks. Play web applications can be written in Scala or Java, in an environment that may be less Java Enterprise Edition-centric. Play uses no Java EE constraints. This can make Play simpler to develop compared to other Java-centric platforms.<sup id=\"cite_ref-16\" class=\"reference\"><\/sup><\/p>\n<div class=\"tip\"><strong>Note<\/strong><br \/>\nIf you wish to build up your Play Framework knowledge first, check out our <a href=\"https:\/\/www.javacodegeeks.com\/2013\/09\/the-pros-and-cons-of-play-and-grails-java-framework.html\">The Pros and Cons of Play and Grails Java Framework<\/a>.<\/div>\n<h2>Play Framework Tutorials \u2013 Getting Started<\/h2>\n<h4>Simple examples on how to use Play Framework<\/h4>\n<ul>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/play-framework-hello-world-example\/\">Play! Framework Hello World Example<\/a><br \/>\nWe are going to develop a series of Scala Web Applications or Microservices using Play Framework. This is our first post in this series. In this post, we feature a comprehensive Play! Framework Hello World Example. We are going to develop our old style, to learn new concepts on \u201cHelloWorld\u201d example using Play Framework, Scala Language and SBT build tool.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/play-framework-session-example\/\">Play! Framework Session Example<\/a><br \/>\nToday, on most web applications, there is data we need to be sent across multiple http requests while the user has a browser tab open. A lot of different approaches were made, such as cookies and headers forwarding. To solve this problem, play applications now have a powerful tool: Sessions and Flash scope.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/play-framework-security-example\/\">Play! Framework Security Example<\/a><br \/>\nIn this example, we\u2019ll write a login page, and forbid access to secured pages to users which are not logged in. Then we\u2019ll configure security headers, such as: X-Frame-Options, X-XSS-Protection, X-Content-Type-Options, X-Permitted-Cross-Domain-Policies and Content-Security-Policy. And finally, we\u2019ll configure CORS.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/play-framework-logging-example\/\">Play! Framework Logging Example<\/a><br \/>\nLogging is a really important feature every application must have. Without it, it\u2019s nearly impossible to know what your application is doing, how long does it take it, if it is failing, and if it is, why. With this in mind, play added logging support to it\u2019s framework, using logback as logging implementation, and giving access to it through the Logger class.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/play-framework-json-example\/\">Play! Framework Json Example<\/a><br \/>\nAs we\u2019ve seen in our previous example, Play! is a powerful web mvc framework. Among other stuff, Play has support for rest clients (in its WS package), web sockets, and our subject today: json. In this example, we\u2019ll see how to write a Restful Web Service with Play! Framework with both scala and java languages using java 1.8.0_66, scala 2.11.6 and Play 2.4.3.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/play-framework-json-scala-example\/\">Play! Framework JSON &amp; Scala Example<\/a><br \/>\nIn this post, we feature a comprehensive Example on Play! Framework JSON &amp; Scala. In my last two posts, we have discussed about Play Framework + Scala + SBT based project basics. Please refer Play! Framework Hello World Example and Play! Framework Path, Query and Route Default Params Example to understand Play + SBT Project structure, Project configurations, SBT configurations etc. This is my third post in Play! Framework Tutorial Series.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/play-framework-path-query-and-route-default-params-example\/\">Play! Framework Path, Query and Route Default Params Example<\/a><br \/>\nIn this post, we are going to discuss about few more Play Framework basics like Path Parameters, Query Parameters, Routing Default Parameters and Routing Fixed Values Parameters in detail with some suitable examples. We will also discuss what is the best approach between Path and Query Parameters to develop REST APIs. We will try to develop separate SBT project for each concept so that we can play or evaluate them very well.<\/li>\n<\/ul>\n<p>[undereg]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this detailed Resource page, we feature an abundance of Play Framework Tutorials! Play Framework is an open-source web application framework, written in Scala and also usable from other programming languages that are compiled to Bytecode, e.g. Java, which follows the model\u2013view\u2013controller (MVC) architectural pattern. It aims to optimize developer productivity by using convention over &hellip;<\/p>\n","protected":false},"author":34987,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-85316","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Play Framework Tutorials - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Interested to learn more about Play Framework and Scala? Then check our detailed Play Framework Tutorials and Scala Tutorials!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/play-framework-tutorials\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Play Framework Tutorials - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Interested to learn more about Play Framework and Scala? Then check our detailed Play Framework Tutorials and Scala Tutorials!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/play-framework-tutorials\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-06T14:39:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/play-framework-logo.jpg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials\",\"name\":\"Play Framework Tutorials - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/play-framework-logo.jpg\",\"datePublished\":\"2018-12-24T17:35:41+00:00\",\"dateModified\":\"2023-03-06T14:39:23+00:00\",\"description\":\"Interested to learn more about Play Framework and Scala? Then check our detailed Play Framework Tutorials and Scala Tutorials!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/play-framework-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/play-framework-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/play-framework-tutorials#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Play Framework Tutorials\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Play Framework Tutorials - Java Code Geeks","description":"Interested to learn more about Play Framework and Scala? Then check our detailed Play Framework Tutorials and Scala Tutorials!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials","og_locale":"en_US","og_type":"article","og_title":"Play Framework Tutorials - Java Code Geeks","og_description":"Interested to learn more about Play Framework and Scala? Then check our detailed Play Framework Tutorials and Scala Tutorials!","og_url":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_modified_time":"2023-03-06T14:39:23+00:00","og_image":[{"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/play-framework-logo.jpg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_site":"@javacodegeeks","twitter_misc":{"Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials","url":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials","name":"Play Framework Tutorials - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/play-framework-logo.jpg","datePublished":"2018-12-24T17:35:41+00:00","dateModified":"2023-03-06T14:39:23+00:00","description":"Interested to learn more about Play Framework and Scala? Then check our detailed Play Framework Tutorials and Scala Tutorials!","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/play-framework-tutorials"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/play-framework-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/play-framework-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/play-framework-tutorials#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Play Framework Tutorials"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/pages\/85316","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/34987"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=85316"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/pages\/85316\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=85316"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}