diff --git a/src/main/java/ru/ulstu/is/labwork/LabworkApplication.java b/src/main/java/ru/ulstu/is/labwork/LabworkApplication.java index 737caf9..4bfd6b3 100644 --- a/src/main/java/ru/ulstu/is/labwork/LabworkApplication.java +++ b/src/main/java/ru/ulstu/is/labwork/LabworkApplication.java @@ -11,45 +11,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController //@RequestMapping("/lab1") public class LabworkApplication { - //инимум 4 операции разные интерфейс с дженерик использ сервис - //2 3 реализации с разными данными - //писать контроллеры и делать интерфейс - //озвращ свой тип данных обджект - // написать набор тестов для кажд метода 12 тестов - - //создать интерфейс 4 метода реализ какие то операц над данными - //написать 2-3 реализации - //каждая соответственно делает то что мы хотим с данными (реализ строка число) - //потом пишем сервис (можно из примера) из поиска берем нужную реализацию и делаем действия - //пишем констролер чтоб извне... - //пишем интерфес на жабе - //и написать тесты для каждого метода чтобы все проверить public static void main(String[] args) { SpringApplication.run(LabworkApplication.class, args); } - - /*@GetMapping("/sum") - public int sum( @RequestParam(value = "num1", defaultValue = "0") int num1, - @RequestParam(value = "num2", defaultValue = "0") int num2) - { - return num1 + num2; - } - @GetMapping("/sub") - public int sub( @RequestParam(value = "num1", defaultValue = "0") int num1, - @RequestParam(value = "num2", defaultValue = "0") int num2) - { - return num1 - num2; - } - @GetMapping("/mul") - public int mul( @RequestParam(value = "num1", defaultValue = "0") int num1, - @RequestParam(value = "num2", defaultValue = "0") int num2) - { - return num1 * num2; - } - @GetMapping("/div") - public int div( @RequestParam(value = "num1", defaultValue = "0") int num1, - @RequestParam(value = "num2", defaultValue = "0") int num2) - { - return num1 / num2; - }*/ } diff --git a/src/main/java/ru/ulstu/is/labwork/calculator/domain/Calculator.java b/src/main/java/ru/ulstu/is/labwork/calculator/domain/Calculator.java index ab6c950..003ace1 100644 --- a/src/main/java/ru/ulstu/is/labwork/calculator/domain/Calculator.java +++ b/src/main/java/ru/ulstu/is/labwork/calculator/domain/Calculator.java @@ -3,9 +3,9 @@ package ru.ulstu.is.labwork.calculator.domain; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; -public interface Calculator { - Object sum(Object val1, Object val2); - Object sub(Object val1, Object val2); - Object mul(Object val1, Object val2); - Object div(Object val1, Object val2); +public interface Calculator { + T sum(T val1, T val2); + T sub(T val1, T val2); + T mul(T val1, T val2); + T div(T val1, T val2); } diff --git a/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorInt.java b/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorInt.java index ff1f151..0ff7864 100644 --- a/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorInt.java +++ b/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorInt.java @@ -1,36 +1,23 @@ package ru.ulstu.is.labwork.calculator.domain; -public class CalculatorInt implements Calculator{ - +public class CalculatorInt implements Calculator{ @Override - public Object sum(Object val1, Object val2) { - if (val1 instanceof Integer && val2 instanceof Integer){ - return (Integer)val1 + (Integer)val2; - } - return 0; + public Integer sum(Integer val1, Integer val2) { + return val1 + val2; } @Override - public Object sub(Object val1, Object val2) { - if (val1 instanceof Integer && val2 instanceof Integer){ - return (Integer)val1 - (Integer)val2; - } - return 0; + public Integer sub(Integer val1, Integer val2) { + return val1 - val2; } @Override - public Object mul(Object val1, Object val2) { - if (val1 instanceof Integer && val2 instanceof Integer){ - return (Integer)val1 * (Integer)val2; - } - return 0; + public Integer mul(Integer val1, Integer val2) { + return val1 * val2; } @Override - public Object div(Object val1, Object val2) { - if (val1 instanceof Integer && val2 instanceof Integer){ - return (Integer)val1 / (Integer)val2; - } - return 0; + public Integer div(Integer val1, Integer val2) { + return val1 / val2; } } diff --git a/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorString.java b/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorString.java index 1e30e02..8126ccd 100644 --- a/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorString.java +++ b/src/main/java/ru/ulstu/is/labwork/calculator/domain/CalculatorString.java @@ -1,23 +1,23 @@ package ru.ulstu.is.labwork.calculator.domain; -public class CalculatorString implements Calculator{ +public class CalculatorString implements Calculator{ @Override - public Object sum(Object val1, Object val2) { - return (String)val1 + '+' + (String)val2; + public String sum(String val1, String val2) { + return val1 + '+' + val2; } @Override - public Object sub(Object val1, Object val2) { - return (String)val1 + '-' + (String)val2; + public String sub(String val1, String val2) { + return val1 + '-' + val2; } @Override - public Object mul(Object val1, Object val2) { - return (String)val1 + '*' + (String)val2; + public String mul(String val1, String val2) { + return val1 + '*' + val2; } @Override - public Object div(Object val1, Object val2) { - return (String)val1 + '/' + (String)val2; + public String div(String val1, String val2) { + return val1 + '/' + val2; } } diff --git a/src/main/java/ru/ulstu/is/labwork/calculator/service/CalculatorService.java b/src/main/java/ru/ulstu/is/labwork/calculator/service/CalculatorService.java index 739322b..6ecb63a 100644 --- a/src/main/java/ru/ulstu/is/labwork/calculator/service/CalculatorService.java +++ b/src/main/java/ru/ulstu/is/labwork/calculator/service/CalculatorService.java @@ -14,10 +14,10 @@ public class CalculatorService { public Object sum(Object val1, Object val2, String type){ final Calculator calculator = (Calculator) applicationContext.getBean(type); - if (type.compareTo("inttype") == 0){ + if ("inttype".equals(type)){ return calculator.sum(Integer.parseInt(val1.toString()), Integer.parseInt(val2.toString())); } - else if (type.compareTo("stringtype") == 0) { + else if ("stringtype".equals(type)) { return String.format("%s", calculator.sum(val1.toString(), val2.toString())); } return null; @@ -25,30 +25,30 @@ public class CalculatorService { public Object sub(Object val1, Object val2, String type){ final Calculator calculator = (Calculator) applicationContext.getBean(type); - if (type.compareTo("inttype") == 0){ + if ("inttype".equals(type)){ return calculator.sub(Integer.parseInt(val1.toString()), Integer.parseInt(val2.toString())); } - else if (type.compareTo("stringtype") == 0) { + else if ("stringtype".equals(type)) { return String.format("%s", calculator.sub(val1.toString(), val2.toString())); } return null; } public Object mul(Object val1, Object val2, String type){ final Calculator calculator = (Calculator) applicationContext.getBean(type); - if (type.compareTo("inttype") == 0){ + if ("inttype".equals(type)){ return calculator.mul(Integer.parseInt(val1.toString()), Integer.parseInt(val2.toString())); } - else if (type.compareTo("stringtype") == 0) { + else if ("stringtype".equals(type)) { return String.format("%s", calculator.mul(val1.toString(), val2.toString())); } return null; } public Object div(Object val1, Object val2, String type){ final Calculator calculator = (Calculator) applicationContext.getBean(type); - if (type.compareTo("inttype") == 0){ + if ("inttype".equals(type)){ return calculator.div(Integer.parseInt(val1.toString()), Integer.parseInt(val2.toString())); } - else if (type.compareTo("stringtype") == 0) { + else if ("stringtype".equals(type)) { return String.format("%s", calculator.div(val1.toString(), val2.toString())); } return null;