REST API Using Spring and Hibernate2. Spring FrameworkMake the following changes to the Maven web application we created in the previous step: 1. Add the following dependencies:
If you want to produce/consume resources in XML format, replace the jackson-databind dependency with com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.9.6. 2. Add the following to web.xml:
This specifies a Spring servlet DispatcherServlet which will be loaded when the web application is started (notice the <load-on-startup>), and this servlet is responsible for initializing the Spring servlet context, i.e. creating all the beans specified in a bean configuration file. The default name for the bean configuration file is <dispatcher-servlet-name>-servlet.xml under the WEB-INF folder. In our case, the name of the DispatcherServlet is springrest (notice the <servlet-name>) so the bean configuration file is springrest-servlet.xml. During operation DispatcherServlet also serves as the front controller that dispatches requests to the proper controller based on controller URL mapping. 3. Create the Spring bean configuration file springrest-servlet.xml under WEB-INF as follows:
<mvc:annotation-driven> enables request dispatching to @Controller among some other things; it also includes a Jackson converter that automatically converts between Java and JSON objects . <context:component-scan> finds all the annotated beans in springrest.api and its sub-packages. 4. Add the following code to the project:
Run the project and use a browser to open the URL http://localhost:8080/springrest/api/test - you should see a JSON response like the following: {"id":1,"username":"cysun","password":null,"enabled":true,"roles":[{"id":1,"name":"Admin"}]} |