寻找一个我发现的dropwizard示例:
https://github.com/codahale/dropwizard/tree/master/dropwizard-example
但我对一个更完整的例子至少感兴趣:
三分之二将是一个开始,我将获得“接受”。
答案 0 :(得分:19)
看看我的一些Dropwzard projects
特别是MultiBit Merchant项目(管理员,商店和平台)将为您提供丰富的演示代码,展示如何在Dropwizard中完成工作。还有一个OpenID with Dropwizard的例子,它应该为新的应用程序提供一个很好的启动点。
根据麻省理工学院的许可,他们都是FOSS。
答案 1 :(得分:7)
沃尔夫冈,
这里是example Dropwizard application,其中使用了使用Hibernate的身份验证,配置和数据库访问。
在几个教程中讨论了该应用程序:
而here是另一个例子,可以为经过身份验证的用户存储书签,并通过REST API访问数据。
祝你好运。答案 2 :(得分:4)
这看起来也是一个很好的例子:https://github.com/spinscale/dropwizard-blog-sample
答案 3 :(得分:2)
我在Dropwizard XML Bundle项目中写了一个例子:
https://github.com/yunspace/dropwizard-xml/tree/master/dropwizard-xml-example
它可能与您正在寻找的最接近。它有:
通过Freemarker或Mustache模板添加HTML gui应该是非常简单的,并且在标准文档中有所涉及。
答案 4 :(得分:2)
希望dropwizard具有身份验证的好例子。
Dropwizard:身份验证,配置和HTTPS https://dzone.com/articles/getting-started-dropwizard-0
答案 5 :(得分:0)
你可以从Github尝试这个项目。
Dropwizard:CRUD操作,HTML视图,Healthcheck
答案 6 :(得分:-2)
按照以下步骤操作。
在pom文件中添加依赖项
<dependencies>
<dependency>
<groupId>com.yammer.dropwizard</groupId>
<artifactId>dropwizard-core</artifactId>
<version>0.6.2</version>
</dependency>
创建配置类
import com.yammer.dropwizard.config.Configuration;
public class BlogConfiguration extends Configuration{
}
创建服务类
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());
}
}
注意:在当前目录
中放置configuration.yml文件 # 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。写索引资源。
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;
}
}
为博客和用户编写POJO,如
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,它将启动Jetty服务器并使用端口命中localhost http://localhost:8079/