Spanner0jjm
Spanner0jjm

Reputation: 331

How to create a Spring web app on a server

Firstly, please excuse my horrendously general question, as my understanding of Spring is very limited, but I will expalin what I want to achieve, and hopefully someone can point me in the right direction.

I have an application that retrieves some information from some source and updates a database. I'd like to put this program on a Tomcat server, so that the application is run every day.

I'm very new to Spring, and have spent the last few days completing some basic tutorials to display Hello World! in a broswer.

However, all of the tutorials I have found relate to Controllers for URLs, which, as far as I understand, is not what I want, as my application will not have a URL and there will be nothing to display, I just want the application to "hidden" somewhere on the server, and to execute daily.

I know this is a very general question, and as I said my knowledge of Spring is next to non-existent, so I'd appreciate it if someone could point me in the right direction, I'll happily do research if I just knew what to look for.

Thanks in advance!

Upvotes: 0

Views: 494

Answers (3)

Yserbius
Yserbius

Reputation: 1414

Spring is a very frustrating framework to learn because of all the various versions and tools out there.

Spring Boot is usually the starting point for people since it creates an executable self-contained JAR with embeded Tomcat server.

If you want to run with your own Tomcat instance, you need to look into creating a WAR/EAR file, which is an archive with a directory named WEB-INF that contains all of your Tomcat XML configurations.

Turn your Jar into a War

One of the simplest ways to start is to use Maven, add the WAR plugin to your pom.xml file, then webapp/WEB-INF directory to your project and place the web.xml config file in it.

Create and deploy web apps on Tomcat

Upvotes: 0

Antoine Gillet
Antoine Gillet

Reputation: 26

I'd like to put this program on a Tomcat server, so that the application is run every day.

Seems to me that you don't really need Tomcat or Spring.

Why not just install your Java app on a UNIX server and have it run every day with cron ?

Upvotes: 0

LazerBanana
LazerBanana

Reputation: 7211

I would suggest using Spring Boot quite easy to start with and does all the magic for you.

There are few tutorials how to start and what you will need.

You can have a jar that will run on embedded Tomcat server provided by spring boot, or you can convert it then to a war/ear file and deploy it on External Tomcat if you wish (doesn't need to be tomcat either). You just need a deployable artefact. In this case a war or ear.

Difrence between jar, war, ear

if you then wish to convert it: Convert a jar into a war

Deploying Spring boot apps on External servers

All the documentation you can find on Spring guides

Upvotes: 1

Related Questions