The Spring Blog

Engineering
Releases
News and Events

Oct 24th webinar: Modern Component Design with Spring

Speaker: Juergen Hoeller

In recent years, the Spring Framework focuses on flexible and powerful Java-based configuration. This talk presents Spring as an annotation-oriented application framework, illustrating the rich set of features that Spring has to offer for modern component design. General component model trends will be discussed along with selected Spring feature highlights, such as standardized annotations for dependency injection, stereotypes, and declarative services such as validation and scheduling.

Read more...

Webinar replay: Spring Boot - Simplifying Spring for Everyone

Speaker: Phil Webb

Modern systems are no longer the monolithic deployments that they once were. The promise of true 'service oriented architecture' is finally here, and systems are now being composed from small, discrete, self contained units. But with more applications to write, and more deployments to manage, are you looking for something to help ease the pain? Are you fed up with searching stackoverflow for copy-paste configuration, do you want to write apps that can 'just run'? Perhaps you are just starting out with Spring and want a quick way to learn the basics without manually downloading and installing half the Internet?

Read more...

Webinar replay: Taming Coupling & Cohesive Beasts with Modularity Patterns and Spring

Speaker: Param Rengaiah, Aspire Systems

By now you should have heard about coupling and cohesiveness. These concepts, and their third cousin, polymorphism, is what we as developers chase day-in and day-out. They tease us with reusability and the promise of comprehensiveness of our code. They entice us with promises of code quality and testability. They came in the form of "Object Oriented’ design, followed by GoF and SOLID Design Patterns, DDD, BDD.. but none of them delivered what they promised. Now, the new kids on the block are Functional Programming and Modularity Patterns.

Read more...

Webinar Replay: Getting Agile with Pivotal Tracker

Presenter: Davis W. Frank, Pivotal Labs

Slides: https://github.com/infews/2013.09.05.GettingAgileWithPivotalTracker

"Agile Software Development" is an ambiguous term. It's an umbrella term. It's a controversial term. But what does it really mean? The first principle of agile development is to keep feedback loops small to allow a team to make frequent, small corrections on the way to delivery. Pivotal Labs practices this every day. We coach our clients on how to re-view their problems and approach from first principles. We wrote Pivotal Tracker - the Agile project management app - to work the way we think. Come learn about tight feedback loops, how to use them in software, and how Pivotal Tracker can keep your backlog sane.

Read more...

This Week in Spring - Sept 24th 2013

Hello everyone! Pieter posting this on Josh Long's behalf here... this week the Spring and Cloud Foundry teams are at JavaOne talking to developers about Spring, Cloud Foundry, Hadoop and big data! Happily, our pretty new @GoPivotal booth has garnered a lot of attention!

I met Duke, too! I think the big guy was as happy to see me as I was him!

  1. Spring ninja Greg Turnquist put together a nice post on how to contribute to Spring Boot with a pull request. The article does ultimately talk about the processing sending a pull request, but most of it's a really great introduction to extending Spring Boot to suit a new use case (like JMS, which simply hadn't been added yet). This post also introduces some cool features in Spring Boot, if you haven't learned about it yet.
  2. Speaking of Spring Boot, check out this upcoming Spring Boot webinar featuring project co-lead Phil Webb!
  3. Rossen Stoyanchev put together a knock-out piece how to build web applications that use websockets, or Sock.js, and how to then layer STOMP on top of that for an easier messaging-style interaction between the browser and the service.
  4. Rossen also has an upcoming webinar on Oct 8th, Building WebSocket Browser Applications with Spring, showing off the best of his SpringOne2GX 2013 session.
  5. I encourage you to check out the upcoming webinar featuring James Williams on building big data applications with Spring, Spring XD and Hadoop! This is going to be an awesome talk. James has some killer examples and knows his stuff.
  6. In related news, I put together a quick post on my thoughts on Data Integration, Stream Processing and Spring XD.
  7. Jakub Kubrynski has put together a nice post on how to use load-time weaving to inject dependencies into objects not managed by the Spring container using a couple of different approaches.
  8. Nitin Kumar put together a nice look at Spring Integration, a lightweight approach.
  9. Tomás Lin, who says that he loves testing Grails applications with Spock, put together a great post on how to test with Spring Boot with Spock.
  10. Sometimes, you need to do RMI, and when you do, Spring has you covered!
  11. The BitwiseOR blog has a great post on how to use Spring Boot to build REST services, using Groovy no less! Win! I'm not sure if I agree with the conclusion, but whatever it takes for people to be able to use this to simplify development, it's a win! And, with really great posts like this, hopefully it won't be long at all before everyone's bootstrapping their development, too!
Read more...

Webinar: Building Big Data Applications with Hadoop & Spring

At Pivotal we are bringing two open source projects together -- Hadoop and the very rapid and widely used Spring java application development framework to help build Big Data Applications. While Hadoop is proving to be the defacto foundation for storing and processing data, real-world scenarios require much more. Millions of developers are already using Spring to create high performing, easily testable, reusable code without any lock-in. In this month's webinar James Williams will explore how Spring XD (Xtreme Data) is addressing Big Data Application needs including:

Read more...

Webinar: Building WebSocket Browser Applications with Spring

So, you've written a "Hello world!" WebSocket application or perhaps even a chat sample. You're able to exchange messages even in pre-Servlet 3.1 containers and pre-IE 10 browsers (that don't yet support WebSocket) thanks to the SockJS protocol and Spring's support for it. However a message is a blank page that can have any content. Whatever message format you choose, proprietary or standard, both client and server need to understand it as well as distinguish different kinds of messages. You need support for the publish-subscribe pattern central to messaging applications so you can broadcast messages to one or more subscribers. You need to incorporate security, validation, and so on. In short you need to build a real-world application. If you're used to web applications (and Spring MVC annotated controllers) you are familiar with the foundation that HTTP provides including URLs (nouns), HTTP methods (verbs), headers, parameters, and others. Imagine building an application without HTTP, just a socket. WebSocket gives you this brand new, exciting capability -- full duplex, two-way communication -- yet you no longer have an application-level protocol. Can an entire application be built around a single Endpoint class processing all messages, assuming a single WebSocket connection between browser and server? Join Rossen Stoyanchev as he demonstrates that, thankfully, the WebSocket protocol has a built-in sub-protocol mechanism.

Read more...

Webinar: Simplifying Spring with Spring Boot

Are you fed up with searching stackoverflow for copy-paste configuration, do you want to write apps that can ‘just run’? Perhaps you are just starting out with Spring and want a quick way to learn the basics without manually downloading and installing half the Internet?

In this webinar Phil Webb will demonstrate how Spring Boot can take you from zero to Spring with minimal fuss. We will look at how you can rapidly prototype Spring applications using Groovy, and how Spring Configuration in Java applications can be radically simpler. We will show how you can embed tomcat into your applications and turn a few lines of Java into a production ready, executable jar that is less than 8 Mb.

Read more...

Webinar Replay: Spring with Cucumber for Automation

Learn how Spring and Cucumber integrate to make test automation easier. Cucumber is a framework for Behavior-Driven-Development (BDD), a refinement of TDD (Test-Driven-Development). Its intent is to enable developers to write high-level use cases in plain text that can be verified by non-technical stakeholders, and turn them into executable tests, written in a language called Gherkin. Using Spring, Cucumber, WebDriver2, Hemant Joshi will show you how to use Spring & Cucumber to do BDD with elegance and joy.

Read more...