Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

RapidClipse erzeugt automatisch eine Standard-Projektstruktur bestehend aus den 6 Hauptbereichen (Packages)

  • Entities - Liste der für das Projekt angelegten Entities. Die Bezeichnung des Entities muss eindeutig sein. Entities lassen sich auch in Packages gruppieren. In unterschiedlichen Packages ist die Verwendung von Entities mit derselben Bezeichnung jedoch möglich und unproblematisch, da diese über den Packagenamen eindeutig angesprochen werden können.
  • Data Access - Liste der für das Projekt angelegten Data Access Objekte, bzw. Klassen. Für jedes Entity existiert i.d.R. ein entsprechendes Data Access Objekt (DAO), das für den Zugriff auf die angebundene Datenquelle zuständig ist.
  • Business Objects - In diesem Bereich implementieren Sie Ihre individuelle Anwendungslogik.  
  • User Interface - Bereich für das Anlegen von Oberflächen (Views). 
  • Themes - Hier werden die SCSS-Dateien angelegt, mit denen das Theme der Anwendung definiert wird.
  • Resources - Hier können sämtliche Dateien gespeichert werden, auf die die Anwendung zur Laufzeit zugreifen kann, u.a. Bilder und Sprachdateien für die Internationalisierung einer Anwendung.

Hinweis: 
  • Innerhalb dieser Standard-Packes können Sie bei Bedarf weitere Packages anlegen um Ihr Projekt zu strukturieren. Sie können jedoch auch von dieser Standard-Struktur abweichen und Ihr Projekt mit dem Standard Eclipse Project Explorer komplett selber strukturieren.

Generierte Dateien

  • Projectname
    • JRE System Library - Dateien der Java Runtime Environment.
    • Maven Dependencies - Benötigte Bibliotheken, die automatisch vom Maven Repository heruntergeladen und in das RapidClipse Projekt eingebunden werden.
    • ehcache.xml - EhCache Konfigurations-Datei. RapidClipse verwendet EhCache standardmäßig als Second-Level Cache für Hibernate, um Datenbankzugriffe via Hibernate zu beschleunigen. 
    • log4j.properties - Log4J Konfigurations-Datei. RapidClipse verwendet Log4J wird standardmäßig zum Loggen von Anwendungsmeldungen. 

      log4j.rootLogger=INFO, stdout
      log4j.logger.deng=INFO
      
      log4j.logger.net.sf.ehcache=DEBUG 
      log4j.logger.net.sf.ehcache.config=DEBUG 
      log4j.logger.net.sf.ehcache.distribution=DEBUG 
      log4j.logger.net.sf.ehcache.code=DEBUG 
      
      log4j.appender.stdout=org.apache.log4j.ConsoleAppender
      log4j.appender.stdout.Target=System.out
      log4j.appender.stdout.ImmediateFlush=true
      log4j.appender.stdout.Threshold=debug
      log4j.appender.stdout.Append=true
      log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
      log4j.appender.stdout.layout.conversionPattern=%m%n
    • persistence.xml - JPA Konfigurations-Datei, welche u.a. Hibernate als JPA Provider festlegt.

      <?xml version="1.0" encoding="UTF-8"?>
      <persistence version="2.1"
      	xmlns="http://xmlns.jcp.org/xml/ns/persistence"
      	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      	xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
      	<persistence-unit name="examples">
      		<provider>
      			org.hibernate.jpa.HibernatePersistenceProvider
      		</provider>
      		<class>com.company.examples.entities.Automaker</class>
      		<class>com.company.examples.entities.Carmodel</class>
      		<class>com.company.examples.entities.Extra</class>
      		<class>com.company.examples.entities.Car</class>
      		<properties>
      			<property name="hibernate.cache.use_second_level_cache"
      				value="true" />
      			<property name="hibernate.cache.use_query_cache"
      				value="true" />
      			<property name="hibernate.cache.region.factory_class"
      				value="org.hibernate.cache.ehcache.EhCacheRegionFactory" />
      			<property name="javax.persistence.sharedCache.mode"
      				value="DISABLE_SELECTIVE" />
      			<property name="hibernate.archive.autodetection"
      				value="class, hbm" />
      			<property name="hibernate.show_sql" value="false" />
      			<property name="hibernate.hbm2ddl.auto" value="validate" />
      			<property name="hibernate.transaction.auto_close_session"
      				value="false" />
      			<property name="hibernate.dialect"
      				value="org.hibernate.dialect.H2Dialect" />
      			<property name="javax.persistence.jdbc.driver"
      				value="org.h2.Driver" />
      			<property name="javax.persistence.jdbc.url"
      				value="jdbc:h2:tcp://localhost:5435/northwind;IFEXISTS=TRUE" />
      			<property name="javax.persistence.jdbc.user" value="sa" />
      			<property name="javax.persistence.jdbc.password" value="" />
      		</properties>
      	</persistence-unit>
      </persistence>
    • pom.xml - Maven Konfigurations-Datei. Hier werden Abhängigkeiten angegeben, die das RapidClipse Projekt zu anderen Bibliotheken hat.

      <project xmlns="http://maven.apache.org/POM/4.0.0"
      	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      	<modelVersion>4.0.0</modelVersion>
      	<groupId>com.company</groupId>
      	<artifactId>ecample</artifactId>
      	<packaging>war</packaging>
      	<name>Ecample</name>
      	<version>0.1.0-SNAPSHOT</version>
      	<build>
      		<resources>
      			<resource>
      				<directory>src</directory>
      				<excludes>
      					<exclude>**/*.java</exclude>
      					<exclude>**/*.ui.xml</exclude>
      				</excludes>
      			</resource>
      		</resources>
      		<sourceDirectory>src</sourceDirectory>
      		<plugins>
      			<plugin>
      				<artifactId>maven-compiler-plugin</artifactId>
      				<version>3.3</version>
      				<configuration>
      					<source>1.8</source>
      					<target>1.8</target>
      				</configuration>
      			</plugin>
      			<plugin>
      				<artifactId>maven-war-plugin</artifactId>
      				<version>2.6</version>
      				<configuration>
      					<warSourceDirectory>WebContent</warSourceDirectory>
      					<failOnMissingWebXml>false</failOnMissingWebXml>
      					<warName>${project.name}</warName>
      				</configuration>
      			</plugin>
      		</plugins>
      	</build>
      	<repositories>
      		<repository>
      			<id>vaadin-addons</id>
      			<url>http://maven.vaadin.com/vaadin-addons</url>
      		</repository>
      	</repositories>
      	<dependencies>
      		<dependency>
      			<groupId>com.xdev-software</groupId>
      			<artifactId>xdev-server-core</artifactId>
      			<version>1.2.0</version>
      		</dependency>
      		<dependency>
      			<groupId>com.xdev-software</groupId>
      			<artifactId>xdev-server-ui</artifactId>
      			<version>1.2.0</version>
      		</dependency>
      		<dependency>
      			<groupId>com.xdev-software</groupId>
      			<artifactId>xdev-server-aa</artifactId>
      			<version>1.2.0</version>
      		</dependency>
      		<dependency>
      			<groupId>com.xdev-software</groupId>
      			<artifactId>xdev-server-aa-ui</artifactId>
      			<version>1.2.0</version>
      		</dependency>
      	</dependencies>
      	<properties>
      		<project.build.sourceEncoding>
      			UTF-8
      		</project.build.sourceEncoding>
      	</properties>
      </project>
    • web.xml - Konfigurations-Datei über die die Anwendung in den Servlet-Container als Web-Applikation eigebunden wird. 

      <?xml version="1.0" encoding="UTF-8"?>
      <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
        <display-name>Ecample</display-name>
        <welcome-file-list>
          <welcome-file>index.html</welcome-file>
          <welcome-file>index.htm</welcome-file>
          <welcome-file>index.jsp</welcome-file>
          <welcome-file>default.html</welcome-file>
          <welcome-file>default.htm</welcome-file>
          <welcome-file>default.jsp</welcome-file>
        </welcome-file-list>
      </web-app>
  • User Interface
    • MainUI.java 

    • MainView.java - Standardmäßig von RapidClipse angelegte View. Die Bezeichnung MainView kann jederzeit geändert werden.

    • Servlet.java - Vaadin Konfigurations-Datei.

      package com.company.example.ui;
      
      import javax.servlet.annotation.WebServlet;
      import com.vaadin.annotations.VaadinServletConfiguration;
      import com.xdev.communication.XdevServlet;
      
      @WebServlet(value = "/*", asyncSupported = true)
      @VaadinServletConfiguration(productionMode = false, ui = MainUI.class)
      public class Servlet extends XdevServlet {
      	public Servlet() {
      		super();
      	}
      }
  • Themes
    • Projectname - Enthält die für das verwendete Theme benötigten SCSS- und CSS-Dateien.

  • No labels