Java Spring burst onto the Java web‐development scene with the ambition of introducing simpler, more lightweight programming models built on plain old Java objects. After several years and many releases, Spring now exerts tremendous influence in the realm of large‐scale applications.
Spring’s evolution has been steady and relentless, always aiming to simplify complex development tasks and empower Java developers with innovative new features.
The Spring team never sleeps. In recent versions they have delivered, among other advances:
• A full suite for building RESTful services
• Thymeleaf integration as an alternative to JSP in Spring web applications
• Ongoing enhancements to Spring Security with pure‐Java configuration
• Spring Data projects that auto‐generate repository implementations at runtime for JPA, MongoDB, and Neo4j
• Asynchronous web messaging via WebSockets and STOMP
• Spring Boot—a radically simplified way to bootstrap Spring projects
Over the past twelve years, each new Spring release has made the framework easier to use and more powerful. And with all the additions still on the roadmap, the future promises even more excitement for Spring developers.
Java is a general-purpose, competitive, object-oriented programming language. Java’s philosophy is to enable programmers to “write once, run anywhere,” meaning that compiled Java code—or an entire application—can run on any platform supporting Java without any need to recompile the code.
Java is both a programming language and a computing platform first released by Sun Microsystems in 1995. It is fast, secure, and reliable. From laptop computers to large data warehouses, from gaming consoles to scientific supercomputers, and from mobile phones to the Internet, Java is everywhere.
Java was specifically designed for use in distributed Internet environments. It was crafted to look and behave like the C++ programming language but to be simpler to use. It applies an object-oriented programming model. Java can be used to build a complete application running on a single machine or one distributed among servers and clients in a network. It can also power small program modules—applets—that run as part of a web page. Applets enable users of a web page to interact dynamically with that page.
Figure 1 shows the percentage share of programming languages used in the Hello World Open 2014 contest. With 21.3%, Java is the most widely used language.
Figure 1. Percentage share of programming languages used
Java can also be employed to develop smart-card applications, mobile apps, or server-side business applications. Few languages offer a more comprehensive set of APIs. Java was chosen as the development platform for BlackBerry smartphone applications. In information technology, a vibrant development industry and abundant web or server applications are vital to strengthening overall technical capability.