Vika7
@Vika7
вебист

Как выделить значение request.getparameter?

Привет всем, вопрос хоть и ламерский, но информацию найти не могу.
На сервере принимаю стринговую строку
String p_scnt = request.getParameter("p_scnt");
:
User [userid=1, firstName=Ira, lastName=Ivanova, dob=null, email=fff@gmail.com].

Вопрос: для записи в БД мне нужно только значение userid, как его выделить.
Желательно сделать это на стороне сервера, на клиенте текстовое поле.
  • Вопрос задан
  • 38 просмотров
Пригласить эксперта
Ответы на вопрос 1
@bestie
В идеальном случае, лучше хотя бы в  JSON'е присылать данные, тогда вы без проблем сможете на стороне сервера десериализовать сообщение в конкретный обьект. А из него уже тягать данные, какие нужно.

А так, самое простое решение в лоб:
String request = "User [userid=1, firstName=Ira, lastName=Ivanova, dob=null, email=fff@gmail.com]";
int beginOfString = request.indexOf("=") + 1;
int endOfString = request.indexOf(",");
String id = request.substring(beginOfString, endOfString);
System.out.println(id);

которое перестанет работать сразу же, как изменится порядок полей в строке.

Можно перестраховаться и искать вхождение "userid=" в строке:
String request = "User [userid=1, firstName=Ira, lastName=Ivanova, dob=null, email=fff@gmail.com]";
String userId = "userid=";
int beginOfString = request.indexOf(userId) + userId.length();
int endOfString = request.indexOf(",", beginOfString);
String id = request.substring(beginOfString, endOfString);
System.out.println(id);


Но решение тоже так себе.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы