Подключите Javascript и Java - PullRequest
0 голосов
/ 14 июля 2020

Я новичок и работаю над включением и выключением лампочки. У меня есть рабочий код Java. У меня есть конструктор и код Javascript. Коды работают отдельно, но как мне соединить их все вместе, чтобы они действительно общались вместе?

package com.example.restservice.Model;

import java.awt.Color;

public class Bulb {

    private int bulbId;
    private boolean on;
    //private Color color;
    private String colorName;
    private String location;

    public Bulb(int id, boolean on, Color c, String cn, String location) {
        this.bulbId = id;
        this.on = on;
        //color = c;
        colorName = cn;
        this.location = location;
    }

    public int getId() {
        return bulbId;
    }

    public void setId(int id) {
        this.bulbId = id;
    }

    public boolean isOn() {
        return on;
    }

    public boolean isOff() {
        return !on;
    }

    public String getcolorName() {
        return colorName;
    }

    public void setColorName(String cn) {
        colorName = cn;
    }

    public String getLocation() {
        return location;
    }

    public void setLocation(String location) {
        this.location = location;
    }

    public void turnOn() {
        on = true;
    }

    public void turnOff() {
        on = false;
    }

    public String toString() {
        String result;
        if (on) {
            result = "The " + getcolorName() + " light is on.";
        }
        else {
            result = "The " + getcolorName() + " light is off.";
        }
       return result;
    }
}

Javascript:

function change() {
    var image = document.getElementById('switch');
    if (imageTracker==='on') {
        image.src ='img/light-on.jpg';
        imageTracker = 'off';
    }
    else {
        image.src ='img/light-off.jpg';
        imageTracker = 'on';
    }
}

Контроллер

@GetMapping("/bulbs")
public Bulb[] bulps() {
    return bulbs;
}

@GetMapping("/Bulb")
public Bulb bulb(int bulbId) {
    for (Bulb bulb : bulbs) {
        if (bulb.getId() == bulbId) {
            return bulb;
        }
    }
    return null;
}

Ответы [ 2 ]

0 голосов
/ 17 июля 2020

Решением было использовать функцию (fedge).

0 голосов
/ 14 июля 2020

Вы можете использовать ScriptEngineManager, как в следующем примере:

https://www.infoworld.com/article/2072356/javascript-in-java.html

...