MCPcopy Index your code
hub / github.com/IBM/template-java-spring

github.com/IBM/template-java-spring @v1.0.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.3 ↗ · + Follow
736 symbols 1,863 edges 53 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README
<a href="https://cloud.ibm.com">
    <img src="https://landscape.cncf.io/logos/ibm-cloud-kcsp.svg" height="100" alt="IBM Cloud">
</a>







<a href="https://cloud.ibm.com">
<img src="https://img.shields.io/badge/IBM%20Cloud-powered-blue.svg" alt="IBM Cloud">
</a>
<a href="https://www.ibm.com/developerworks/learn/java/">
<img src="https://img.shields.io/badge/platform-java-lightgrey.svg?style=flat" alt="platform">
</a>
<img src="https://img.shields.io/badge/license-Apache2-blue.svg?style=flat" alt="Apache 2">

Java Spring microservice

In this sample application, you will create a basic Java web application using Spring. This provides a starting point for creating Java microservice applications running on Spring. It contains no default application code, but comes with standard best practices, including a health check and application metric monitoring.

Capabilities are provided through dependencies in the pom.xml file. The ports are set to the defaults of 8080 for http and 8443 for https and are exposed to the CLI in the cli-config.yml file. The ports are set in the pom.xml file and exposed to the CLI in the cli-config.yml file.

Steps

You can deploy this application to IBM Cloud or build it locally by cloning this repo first. Once your app is live, you can access the /health endpoint to build out your cloud native application.

Deploying

After you have created a new git repo from this git template, remember to rename the project. Edit settings.gradle and change the rootProject.name from the default name to the name you used to create the template.

Make sure you are logged into the IBM Cloud using the IBM Cloud CLI and have access to you development cluster. If you are using OpenShift make sure you have logged into OpenShift CLI on the command line.

```$bash npm i -g @garage-catalyst/ibm-garage-cloud-cli


Use the IBM Garage for Cloud CLI to register the GIT Repo with Jenkins 
```$bash
igc pipeline -n dev

Building Locally

To get started building this application locally, you can either run the application natively or use the IBM Cloud Developer Tools for containerization and easy deployment to IBM Cloud.

Native Application Development

To build and run an application: 1. ./gradlew build 2. ./gradlew bootRun

More Details

For more details on how to use this Starter Kit Template please review the IBM Garage for Cloud Developer Tools Developer Guide

Next Steps

License

This sample application is licensed under the Apache License, Version 2. Separate third-party code objects invoked within this code pattern are licensed by their respective providers pursuant to their own separate licenses. Contributions are subject to the Developer Certificate of Origin, Version 1.1 and the Apache License, Version 2.

Apache License FAQ

Periodically update from the template

Finally, the template components can be periodically updated by running the following:

./update-template.sh

Extension points exported contracts — how you extend this code

GreetingService (Interface)
(no doc) [5 implementers]
src/main/java/com/ibm/hello/service/GreetingService.java
RequestResponseLogger (Interface)
(no doc) [2 implementers]
src/main/java/com/ibm/cloud_garage/logging/RequestResponseLogger.java
LoggingContext (Interface)
(no doc) [2 implementers]
src/main/java/com/ibm/cloud_garage/logging/LoggingContext.java
SimpleFilter (Interface)
(no doc) [2 implementers]
src/main/java/com/ibm/cloud_garage/logging/inbound/SimpleFilter.java
ServiceNameConstants (Interface)
(no doc) [1 implementers]
src/main/java/com/ibm/hello/service/ServiceNameConstants.java

Core symbols most depended-on inside this repo

getHeaders
called by 16
src/main/java/com/ibm/cloud_garage/logging/RequestLoggingContext.java
getReader
called by 14
src/main/java/com/ibm/cloud_garage/logging/inbound/ResettableHttpServletRequest.java
equals
called by 13
src/main/java/com/ibm/cloud_garage/logging/RequestLoggingContext.java
getGreeting
called by 12
src/main/java/com/ibm/hello/service/GreetingService.java
getGreetingService
called by 11
src/main/java/com/ibm/hello/controller/HelloController.java
build
called by 10
src/main/java/com/ibm/cloud_garage/rest_template/RestTemplateBuilder.java
withUrl
called by 10
src/main/java/com/ibm/cloud_garage/swagger/SwaggerConfig.java
withHeaders
called by 10
src/main/java/com/ibm/cloud_garage/logging/RequestLoggingContext.java

Shape

Method 457
Class 271
Interface 7
Enum 1

Languages

Java100%

Modules by API surface

src/test/java/com/ibm/cloud_garage/logging/inbound/ResettableHttpServletRequestTest.java71 symbols
src/test/java/com/ibm/cloud_garage/rest_template/RestTemplateBuilderTest.java43 symbols
src/test/java/com/ibm/cloud_garage/logging/ResponseLoggingContextTest.java39 symbols
src/main/java/com/ibm/cloud_garage/swagger/SwaggerConfig.java39 symbols
src/test/java/com/ibm/cloud_garage/logging/RequestResponseLoggerImplTest.java37 symbols
src/test/java/com/ibm/cloud_garage/logging/RequestLoggingContextTest.java36 symbols
src/test/java/com/ibm/hello/controller/HelloControllerTest.java29 symbols
src/main/java/com/ibm/cloud_garage/rest_template/RestTemplateProperties.java28 symbols
src/test/java/com/ibm/cloud_garage/http/HttpConnectionKeepAliveStrategyTest.java27 symbols
src/test/java/com/ibm/cloud_garage/rest_template/SimpleRestTemplatePropertiesTest.java26 symbols
src/test/java/com/ibm/cloud_garage/logging/inbound/HttpRequestWrapperTest.java24 symbols
src/test/java/com/ibm/cloud_garage/logging/inbound/ClientHttpResponseWrapperTest.java22 symbols

For agents

$ claude mcp add template-java-spring \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact