|
Модераторы: LSD, AntonSaburov |
|
AsyA777 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 9.5.2016 Репутация: нет Всего: нет |
Нужно написать калькулятор, так чтобы данные отправлялись на сервер, там считывались и возвращались назад. Подскажите как это сделать?? Как это должно осуществляться? Такое задание, а как сделать непонятно! Помогите кто знает, объясните, пожалуйста!! (пишем в intelij idea java, html)
|
|||
|
||||
KIRINDORF |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 79 Регистрация: 11.2.2011 Репутация: нет Всего: 1 |
Есть технология асинхронных запросов к серверу, называется AJAX.
Посмотрите как она поддерживается вашей платформой. Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
CompWorm |
|
||||
Допеределыватель Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / Репутация: 1 Всего: 31 |
пункт первый: подойти к учителю и спросить, под какую веб-платформу писать.
если стыдно, качаем веб сервер: https://tomcat.apache.org/download-80.cgi распаковываем. - запускаем консоль, указываем путь к папке с томкетом в переменной окружения set CATALINA_HOME=c:\your\path\here\apache-tomcat-8.0.33 и местоположение JRE: set JRE_HOME=C:\jdk1.7.0_80\jre можешь сохратить это в каком-нибудь скрипте или прям в настройке переменных операционки. - стартуем веб-сервер: On Windows: %CATALINA_HOME%\bin\startup.bat or %CATALINA_HOME%\bin\catalina.bat start On *nix: $CATALINA_HOME/bin/startup.sh or $CATALINA_HOME/bin/catalina.sh start заходим в браузер, смотрим работает ли: http://localhost:8080/ intelij idea: создаём, веб-проект, добавляем сервлет... ну скажем com.test.HelloWorld
билдим, копируем веб-контент в томкет\webapps\HelloWorld: | +---META-INF | MANIFEST.MF | \---WEB-INF | web.xml | +---classes | \---com | \---test | HelloWorldServlet.class | \---lib содержимое web.xml такое примерно:
ты можешь выбрать, где указать адрес к сервлету - либу в коде, через аннотацию @WebServlet("/HelloWorldServlet") либо в web.xml (он же deployment descriptor) <servlet-mapping> ( '/hello' ). я показал оба варианта, лишнее удали. проверяем: http://localhost:8080/HelloWorld/hello или http://localhost:8080/HelloWorld/HelloWorldServlet должно отобразить то, что у тебя было в методе doGet(). собственно всё. нарисуй хтмл форму с текстовым окном и кнопкой. кнопка отправляет текст из поля на этот адрес. doGet() ловит запрос, доступ к переданным данным в HttpServletRequest request. функция будет стрингой, поэтому её надо распарсить и посчитать. не знаю, какие функции ты собрался считать и знать не хочу. когда посчитал, запиши ответ в HttpServletResponse response тем же способом. Этот ответ добавлен с нового Винграда - http://vingrad.com Это сообщение отредактировал(а) CompWorm - 11.5.2016, 04:43 |
||||
|
|||||
CompWorm |
|
|||
Допеределыватель Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / Репутация: 1 Всего: 31 |
для решения уравнения можешь вообще воспользоваться готовой либой, например вот:
http://projects.congrace.de/exp4j/index.html и таких миллион https://duckduckgo.com/?q=How+to+calculate+...java&t=ffsb Этот ответ добавлен с нового Винграда - http://vingrad.com |
|||
|
||||
CompWorm |
|
||||
Допеределыватель Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / Репутация: 1 Всего: 31 |
собственно осталось решить формулу в calculate() и готово. кроме того ХТМЛ код обычно держат не в java файлах, а в jsp. если в кратце, рядом с WEB-INF и META-INF создай папку jsp, положи в неё test.jsp
посмотри результат: http://localhost:8080/HelloWorld/jsp/test.jsp это позволит тебе писать хтмл в перемежку с ява, без перекомпиляции. то есть можно было не писать сервлет вовсе. минус в том, что это очень чумазый код, в котором потом чёрт ногу сломит. Этот ответ добавлен с нового Винграда - http://vingrad.com Это сообщение отредактировал(а) CompWorm - 11.5.2016, 05:37 |
||||
|
|||||
ZVano |
|
|||
Опытный Профиль Группа: Участник Сообщений: 258 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: нет Всего: 4 |
Можно поискать готовые решения на github
Простая веб служба со встроенным Jetty (Сервлет-калькулятор) PS: Чтобы правильно решить задачу нужно знать что преподавалось. У меня сильное подозрение, что Ваша задача на умение работать с сокетами + все с этим связанное (потоки, синхронизация доступа, блокировки). Это сообщение отредактировал(а) ZVano - 3.6.2016, 18:52 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
|||
|
||||
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Работа с сетью | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |