This Week in Spring - March 24th, 2015

Engineering | Josh Long | March 24, 2015 | ...

Welcome to another installment of This Week in Spring! This week, I'm in São Paulo, Brazil, where I presented a workshop on building cloud-native applications - specifically microservices - with Spring Boot, Spring Cloud and Cloud Foundry (via Pivotal Web Services).

Multiple UI Applications and a Gateway: Single Page Application with Spring and Angular JS Part VI

Engineering | Dave Syer | March 23, 2015 | ...

Note: the source code and test for this blog continue to evolve, but the changes to the text are not being maintained here. Please see the tutorial version for the most up to date content.

In this article we continue our discussion of how to use Spring Security with Angular JS in a "single page application". Here we show how to use Spring Session together with Spring Cloud to combine the features of the systems we built in parts II and IV, and actually end up building 3 single page applications with quite different responsibilities. The aim is to build a Gateway (like in part IV) that is used not only for API resources but also to load the UI from a backend server. We simplify the token-wrangling bits of part II by using the Gateway to pass through the authentication to the backends. Then we extend the system to show how we can make local, granular access decisions in the backends, while still controlling identity and authentication at the Gateway. This is a very powerful model for building…

Spring Data Release Train Fowler Goes GA

Releases | Oliver Drotbohm | March 23, 2015 | ...

On behalf of the Spring Data team I'd like to announce the availability of the GA version of Spring Data release train Fowler.The release ships almost 400 tickets solved.

The most core theme of the train is advanced support for Java 8: the MongoDB and JPA modules now support Streams as return type for repository methods and we now support non-time-zoned JDK 8 date/time types our of the box and also integrate with the Java 7 back-port of that API.

Spring Data MongoDB ships with compatibility for the 3.0 version of the server and the corresponding driver version. Spring Data Gemfire now supports…

Using Google Protocol Buffers with Spring MVC-based REST Services

Engineering | Josh Long | March 22, 2015 | ...

This week I'm in São Paulo, Brazil presenting at QCon SP. I had an interesting discussion with someone who loves Spring's REST stack, but wondered if there was something more efficient than plain-ol' JSON. Indeed, there is! I often get asked about Spring's support for high-speed binary based encoding of messages. Spring's long supported RPC encoding with the likes of Hessian, Burlap, etc., and Spring Framework 4.1 introduced support for Google Protocol Buffers which can be used with REST services as well.

From the Google Protocol Buffer website:

Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages...

Spring Boot Support in Spring Tool Suite 3.6.4

Engineering | Kris De Volder | March 18, 2015 | ...

Spring Boot STS Tutorial

Spring Tool Suite 3.6.4 was just released last week. This blog post is a tutorial demonstrating some of the new features STS provides to create and work with Spring Boot applications.

In this tutorial you'll learn how to:

  • create a Simple Spring Boot Application with STS
  • launch and debug your boot application from STS
  • use the new STS Properties editor to edit configuration properties.
  • use @ConfigurationProperties in your code to get the same editor support for your own configuration properties.

Creating a Boot App

We use the "New Spring Starter" wizard to create a…

SpringOne2GX 2014 Replay: Apps + Data + Cloud: What Does It All Mean?

News | Pieter Humphrey | March 17, 2015 | ...

Recorded at SpringOne2GX 2014.

Speaker: Matt Stine

Developing for the Cloud Track

Slides: http://www.slideshare.net/SpringCentral/apps-data-cloud-what-does-it-all-mean

Big Data. Fast Data. NoSQL. NewSQL. We've experienced something of a renaissance in the storage and processing of data in the last decade of computing after years of "Relational Winter." We're now entering into the next phase of this evolution: the convergence of data and the cloud. Much of this revolution has arrived on the coattails of data fabrics designed for horizontal scale-out on commodity hardware. Cloud platforms, especially PaaS platforms like Cloud Foundry, allow us to provision the requisite virtual hardware on-demand, removing the last mile of overhead in assembling scale-out data platforms. Coupling PaaS with microservice architectures and polyglot persistence allows developers to design systems utilizing stores uniquely designed for specific write, process, and query patterns. Leveraging the Lambda Architecture combination of real-time analytics platforms coupled with scale-out batch processing systems like Hadoop give us the ability to always ask questions of all of our data. In this talk will look at various Spring projects that allow us, coupled with Cloud Foundry, to uniquely position ourselves to take advantage of this convergence: Spring Boot: the opinionated framework for microservice development Spring Data: the access layer for SQL, NoSQL, NewSQL, and Hadoop Reactor: the foundation for reactive fast data applications on the JVM Spring XD: the platform for data ingest, real-time analytics, batch processing, and data export We'll tie all of these projects together in a suite of applications running on Cloud Foundry and Hadoop, closing the Apps/Data/Cloud loop.

Learn more about Cloud Foundry: http://www.cloudfoundry.org

Learn more about Spring XD: http://projects.spring.io/spring-xd

Learn more about Spring Data: http://projects.spring.io/spring-data

SpringOne2GX 2014 Replay: Become a data-driven Organization with Machine Learning

News | Pieter Humphrey | March 17, 2015 | ...

Recorded at SpringOne2GX 2014.

Speaker: Peter Harrington

Big Data Track

Slides: http://www.slideshare.net/SpringCentral/spring-one2gx-2014peterharrington

Does your organization collect data? Lots of data? Does your organization make use of all that data they have collected? In this session you will learn what you do with machine learning, and what are the building blocks for an application that uses machine learning. This session will show you how to go from data you have collected to creating predictions for customers. You will learn how valuable insights into your data can be gleaned while building the code to make predictions.

SpringOne2GX 2014 Replay: Building a Recommendation Engine with Spring and Hadoop

News | Pieter Humphrey | March 17, 2015 | ...

Recorded at SpringOne2GX 2014.

Speaker: Michael Minella

Big Data Track

Slides: http://www.slideshare.net/SpringCentral/building-a-recommendation-engine-with-spring-and-hadoop

The Amazon’s and Google’s of the world have had Ph.D.’s locked up in back rooms for years creating algorithms to get you to click on things and subsequently buy stuff. One of the big things that those smart people have been working on are recommendation engines. Today, a recommendation engine isn’t something that only the Amazon’s of the world can have. With an hour, and a handful of open source tools, we’ll build a recommendation engine based on the data from the website we probably spend the most time on…StackOverflow. We’ll use Spring XD and Spring Batch to orchestrate the full lifecycle of Hadoop processing (ingest, process, export) and use Apache Mahout to provide us with the recommendation processing. A basic understanding of Hadoop concepts (what Map/Reduce is) and Spring (basic D/I configuration) is expected for this talk.

Learn more about Spring Batch: http://projects.spring.io/spring-batch

SpringOne2GX 2014 Replay: Asychronous design with Spring and RTI: 1M events per second

News | Pieter Humphrey | March 17, 2015 | ...

Recorded at SpringOne2GX 2014.

Speaker: Stuart Williams

Big Data Track

Slides: http://www.slideshare.net/SpringCentral/williams-1m-events

An application designer usually has to choose where to trade flexibility for specificity (and thus usually performance); knowing when and where to do so is an art and requires experience. This talk will share over a decades worth of experience making these decisions and the learnings from developing Pivotal's successful Real Time Intelligence (RTI) product using the latest versions of Spring projects: Integration, Data, Boot, MVC/REST and XD. A walk through the RTI architecture will provide the base for an explanation about how Spring performs at hundreds (and millions) of events/operations per second and the techniques that you can use right now in your own Spring applications to minimise resource utilisation and gain performance.

Webinar: Smarter Service-to-Service Invocations with Spring Cloud

News | Pieter Humphrey | March 17, 2015 | ...

Speaker: Josh Long

Spring Cloud 1.0 is here! It offers a powerful way to create and consume microservices. As you introduce new services, you introduce integration problems: services can be shaky, they can disappear and - as they're often exposed over HTTP - they require a bit more footwork than in-process method invocations. In this webinar, we'll focus specifically on how Spring Cloud integrates service registration (e.g.: Eureka, Consul, or Zookeeper), declarative REST clients (with Netflix's Feign), reactive programming and the circuit breaker pattern with Hystrix to support easy, robust service-to-service invocations. This is a deep dive on how to make connect and consume microservices, and is a natural next step after my introduction to building microservices with Spring Cloud.

Tuesday, April 21st, 2015 2:00PM GMT (London GMT) Register

Tuesday, April 21st, 2015 10:00AM PDT (San Francisco GMT-07:00) Register

 

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all