Skip to content

Instantly share code, notes, and snippets.

View javaeeeee's full-sized avatar

Dmitry Noranovich javaeeeee

View GitHub Profile
@javaeeeee
javaeeeee / test-config.yml
Created October 29, 2015 09:57
Dropwizard configuration file for testing
## YAML Template.
---
password: p@ssw0rd
#Server configuration.
server:
applicationConnectors:
- type: http
port: 8080
- type: https
@javaeeeee
javaeeeee / config.yml
Created November 6, 2015 12:51
Database configuration for a Dropwizard project
# Database settings.
database:
# the name of the JDBC driver, mysql in our case
driverClass: com.mysql.jdbc.Driver
# the username
user: javaeeeee
# the password
password: 1
# the JDBC URL; the database is called DWGettingStarted
url: jdbc:mysql://localhost:3306/DWGettingStarted
@javaeeeee
javaeeeee / pom.xml
Last active November 10, 2015 11:23
Hibernate and Database driver dependencies for a Dropwizard project
<dependency>
<groupId>io.dropwizard</groupId>
<artifactId>dropwizard-hibernate</artifactId>
<version>${dropwizard.version}</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.36</version>
</dependency>
@javaeeeee
javaeeeee / DWGettingStartedConfiguration.java
Created November 6, 2015 12:58
Changes to Configuration class to enable database connection in a Dropwizard project
public class DWGettingStartedConfiguration extends Configuration {
...
/**
* A factory used to connect to a relational database management system.
* Factories are used by Dropwizard to group together related configuration
* parameters such as database connection driver, URI, password etc.
*/
@NotNull
@javaeeeee
javaeeeee / employee.sql
Created November 6, 2015 13:00
A script to create employee table
-- A script to create employee table
create table employees(
-- auto-generated primary key
id bigint primary key not null auto_increment,
first_name varchar(255) not null,
last_name varchar(255) not null,
-- employee position
e_position varchar(255) not null,
phone varchar(255) not null,
e_mail varchar(255) not null
@javaeeeee
javaeeeee / Employee.java
Created November 6, 2015 13:02
An Employee entity
@Entity
@Table(name = "employees")
@NamedQueries({
@NamedQuery(name = "com.javaeeeee.dwstart.core.Employee.findAll",
query = "select e from Employee e"),
@NamedQuery(name = "com.javaeeeee.dwstart.core.Employee.findByName",
query = "select e from Employee e "
+ "where e.firstName like :name "
+ "or e.lastName like :name")
})
@javaeeeee
javaeeeee / EmployeeDAO.java
Created November 6, 2015 13:04
A Hibernate DAO class for a Dropwizard project
public class EmployeeDAO extends AbstractDAO<Employee> {
/**
* Constructor.
*
* @param sessionFactory Hibernate session factory.
*/
public EmployeeDAO(SessionFactory sessionFactory) {
super(sessionFactory);
}
@javaeeeee
javaeeeee / EmployeesResource.java
Created November 6, 2015 13:06
A database-backed resource class for a Dropwizard application
@Path("/employees")
@Produces(MediaType.APPLICATION_JSON)
public class EmployeesResource {
/**
* The DAO object to manipulate employees.
*/
private EmployeeDAO employeeDAO;
/**
@javaeeeee
javaeeeee / DWGettingStartedApplication.java
Created November 6, 2015 13:08
Adding Hibernate bundle to the Dropwizard Application class
public class DWGettingStartedApplication
extends Application<DWGettingStartedConfiguration> {
/**
* Hibernate bundle.
*/
private final HibernateBundle<DWGettingStartedConfiguration> hibernateBundle
= new HibernateBundle<DWGettingStartedConfiguration>(
Employee.class
) {
@javaeeeee
javaeeeee / DWGettingStartedApplication.java
Created November 6, 2015 13:11
Registering a database-backed resource class in the Application class of a Dropwizard project
public class DWGettingStartedApplication
extends Application<DWGettingStartedConfiguration> {
...
@Override
public void run(final DWGettingStartedConfiguration configuration,
final Environment environment) {
final EmployeeDAO employeeDAO
= new EmployeeDAO(hibernateBundle.getSessionFactory());