powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Работа с JSON Java
25 сообщений из 26, страница 1 из 2
Работа с JSON Java
    #39880872
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет я вот изучаю JSON

И у меня есть такой контроллер. Который отправляет на сервер пять слов и возвращает их в обратном порядке.

Код: java
1.
2.
3.
4.
5.
6.
@PostMapping("/reverse")
    public List<String> reverseList(@RequestBody List<String> stringList) {
        return IntStream.range(0, stringList.size())
                .mapToObj(i -> stringList.get(stringList.size() - 1 - i))
                .collect(Collectors.toList());
    }




Когда я в терминале ввожу
Код: java
1.
curl -H "Content-Type: application/json" -d "[\"One\",\"Two\",\"Three\",\"Four\",\"Five\"]" localhost:8080/hello/reverse



Он у меня возвращает
Код: java
1.
["Five","Four","Three","Two","One"]



Но как можно сделать так, чтобы он у меня читал текст в любом формате. Допустим если напишу
Код: java
1.
"5+6+8+9+10"


То как сделать так чтобы он у меня все посчитал и вывел ответ
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880881
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,
В json, xml в общем случае нет очередности и номер по порядку.
В базе тоже нет. Заводят спец поле. И ты его добавь.
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880889
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Мне сказали, чтобы просто сделать так чтобы он читал текст в любом формате, допустим для примера если я напишу (5+6+8) он мне должен вернуть ответ, типа сколько будет их прибавление. Просто мне сказали формат который я написал неудобен, надо по универсальному написать. Можете помочь
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880891
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,
Я пока задачу не понял.
Причем очередность при сложении?
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880899
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Допустим я же сначала написал ["Five","Four","Three","Two","One"], чтобы его JSON вывел в обратном порядке. Мне сказали так неудобно будет каждый раз писать, надо что-то универсальное написать. Допустим убрать скобочки, слэши и тд чтобы просто цифры были или слова без скобочек и слэшей
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880907
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,
Математика, 1 класс вторая четверть:
ДАНО:
- числа в json
НАЙТИ:
- их сумму в сервлете
Так?
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880910
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

просто надо так написать чтобы этот код работал без скобок и слэшей

Код: java
1.
curl -H "Content-Type: application/json" -d "[\"One\",\"Two\",\"Three\",\"Four\",\"Five\"]" localhost:8080/hello/reverse
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880936
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос не имеет никакого отношения ни к Java, ни к JSON, так как в приведённом примере дана командная строка программы CURL. Какие в ней требования к командной строке - см. в описании CURL. В ней можно передавать данные и не в командной строке, а в файле. Но это не относится к теме Java. В Java можно сделать то же, что и в этой команде CURL. Так что даже не понял, что вы хотели выразить с помощью CURL.
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880939
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy
Код: java
1.
json" -d "[3, 5,1,6]" localhost


Так?
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880941
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyМне сказали так неудобно будет каждый раз писать
если нужно передавать строго массив строк, то json действительно в данном случае вероятно overkill
можно
1) сменить POST на GET
2) тип параметра на массив строк вместо списка
3) RequestBody на RequestParam

тогда можно передавать значения либо как myParam=1&myParam=3&myParam=5 либо как myParam=1,3,5,6

либо нужно свой конвертер написать, который будет принимать параметры в любом удобном виде и конвертить в нужный тип, но стоит ли?
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880945
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
chpasha,
Я только додумался вот так написать
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
@RestController
@RequestMapping("/hello")
public class HelloController {
 
    private final NamesDAO namesDAO;
 
    public HelloController(NamesDAO namesDAO) {
        this.namesDAO = namesDAO;
    }
 
 
    
    
    @PostMapping("/reverse")
    public List<String> reverseList(@RequestBody String string) {
        List<String> stringList = Arrays.asList(string.split("+"));
        return IntStream.range(0, stringList.size())
                .mapToObj(i -> stringList.get(stringList.size() - 1 - i))
                .collect(Collectors.toList());
    }
 
 
 
}




Как можно написать так чтобы допустим эти [] скобочки убрать, чтобы просто было
Код: java
1.
 curl -H "Content-Type: application/json" -d  и вот здесь текста



Код: java
1.
curl -H "Content-Type: application/json" -d '["text":"One+Two+Three+Four+Five"]' localhost:8080/hello/reverse
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880955
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нда... Тяжело понять конечную цель автора)
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880966
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyЯ только додумался вот так написать
чувак, я для кого предыдущий пост писал? так все, в сад. надоели бараны
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880967
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Сейчас попытаюсь более детально обьяснить) просто то что я написал ранее это неправильно. Мне сказали просто написать код, где команду cURL

Код: java
1.
curl -H "Content-Type: application/json" -d "[\"One\",\"Two\",\"Three\",\"Four\",\"Five\"]" localhost:8080/hello/reverse



Нужно написать, дабы оно было универсальное и удобное, чтобы не использовать скобки и слэши как здесь
Код: java
1.
 -d "[\"One\",\"Two\",\"Three\",\"Four\",\"Five\"]
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880973
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,
))) что передать надо в reverse?
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880974
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy
Код: java
1.
One-Two-Three

так?
))))
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880975
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,
Напиши без скобок как хотят и скажи ошибку которая будет.
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880985
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,
Все я уточнил
Чтобы допустим если я введу

Код: java
1.
curl -H "Content-Type: application/json" -d "один, два, три, четыре, пять" localhost:8080/hello/reverse



Он вернул его в обратном порядке. Как вы заметили без [] надо

Плюс сказали чтобы он умел обрабатывать его в любом формате типа даже если я напишу "5+6+7+8" тоже обработал.
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880989
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy,
всего то и надо поместить аргумент в одиночные кавычки, а не двойные. Тогда \ не понадобится. Вообще-то, об этом можно было узнать в руководстве по CURL.
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880992
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyдаже если я напишу "5+6+7+8" тоже обработал.и суммировал? Или реверсировал reverse?
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880993
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partisan Mskyboyy,
всего то и надо поместить аргумент в одиночные кавычки, а не двойные. Тогда \ не понадобится. Вообще-то, об этом можно было узнать в руководстве по CURL.им скобки тоже не нравятся. Тогда тип контента надо менять.
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39880996
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyy
Код: java
1.
List<String> stringList = Arrays.asList(string.split("+"));

json тут вообще ни при чем)
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39881001
skyboyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp,

Сказали можно суммировать, а можно просто вывести наоборот. Важно чтобы был JSON + чтобы он любой формат текста читал
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39881012
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyboyyВажно чтобы был JSONскажи им что json это скобки бязательнт и запятые. Иначе это не json.
...
Рейтинг: 0 / 0
Работа с JSON Java
    #39881051
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpskyboyy,
В json в общем случае нет очередности и номер по порядку.


Справедливости ради, в JSON-массивах порядок есть

https://www.json.org/ An array is an ordered collection of values.
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Работа с JSON Java
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]