2017-09-19 2 views
1

Ich habe ein Java-Webprojekt in IntelliJ IDEA entwickelt - es besteht aus einigen Java-Klassen für die Logik, einigen JSP-Dateien für die webbasierte Benutzeroberfläche und einem MySQL Datenbank - alles auf meinem eigenen Computer gehostet (MySQL-Server für die Datenbank und Apache Tomcat 9 für die Web-App).Ein Java-Webprojekt auf einem physischen Server implementieren

Wie würde ich dieses Projekt, einschließlich der Datenbank, exportieren, damit ich einen dedizierten Rechner einrichten kann (sagen wir einen Desktop, auf dem Ubuntu Server oder Debian oder vielleicht sogar ein Raspberry Pi läuft)?

Ich habe etwas darüber recherchiert, und was ich gefunden habe ist, dass ich eine WAR-Datei exportieren muss, aber ich kann nicht scheinen, diese Option in IntelliJ zu finden - alle Anleitungen, die ich fand, waren konzentriert Finsternis. Ich habe auch keine Idee, was ich mit der Datenbank machen soll.

+1

für IntelliJ WAR-diese Frage siehe Datei: https://stackoverflow.com/questions/38562829/where-is-the-war-file-built-in-intellij-idea-located und für MySQL haben ein Blick auf diese Frage: https://StackOverflow.com/Questions/13566735/How-to-Export-Mysql-schema-with-Data – DevDio

Antwort

1

Um eine dedizierte Maschine für Ihre Anwendung einzurichten, müssen Sie den Webserver (z. B. Tomcat) und den MySQL-Server auf einer Maschine installieren.

Stellen Sie sicher, dass die MySQL-Serverdetails beim Erstellen einer Datenbankverbindung in Ihrer WEB-Anwendung nicht fest codiert sein sollten. Ich würde vorschlagen, dass Sie die Eigenschaftendatei verwenden, um Datenbankdetails zu speichern und sie für Datenbankverbindungen zu verwenden.

  1. Klicken Sie auf Konfigurationen bearbeiten: Ex.database.properties

    mks.dynamicPool.config=\ 
    url=jdbc:jtds:sqlserver://[yourmachinehost]:[SQL Server port]/[yourdatabase name];useCursors=true,\ 
    driver=mks.frame.sql.jdbc.mssql.Driver,\ 
    initialCapacity=5,\ 
    maxCapacity=100,\ 
    testTable=VersionIdentity 
    mks.dbUser=user1 
    mks.dbPassword=user1 
    
    1. Um WAR-Datei von Ihnen Anwendung folgen Sie den Schritten zu erstellen.

    2. Klicken Sie auf Deployment und fügen Sie Ihr Artefakt hinzu.
    3. Wenden Sie diese Änderungen an.
    4. Sie können ein Build Artifacts unter Build sehen.
    5. Klicken Sie auf Build Artifacts und es wird ein Krieg/Jar zum jeweiligen Ordner erstellt.

      :
  2. Um Ihre Anwendung in Tomcatbediener,

    • Copy/Extrahieren Ihre WAR-Datei in [tomcatInstallDir]/webapps
  3. So importieren und exportieren Sie Ihre Datenbank bereitstellen

    Ich hoffe, Sie haben MYSQL Server in Ihren Pfad gesetzt (wenn nicht, dann setzen Sie den Befehl: set path = c: \ wamp \ bin \ mysql \ mysql5.1.36 \ bin)

    i.Zum Exportieren der Datenbank kann folgender Befehl verwendet werden:

    mysqldump -u YourUser -p YourDatabaseName > dumpfilename.sql 
    
    Note: This command should prompt you for password and with correct password it would export the database. 
    

    ii. Zur Wiederherstellung/Import oben exportierte Datenbank verwenden folgenden Befehl ein:

    mysql -u YourUser -p YourDatabaseName < dumpfilename.sql 
    
  4. Aktualisieren Sie Ihre database.properties mit Ihrem neuen Datenbank enthält detaillierte Informationen Datei und die Tomcatbediener starten.

0

Installieren Sie auf Ihrem dedizierten Server MySQL und Tomcat. Importieren Sie Ihre Datenbank in SQL-Skript und exportieren Sie sie in dedizierten Server.

Nach diesem Einsatz bauen die Automatisierungs-Tools, Maven oder gradle zum Beispiel Krieg Paket zu erstellen und bereitstellen es

Haben Sie einige Web verwenden (Kopie ../tomcat/webapp Verzeichnis) -basiertes Framework?

+0

Ich verwende keine speziellen Frameworks - alle meine Front-End ist einige (sehr unordentlich codiert, ich könnte hinzufügen) JSP-Dateien, und der Rest ist nur Java-Klassen und ein paar externe Bibliotheken (wie der MySQL-Connector und JavaMail). –

+0

Kopieren Sie dann alle Projektdateien, die Sie haben, in ../tomcat/webapps/firstwebapp/* – iiylll

Verwandte Themen