如何从网页(HTML / Javascript)向Java应用程序发送简单消息?

时间:2015-12-14 10:04:00

标签: javascript java html

我有一个Java应用程序,它希望发送一个整数和一个String来执行操作。该程序已经编写并正常运行。但是,我希望使用网页来控制它。因此,我希望有一个网页,可以在用户的​​控制下发送这些数据。但是,我不知道该怎么做。

将消息从HTML / Javascript发送到Java程序的最简单方法是什么?

我只能访问Java SE。

4 个答案:

答案 0 :(得分:1)

这取决于您的应用程序正在使用的协议(适配器)。它可以是HTTP,websockets或其他东西。

我可以假设你在谈论HTTP,所以最简单的方法是使用form html元素和POST方法。

check this

答案 1 :(得分:1)

请将您的项目分成两部分(三部分,如果有数据库管理)部分:

  1. 服务器端 - 核心端。在这里,您可以实现您的Java代码。这意味着你必须运行像tomcat这样的服务器。创建新的Web应用程序项目。包括tomcat或其他东西作为服务器。创建一个Servlet(不要问如何创建,但通过互联网搜索)。在那个servlet中重写doPost方法。包含此代码的方法将为您提供有关服务器端的假设:
  2. response.getWriter()。write(“hello from server”);

    1. 客户端。客户端是您实现html,js和css代码的地方。通过post方法将表单提交给该servlet。
    2. 如果您已正确配置web.xml,那么在提交此表单时,您应该收到“来自服务器的问候”作为响应。 使用eclipse作为易于配置的IDE。

答案 2 :(得分:0)

您可以使用JSP / Servlet在客户端和服务器之间进行通信。

See here for some basic stuff

答案 3 :(得分:0)

问题:你有妈妈吗? 如果没有,我会鼓励你下载它。很简单:https://maven.apache.org/

如果是,请将这些添加到您的pom文件中:

    <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.0.RELEASE</version>
</parent>
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

现在在主应用程序的类中添加一些注释和一个控制器(方法)来处理你的POST请求:

import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;

@Controller
@EnableAutoConfiguration
public class SpringBootSampleApplication {

    @RequestMapping("/")
    @ResponseBody
    @CrossOrigin
    String home() {
        return "Hello World!";
    }

    /** Receives a POST request on path / with parameter name. Will return parameter
     * 
     * @param request
     * @return */
    @RequestMapping(value = "/", method = RequestMethod.POST)
    @ResponseBody
    @CrossOrigin // this will allow requests origination from any domain. see CORS
    String greet(HttpServletRequest request) {
        return "Greetings: " + request.getParameter("name");
    }

    /** starts the application
     * 
     * @param args
     * @throws Exception */
    public static void main(String[] args) throws Exception {
        SpringApplication.run(SpringBootSampleApplication.class, args);
    }
}

这将在端口8080上启动Web服务器。

在此处查看此代码示例:https://github.com/mikibrv/spring.boot.sample

我还在资源中添加了一个小的index.html文件,作为AJAX的一个例子。

这是一个完整的项目,在启用CORS的情况下生成2个端点(GET和POST),当您使用Maven(mvn clean install)构建它时,您将获得一个可以使用的胖JAR:java -jar target /spring.boot.sample.jar

了解更多信息:http://projects.spring.io/spring-boot/