Skip to content

Commit

Permalink
Added employee generator and sortiing servlet
Browse files Browse the repository at this point in the history
  • Loading branch information
hound-eye committed Jun 3, 2014
1 parent 7a77812 commit 1a2aaec
Show file tree
Hide file tree
Showing 92 changed files with 1,549 additions and 407 deletions.
5 changes: 0 additions & 5 deletions .idea/artifacts/employee_webcontrol_war.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .idea/artifacts/employee_webcontrol_war_exploded.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions .idea/libraries/Maven__javax_servlet_jsp_jstl_1_2.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions .idea/libraries/Maven__javax_servlet_jstl_1_2.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions .idea/libraries/Maven__mysql_mysql_connector_java_5_1_30.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 10 additions & 0 deletions .idea/libraries/javax_servlet_jsp_jstl_jstl_1_2.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

873 changes: 574 additions & 299 deletions .idea/workspace.xml

Large diffs are not rendered by default.

7 changes: 5 additions & 2 deletions employee-webcontrol.iml
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,14 @@
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="jdk" jdkName="1.7" jdkType="JavaSDK" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Java EE 6-Java EE 6" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" />
<orderEntry type="library" name="mysql-connector-java-5.1.30-bin" level="application" />
<orderEntry type="library" name="javax.servlet.jsp.jstl:jstl:1.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: javax.servlet:jstl:1.2" level="project" />
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.30" level="project" />
</component>
</module>

12 changes: 12 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<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/maven-v4_0_0.xsd">

<modelVersion>4.0.0</modelVersion>
<groupId>com.ztaticvienn.homework</groupId>
<artifactId>employee-webcontrol</artifactId>
Expand All @@ -14,6 +15,17 @@
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
</dependencies>
<build>
<finalName>employee-webcontrol</finalName>
Expand Down
3 changes: 0 additions & 3 deletions src/main/java/com/ztaticvienn/controller/Runner.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@ public class Runner {
+"typesalary ENUM('fixedsalary','hourlywages') NOT NULL,"
+"UNIQUE (id));";

private static final String ADD_REQUEST = "INSERT INTO employees (id, name, surname, birthdate, salary, typesalary)" +
"VALUES ('1','John','Smith','1985-06-15','600.5','hourlywages')";

private static final String DROP_REQUEST = "DROP TABLE IF EXISTS employees";

Expand All @@ -33,7 +31,6 @@ public static void main (String[] args){
//System.out.println(REQUEST);
conn.createStatement().execute(DROP_REQUEST);
conn.createStatement().execute(REQUEST);
conn.createStatement().execute(ADD_REQUEST);

ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM employees ORDER BY id;");
while (rs.next() == true){
Expand Down
34 changes: 34 additions & 0 deletions src/main/java/com/ztaticvienn/controller/Test.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package com.ztaticvienn.controller;

import com.ztaticvienn.controller.database.DatabaseAccess;
import com.ztaticvienn.controller.entities.*;

import com.ztaticvienn.controller.util.DateParser;

import java.util.ArrayList;
import java.util.List;

/**
* Created by mike on 23.05.14.
*/
public class Test {
public static void main(String[] args) {
//Employee emp = new FixedSalaryEmployee(2, "Jack", "Welker", DateParser.getDateFromString("1967-01-24"), 555.5);
// emp.setId(2);
// emp.setName("Jack");
// emp.setSurname("Welcker");
// emp.setDateOfBirth(DateParser.getDateFromString("1967-01-24"));
// emp.setSalary(555.5);
//System.out.println(DateParser.getStringFromDate(emp.getDateOfBirth()));
//DatabaseAccess.addEmployeeToDatabase(emp);
//System.out.println(DateParser.getStringFromDate(emp.getDateOfBirth()));
Company company = Company.getInstance();
List<Employee> freshEmployees = new ArrayList<Employee>();
freshEmployees.add(DatabaseAccess.getEmployeeFromDatabaseById(2));
for(Employee employee: freshEmployees){
System.out.println(employee.getName());
}


}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.ztaticvienn.controller.comparator;

import com.ztaticvienn.controller.entities.Employee;

import java.util.Comparator;

/**
* Created by mike on 03.06.14.
*/
public class EmployeeDateComparator implements Comparator<Employee>{
@Override
public int compare(Employee o1, Employee o2) {
return o1.getDateOfBirth().compareTo(o2.getDateOfBirth());
}


}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.ztaticvienn.controller.comparator;

import com.ztaticvienn.controller.entities.Employee;

import java.util.Comparator;

/**
* Created by mike on 03.06.14.
*/
public class EmployeeIdComparator implements Comparator<Employee> {
@Override
public int compare(Employee o1, Employee o2) {
return o1.getId().compareTo(o2.getId());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.ztaticvienn.controller.comparator;

import com.ztaticvienn.controller.entities.Employee;

import java.util.Comparator;

/**
* Created by mike on 03.06.14.
*/
public class EmployeeNameComparator implements Comparator<Employee>{
@Override
public int compare(Employee o1, Employee o2) {
return o1.getName().compareTo(o2.getName());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.ztaticvienn.controller.comparator;

import com.ztaticvienn.controller.entities.Employee;

import java.util.Comparator;

/**
* Created by mike on 03.06.14.
*/
public class EmployeeSalaryComparator implements Comparator<Employee>{
@Override
public int compare(Employee o1, Employee o2) {
return o1.getSalary().compareTo(o2.getSalary());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package com.ztaticvienn.controller.comparator;

import com.ztaticvienn.controller.entities.Employee;

import java.util.Comparator;

/**
* Created by mike on 03.06.14.
*/
public class EmployeeSurnameComparator implements Comparator<Employee>{
@Override
public int compare(Employee o1, Employee o2) {
return o1.getSurname().compareTo(o2.getSurname());
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -2,35 +2,100 @@

import com.ztaticvienn.controller.entities.Employee;
import com.ztaticvienn.controller.entities.FixedSalaryEmployee;
import com.ztaticvienn.controller.entities.HourlyWageEmployee;
import com.ztaticvienn.controller.util.DateParser;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
* Created by mike on 21.05.14.
*/
public class DatabaseAccess {



private static final String USER = "root";
private static final String PASSWORD = "12345";
private static final String DRIVER_PATH = "org.gjt.mm.mysql.Driver";
private static final String DATABASE_PATH = "jdbc:mysql://localhost/data";
private static final String DRIVER_NAME = "org.gjt.mm.mysql.Driver";
private static final String DATABASE_URL = "jdbc:mysql://localhost/data";

private static Connection connection;
private static ResultSet resultSet;

static {
try {

connection = DriverManager.getConnection("jdbc:mysql://localhost/employees", "root", "12345"); //Connect

} catch (SQLException e) {
e.printStackTrace();
}

}

public static void addEmployeeToDatabase(Employee employee){


String id=employee.getId().toString();
String name=employee.getName().toString();
String surname=employee.getSurname().toString();
String dateOfBirth=employee.getDateOfBirth().toString();
String dateOfBirth= DateParser.getStringFromDate(employee.getDateOfBirth());
String salary=employee.getSalary().toString();

String salarytype=employee instanceof FixedSalaryEmployee?"fixedsalary":"hourlywages";

try {
connection.createStatement().execute("INSERT INTO employees (id, name, surname, birthdate, salary, typesalary)" +
"VALUES ('"+id+"','"+name+"','"+surname+"','"+dateOfBirth+"','"+salary+"','"+salarytype+"')");
} catch (SQLException e) {
System.out.println(e.getMessage());
}


}

public static void clearDatabase(Employee employee){

}

public static Employee getEmployeeFromDatabaseById(Integer id){
public static Employee getEmployeeFromDatabaseById(Integer paramId){

String id = null;
String name = null;
String surname = null;
String dateOfBirth = null;
String salary = null;
String salarytype = null;
Employee employee = null;

try {
resultSet = connection.createStatement().executeQuery("SELECT * FROM employees WHERE id="+paramId+";");
while (resultSet.next() == true){
id=resultSet.getString("id");
name=resultSet.getString("name");
surname=resultSet.getString("surname");
dateOfBirth=resultSet.getString("birthdate");
salary=resultSet.getString("salary");
salarytype=resultSet.getString("typesalary");


if(salarytype.equals("fixedsalary")){
employee = new FixedSalaryEmployee(Integer.valueOf(id), name, surname, DateParser.getDateFromString(dateOfBirth), Double.valueOf(salary));
}else if(salarytype.equals("hourlywages")){
employee = new HourlyWageEmployee(Integer.valueOf(id), name, surname, DateParser.getDateFromString(dateOfBirth), Double.valueOf(salary));
}
}
} catch (SQLException e) {
e.printStackTrace();
}



Employee employee = new FixedSalaryEmployee();
return employee;
}

}
Loading

0 comments on commit 1a2aaec

Please sign in to comment.