2012-11-12 11 views
14

探している私が見つかりました。dropwizard例を探していdropwizard例

  1. 1:nの関係のような顧客口座
  2. 少なくともフォームを使用したhtml GUI表現
  3. xmlの完全なcrudサポート

3人中2人がスタートになり、私によって「受け入れられる」ことになります。

+1

何*あなたは*この質問への回答を獲得しようとしたのですか? –

+3

私はそれが必要であると思うので、私は自分自身で回答を準備しています。誰も答えなければ、私はそれを提示するでしょう。 –

+1

これを解決できましたか? –

答えて

19

MultiBit Merchantプロジェクト(管理者、ストアおよびプラットフォーム)Dropwizardで行うものを取得する方法を示しデモコードの富を提供します。特に私のDropwzard projects

のいくつかを見てみましょう。また、新しいアプリケーションのための良いスタートポイントを提供するべきDropwizardを持つOpenIDの例もあります。

これらはすべてMITライセンスの下でのFOSSです。同様に良い例のように見えます

2

私は自分のDropwizard XML Bundleプロジェクトに例を書きました。それはH2データベースに格納されている海賊と船舶の1:Nの関係である:

  • 検証でカスタムJacksonMessageBodyProviderを使用するXMLの完全なCRUDサポート。
  • FreemarkerまたはMustacheテンプレートを使用してHTML guiを追加するのは簡単ではなく、標準のドキュメントに記載されています。

    7

    ヴォルフガング、

    は、Hibernateを使用した認証、設定とデータベースへのアクセスが使用されているexample Dropwizard applicationです。

    アプリケーションは、いくつかのチュートリアルで説明されている:

    そしてhereは、1つの認証済みのブックマークを格納することができる別の例として、ありますあなたREST APIを使用してデータにアクセスします。

    幸運。

    -1

    以下の手順に従います。

    1. ポンポンファイルに依存関係を追加

      <dependencies> 
      <dependency> 
          <groupId>com.yammer.dropwizard</groupId> 
          <artifactId>dropwizard-core</artifactId> 
          <version>0.6.2</version> 
      </dependency> 
      

    2. 設定クラスを作成します

      import com.yammer.dropwizard.config.Configuration; 
      public class BlogConfiguration extends Configuration{ 
      
      } 
      
    3. Serviceクラス

      を作成します。 10
      import com.yammer.dropwizard.Service; 
          import com.yammer.dropwizard.config.Bootstrap; 
          import com.yammer.dropwizard.config.Environment; 
      
          public class BlogService extends Service<BlogConfiguration> { 
      
          public static void main(String[] args) throws Exception { 
          new BlogService().run(new String[] { "server", 
          "C:\\LocalEnv\\Workspace\\dropwizarddemo\\configuration.yml" }); 
          } 
      
          @Override 
          public void initialize(Bootstrap<BlogConfiguration> bootstrap) { 
          bootstrap.setName("blog"); 
          } 
      
          @Override 
          public void run(BlogConfiguration configuration, 
          Environment environment) throws Exception { 
          environment.addResource(new IndexResource()); 
          } 
      
          } 
      

    注:現在のディレクトリ

     # HTTP-specific options. 
         http: 
    
         # The port on which the HTTP server listens for service requests. 
         port: 8079 
    
         # The port on which the HTTP server listens for administrative 
         # requests. 
         adminPort: 8179 
    
         # Maximum number of threads. 
         maxThreads: 100 
    
         # Minimum number of thread to keep alive. 
         minThreads: 10 
    

    4.書き込みインデックスリソースでconfiguration.ymlファイルの下に置きます。

     import java.util.ArrayList; 
        import java.util.Arrays; 
        import java.util.List; 
        import javax.ws.rs.GET; 
        import javax.ws.rs.Path; 
        import javax.ws.rs.Produces; 
        import javax.ws.rs.core.MediaType; 
    
    
        import com.yammer.metrics.annotation.Timed; 
    
        @Path("/") 
        public class IndexResource { 
    
        @GET 
        @Produces(value = MediaType.APPLICATION_JSON) 
        @Timed 
        public List<Blog> index() { 
        return Arrays.asList(new Blog("for Java Developers", 
        "http://stackoverflow.com/questions/13345693/looking-for-a-dropwizard- 
        example”)); 
        } 
    
    
        @Path("/service") 
    
    
        @GET 
        @Produces(value = MediaType.APPLICATION_JSON) 
        @Timed 
        public List<Users> users() { 
        List<Users> list = new ArrayList<Users>(); 
        list.add(new Users(25,"Sambhu","SA")); 
        list.add(new Users(35,"Amit","VP")); 
        list.add(new Users(45,"Sanket","AVP")); 
    
    
        return list; 
        } 
    
    
        } 
    
    桟橋サーバを起動します

    public class Users { 
    
    
    Integer id; 
    String name; 
    String designation; 
    
    public Users(Integer id, String name, String desination){ 
    this.id=id; 
    this.name=name; 
    this.designation=desination; 
    } 
    
    public Integer getId() { 
    return id; 
    } 
    public void setId(Integer id) { 
    this.id = id; 
    } 
    public String getName() { 
    return name; 
    } 
    public void setName(String name) { 
    this.name = name; 
    } 
    public String getDesignation() { 
    return designation; 
    } 
    public void setDesignation(String designation) { 
    this.designation = designation; 
    } 
    @Override 
    public String toString() { 
    return "Users [id=" + id + ", name=" + name + ", designation=" 
         + designation + "]"; 
    } 
    
  • 実行BlogServiceよう

  • 書き込みブログPOJOとユーザー

      を、ポートとローカルホストを打つなど http://localhost:8079/

  • 0

    このプロジェクトはGithubから試すことができます。

    Dropwizard:CRUD操作、HTMLビュー、ヘルスチェック

    https://github.com/HoldInArms/dropwizard-mssql-crud-example

    +0

    良い例ですが、上記のコードは古いバージョンのdropwizardを使用しているようです。 1.0.5のdropwizardバージョンでMysqlに移植された同じコード - https://github.com/rahulsh1/dropwizard-mysql-crud-example – Neo

    関連する問題