Spring configuration using Java annotations - spring

I have started working on an inventory management system (web application) using Spring Framework 3.1.1** and would like to configure Spring Framework using Java annotations. I searched Google, but I could not find a suitable example showing how to configure Spring Framework using Java annotations in a web application. Where is there a proper example or tutorial?

Spring Framework references are comprehensive. Refer to the Spring reference material, 3.11 Java-based container configuration.

Another option to consider is to use Java based configuration. It is more readable, and is easier than annotations.
Spring Documentation
Simple Example using Java based configuration

Related

Using 'feign clients' without springboot is possible?

My framework is spring framework. core version is 4.3.16.RELEASE.
Not using springboot. It's one of the legacy project.
And I wanna know what can I use the feign client without springboot.
Is this possible? and where can I found document about that.
thanks for your help :)
Yes, it's possible. You can find the documentation on their Github page.
Feign wasn't integrated with Spring initially. There is another wrapper library called Spring Cloud OpenFeign, and with it, you can use Feign in Spring Boot & Cloud applications more convenient (eg., you can use Spring's #RequestMapping annotation instead of default Feign's #RequestLine).

Convert project from Spring framework to Spring boot

I have a set of projects in Spring framework and I have to Find the ones which can be converted to Spring boot.
Is there anything that is related to Spring framework and cannot be converted to spring boot ? In my research, I Could not Find something like that.
But does anyone know something, like a dependency, which would force the project to stay in Spring framework ?
Spring Boot uses the Spring Framework as a foundation and improvises on it. It simplifies Spring dependencies and runs applications straight from a command line. Spring Boot provides several features to help manage enterprise applications easily. Spring Boot is not a replacement for the Spring, but it’s a tool for working faster and easier on Spring applications. It simplifies much of the architecture by adding a layer that helps automate configuration and deployment while making it easier to add new features.
Most of the changes for migrating Spring Framework application to Spring Boot are related to configurations.This migration will have minimal impact on the application code or other custom components.Spring Boot brings a number of advantages to the development.
It simplifies Spring dependencies by taking the opinionated view.
Spring Boot provides a preconfigured set of technologies/framework to reduces error-prone configuration so we as a developer focused on building our business logic and not thinking of project setup.
You really don’t need those big XML configurations for your project.
Embed Tomcat, Jetty or Undertow directly.
Provide opinionated Maven POM to simplify your configurations.
Application metrics and health check using actuator module.
Externalization of the configuration files.
Good to refer this for migrating from Spring to Spring Boot application: https://www.javadevjournal.com/spring-boot/migrating-from-spring-to-spring-boot/

BPMN for spring boot 2

We have started new project on spring stack and using latest versions. But we have workflow requirement and I used activiti in past. But as I see there is no spring boot 2 support for activiti and camunda. Can anybody suggest which BPM is best that can be integrated with spring boot 2.
You will find a bunch of Spring Boot 2 starters in the Flowable github repo.
The documentation explains step-by-step how to create a BPM enabled Spring Boot application. There is also the blog post The road to Spring Boot 2.0 that the improved support for Flowable within Spring Boot as part of the Flowable 6.3.0 release.
You ask for suggestions on which BPM is best. Well, I cannot be objective since I am part of the Flowable Team, but I can say that our Spring Boot implementation is pretty neat:
All engines are supported (BPMN, CMMN, DMN), both embedded and exposing their respective REST APIs.
There is an automatic configuration of Spring Security to use the Flowable IDM engine (in case no other custom security is configured).
There is no "EE" version of the starter. Flowable provides Spring Boot 2 support 100% Open Source.
The Spring Actuator integration is quite powerful.
Did I mention Open Source? ;-)
In order to get the all engines you would need to use the flowable-spring-boot-starter(-rest) dependency. The (-rest) needs to be used if you want the Flowable REST APIs to be automatically configured.
There is also the option to run the BPMN, CMMN or DMN engines in standalone mode. For that you would need one of the following dependencies:
flowable-spring-boot-starter-process(-rest)
flowable-spring-boot-starter-cmmn(-rest)
flowable-spring-boot-starter-dmn(-rest)
So, compare for yourself, but for me, it's pretty clear and of course I am open to discussion.
The Activiti is working on Activiti Cloud fully based on Spring Boot 2 and Spring Cloud Finchley (targeting kubernetes deployments, but it can be used outside kubernetes if that is not your thing) if you are looking for a BPMN runtime for Cloud Native applications. We are working hard on releasing the first Beta1 release at the moment, and we will very welcome feedback about it. Hope this helps.
If you use the camunda-bpm-spring-boot-starter you can write self contained services running camunda process engine with spring boot 2.

How to set up Spring multi maven module using spring boot

I would like to evolve my Spring application with a better architecture. The technologies I'm using are : spring portfolio ( spring mvc, spring test, spring Web, spring core, spring rest...)
Today I'm using packaging to structure the different layers of my application: models, services, api and of course web where I have my controllers.
I would like to know how can I use the power of spring boot to make a multi module maven architecture with an xml spring configuration for a Web application. I read that spring boot have an embedded tomcat and since I'm using eclipse with a separate tomcat server I would like to deploy my application on it and I think that this can create a problem.
I already found some links on github with this type of projects most of them are not elaboring an architecture of a Web application and use a class for spring configuration with the embedded tomcat that spring boot offers.
Thank you
Ps: sorry for my bad English
What you mean by multi module. If you want to build your jar for multiple environment you can use maven profile for it. Spring boot is nothing but a spring project which ease the configurations for you.
Regarding deployment to your own server, you have to convert the jar to war. Read "What about the Java EE Application Server" section of below link.
https://spring.io/blog/2014/03/07/deploying-spring-boot-applications

How to integrate Cache2k caching with Spring MVC 4?

I'm building a new Spring mvc project and I'm quite bit impressed to see the performance benchmark of Cache2K. Hoever, I couldn't find any article on how to configure it with the current Spring MVC 4.2.4 and Java 1.8
It'll be a great help if somebody would help me with this.
P.P. - I'm using JavaConfig with complete annotation support
cache2k is integrated well with Spring and Spring Boot. See the documentation section in cache2k User Guide - Spring Framework

Resources