LabWork02: Лабораторная сдана
This commit is contained in:
parent
eada9f3c88
commit
809e593a86
@ -11,45 +11,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|||||||
@RestController
|
@RestController
|
||||||
//@RequestMapping("/lab1")
|
//@RequestMapping("/lab1")
|
||||||
public class LabworkApplication {
|
public class LabworkApplication {
|
||||||
//инимум 4 операции разные интерфейс с дженерик использ сервис
|
|
||||||
//2 3 реализации с разными данными
|
|
||||||
//писать контроллеры и делать интерфейс
|
|
||||||
//озвращ свой тип данных обджект
|
|
||||||
// написать набор тестов для кажд метода 12 тестов
|
|
||||||
|
|
||||||
//создать интерфейс 4 метода реализ какие то операц над данными
|
|
||||||
//написать 2-3 реализации
|
|
||||||
//каждая соответственно делает то что мы хотим с данными (реализ строка число)
|
|
||||||
//потом пишем сервис (можно из примера) из поиска берем нужную реализацию и делаем действия
|
|
||||||
//пишем констролер чтоб извне...
|
|
||||||
//пишем интерфес на жабе
|
|
||||||
//и написать тесты для каждого метода чтобы все проверить
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
SpringApplication.run(LabworkApplication.class, 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;
|
|
||||||
}*/
|
|
||||||
}
|
}
|
||||||
|
@ -3,9 +3,9 @@ package ru.ulstu.is.labwork.calculator.domain;
|
|||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
public interface Calculator {
|
public interface Calculator<T> {
|
||||||
Object sum(Object val1, Object val2);
|
T sum(T val1, T val2);
|
||||||
Object sub(Object val1, Object val2);
|
T sub(T val1, T val2);
|
||||||
Object mul(Object val1, Object val2);
|
T mul(T val1, T val2);
|
||||||
Object div(Object val1, Object val2);
|
T div(T val1, T val2);
|
||||||
}
|
}
|
||||||
|
@ -1,36 +1,23 @@
|
|||||||
package ru.ulstu.is.labwork.calculator.domain;
|
package ru.ulstu.is.labwork.calculator.domain;
|
||||||
|
|
||||||
public class CalculatorInt implements Calculator{
|
public class CalculatorInt implements Calculator<Integer>{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object sum(Object val1, Object val2) {
|
public Integer sum(Integer val1, Integer val2) {
|
||||||
if (val1 instanceof Integer && val2 instanceof Integer){
|
return val1 + val2;
|
||||||
return (Integer)val1 + (Integer)val2;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object sub(Object val1, Object val2) {
|
public Integer sub(Integer val1, Integer val2) {
|
||||||
if (val1 instanceof Integer && val2 instanceof Integer){
|
return val1 - val2;
|
||||||
return (Integer)val1 - (Integer)val2;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object mul(Object val1, Object val2) {
|
public Integer mul(Integer val1, Integer val2) {
|
||||||
if (val1 instanceof Integer && val2 instanceof Integer){
|
return val1 * val2;
|
||||||
return (Integer)val1 * (Integer)val2;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object div(Object val1, Object val2) {
|
public Integer div(Integer val1, Integer val2) {
|
||||||
if (val1 instanceof Integer && val2 instanceof Integer){
|
return val1 / val2;
|
||||||
return (Integer)val1 / (Integer)val2;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,23 +1,23 @@
|
|||||||
package ru.ulstu.is.labwork.calculator.domain;
|
package ru.ulstu.is.labwork.calculator.domain;
|
||||||
|
|
||||||
public class CalculatorString implements Calculator{
|
public class CalculatorString implements Calculator<String>{
|
||||||
@Override
|
@Override
|
||||||
public Object sum(Object val1, Object val2) {
|
public String sum(String val1, String val2) {
|
||||||
return (String)val1 + '+' + (String)val2;
|
return val1 + '+' + val2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object sub(Object val1, Object val2) {
|
public String sub(String val1, String val2) {
|
||||||
return (String)val1 + '-' + (String)val2;
|
return val1 + '-' + val2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object mul(Object val1, Object val2) {
|
public String mul(String val1, String val2) {
|
||||||
return (String)val1 + '*' + (String)val2;
|
return val1 + '*' + val2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object div(Object val1, Object val2) {
|
public String div(String val1, String val2) {
|
||||||
return (String)val1 + '/' + (String)val2;
|
return val1 + '/' + val2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,10 +14,10 @@ public class CalculatorService {
|
|||||||
|
|
||||||
public Object sum(Object val1, Object val2, String type){
|
public Object sum(Object val1, Object val2, String type){
|
||||||
final Calculator calculator = (Calculator) applicationContext.getBean(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()));
|
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 String.format("%s", calculator.sum(val1.toString(), val2.toString()));
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
@ -25,30 +25,30 @@ public class CalculatorService {
|
|||||||
|
|
||||||
public Object sub(Object val1, Object val2, String type){
|
public Object sub(Object val1, Object val2, String type){
|
||||||
final Calculator calculator = (Calculator) applicationContext.getBean(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()));
|
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 String.format("%s", calculator.sub(val1.toString(), val2.toString()));
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
public Object mul(Object val1, Object val2, String type){
|
public Object mul(Object val1, Object val2, String type){
|
||||||
final Calculator calculator = (Calculator) applicationContext.getBean(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()));
|
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 String.format("%s", calculator.mul(val1.toString(), val2.toString()));
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
public Object div(Object val1, Object val2, String type){
|
public Object div(Object val1, Object val2, String type){
|
||||||
final Calculator calculator = (Calculator) applicationContext.getBean(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()));
|
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 String.format("%s", calculator.div(val1.toString(), val2.toString()));
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
Loading…
Reference in New Issue
Block a user