V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
QBugHunter
V2EX  ›  Java

Java 如何把一个类传递给 html5

  •  
  •   QBugHunter · 2021-03-22 15:36:21 +08:00 · 5853 次点击
    这是一个创建于 1360 天前的主题,其中的信息可能已经有所发展或是发生改变。

    说明下,公司搞这块的刚刚跑路,公司招的 java 没来报到,然后找我合格不会 java 的来完成这事。。

    现在有个问题,有很多类(类似 C++的结构)

    class DeviceInfo{
        public String DeviceId;
        public int Power;
        public boolean Status;
    };
    

    现在这些类对象需要传递给一个 html5 的 eb 页面,需要在 web 页面上显示这些类的数据,

    这种情况下最好通过什么形式通信(即把这些类对象发给 web)。(因为最近公司有点问题,唯一的 html5 开发人员以及提交离职申请,问他,他也是到处瞎扯)

    67 条回复    2021-03-24 15:50:00 +08:00
    MaxTan
        1
    MaxTan  
       2021-03-22 15:38:42 +08:00   ❤️ 1
    序列化成 json 传到前端
    3dwelcome
        2
    3dwelcome  
       2021-03-22 15:40:01 +08:00
    正常来说是用 google protobuf 编译后传数据,不过我个人觉得 java 处理成 json 给前端,也挺好的。
    QBugHunter
        3
    QBugHunter  
    OP
       2021-03-22 15:46:56 +08:00
    @MaxTan
    @3dwelcome

    把类转化未 Json 对象可以,那通过何种方式传递给 web 页面呢?
    MoHen9
        4
    MoHen9  
       2021-03-22 15:51:00 +08:00 via Android
    前端页面发个请求不可以了吗?这不像是开发会问的问题呀。
    Kasumi20
        5
    Kasumi20  
       2021-03-22 15:51:23 +08:00
    你们两个又不会 Java,又不会 js ?
    3dwelcome
        6
    3dwelcome  
       2021-03-22 15:52:43 +08:00
    我的项目全部用 websocket 传数据,当然大部分公司不会这样干,正常就是一个 POST 请求吧。
    yitingbai
        7
    yitingbai  
       2021-03-22 15:53:02 +08:00
    这问题没法回答, 题主似乎最基本的 web 开发逻辑都不通
    QBugHunter
        8
    QBugHunter  
    OP
       2021-03-22 15:53:27 +08:00
    @MoHen9

    @Kasumi20

    再声明下。。。。我这个问题可能有点基本,公司负责 PC 端的 JAVA 跑路了,原本要来的人又不来了,html5 唯一负责人目前已经提了离职报告,问他啥都不会

    然后我对 java 一知半解,完全不懂 html5,但公司没人搞这块,我被赶鸭子上架了
    66beta
        9
    66beta  
       2021-03-22 15:53:43 +08:00
    看意思应该是前后端不分离的 JSP 页面,前后端交互,大部分场景下 json 最合适
    QBugHunter
        10
    QBugHunter  
    OP
       2021-03-22 15:53:48 +08:00
    @yitingbai
    我完全不会 web....所以才问下
    Kasumi20
        11
    Kasumi20  
       2021-03-22 15:55:37 +08:00
    HTTP 协议总知道吧
    MaxTan
        12
    MaxTan  
       2021-03-22 15:56:58 +08:00
    @QBugHunter #3 Web 一般都默认你用 http 协议来传数据吧。。。
    QBugHunter
        13
    QBugHunter  
    OP
       2021-03-22 15:58:37 +08:00
    @Kasumi20

    @MaxTan

    谢谢,http 知道的
    clf
        14
    clf  
       2021-03-22 16:03:24 +08:00   ❤️ 2
    前后端交互和前后端语言无关,你不懂这个并不是因为你没学过 Java,而是你根本就没参与过基本的 Web 项目开发。如果你是老板,建议招一个有 web 经验的程序员(理论上毕业生基本也都会)带下技术团队,如果是开发人员,建议好好学习和了解一下前后端交互的基本知识。
    redtea
        15
    redtea  
       2021-03-22 16:03:39 +08:00
    用 AJAX 吧。
    Cowhitewhite
        16
    Cowhitewhite  
       2021-03-22 16:16:21 +08:00
    json
    janus77
        17
    janus77  
       2021-03-22 16:19:41 +08:00
    http 接口知道吧
    hantsy
        18
    hantsy  
       2021-03-22 16:20:20 +08:00
    随便会一门语言都是可以解决。
    lower
        19
    lower  
       2021-03-22 16:24:41 +08:00
    前后端同时都跑路了,,感觉你们这公司管理上问题比较严重呀……
    natsji
        20
    natsji  
       2021-03-22 16:25:13 +08:00 via Android   ❤️ 7
    你公司这是要倒闭啊,你也赶紧跑路吧
    murmur
        21
    murmur  
       2021-03-22 16:26:03 +08:00
    jsp 没学过么,会给前端传字符串么,json 也是字符串
    tabris17
        22
    tabris17  
       2021-03-22 16:28:01 +08:00
    jsp out.print
    qiayue
        23
    qiayue  
       2021-03-22 16:32:50 +08:00
    html5 负责人啥都不会就有点离谱
    ZSeptember
        24
    ZSeptember  
       2021-03-22 16:34:05 +08:00
    看起来是用的 JSP,学习下 JSP 罗。
    QBugHunter
        25
    QBugHunter  
    OP
       2021-03-22 16:49:15 +08:00
    @lower

    @natsji

    是某个项目的领导带着几个员工跑路了。。。


    @qiayue
    他会,但不说。。。
    HeiWuBai
        26
    HeiWuBai  
       2021-03-22 17:01:51 +08:00
    看写好的界面怎么交互的 模仿
    wxw752
        27
    wxw752  
       2021-03-22 17:14:09 +08:00
    建议等招到人再搞。
    hb0730
        28
    hb0730  
       2021-03-22 17:21:17 +08:00
    推荐 json 格式,不然就模板引擎一类的比如:thymeleaf
    Biluesgakki
        29
    Biluesgakki  
       2021-03-22 17:28:30 +08:00
    这题我会 前后端分离就 json 格式 不分离可以纯用 js ajax 实现 也可以用模板语言
    yueban5521
        30
    yueban5521  
       2021-03-22 17:59:40 +08:00
    远程兼职,随时联系
    nnnToTnnn
        31
    nnnToTnnn  
       2021-03-22 18:52:18 +08:00
    远程兼职, 可以免费接这一单解决问题。 😂 发一个 ajax 请求或者 fetch 请求到后端就好了, 如果是类似这种 jsp 的页面,按照模板引擎的写法写就好了~
    shyangs
        32
    shyangs  
       2021-03-22 19:05:33 +08:00
    前后端同时跑路了,你们这公司管理上问题比较严重呀!
    iseki
        33
    iseki  
       2021-03-22 19:41:42 +08:00 via Android
    这问题没法回答,通讯的方式有很多,取决于目前的项目结构和目的…建议招人,哪怕招个靠谱的实习生都行😅
    ayase252
        34
    ayase252  
       2021-03-22 19:45:19 +08:00 via iPhone
    你做个接口,给前端调不就行了
    thetbw
        35
    thetbw  
       2021-03-22 19:47:53 +08:00
    前后端分离就转成 json,前端用 vue 啥的渲染,否则可以模板引擎,个人觉得 freemarker 还蛮好用的,或者 velocity 这种
    zhuweiyou
        36
    zhuweiyou  
       2021-03-22 19:50:42 +08:00
    ajax
    ch2
        37
    ch2  
       2021-03-22 19:56:02 +08:00
    类是数据的抽象,类只有具体化为数据才能传
    renmu123
        38
    renmu123  
       2021-03-22 19:59:46 +08:00 via Android
    你就说自己不会,要带薪学习一两个月,一边摸一边学,何必一开始就去接业务。反正离职也不关你啥事
    c6h6benzene
        39
    c6h6benzene  
       2021-03-22 20:03:24 +08:00 via iPhone
    不如你也跟老板说不会?/狗头
    leo7723
        40
    leo7723  
       2021-03-22 20:42:58 +08:00   ❤️ 1
    一起跑。叫他们带带你
    nieyujiang
        41
    nieyujiang  
       2021-03-22 20:48:15 +08:00 via iPhone
    你也跑路啊
    gBurnX
        42
    gBurnX  
       2021-03-22 20:55:42 +08:00
    感觉 thrift 非常适合你。

    thrift 的流程是:

    1.定义一套那种你觉得像 C++数据结构的东西,再定义一个方法(接口)。

    2.thrift 能直接把这套数据结构,生成 C 或 C++或 C#或 Java 或 js 的数据结构代码与通信代码。

    3.拿着 Java 与 js 的代码,就能直接实现 js 访问 Java 。
    Stain5
        43
    Stain5  
       2021-03-22 22:10:49 +08:00 via Android
    前端不会,后端也不会

    楼主是 HR 转程序员吧?
    H0H
        44
    H0H  
       2021-03-23 07:01:40 +08:00
    html5 那个负责人不是啥都不会,也不是啥都不想说。通篇看下来是你啥都不会,对于 web 开发你连最基础的概念都没有,他没法和你技术交流
    siweipancc
        45
    siweipancc  
       2021-03-23 08:55:46 +08:00 via iPhone
    头大……建议细软跑……也不用跑了,看着描述沉了你也是砸船那个:D
    Bronya
        46
    Bronya  
       2021-03-23 09:20:53 +08:00
    @siweipancc 哈哈哈,砸船笑出声🤣

    不过楼主的问题的确挺基础的
    zzzmh
        47
    zzzmh  
       2021-03-23 09:30:42 +08:00
    程序员自己写这个功能 30 秒
    程序员教会你这个功能 30 天
    你是程序员你怎么选?

    新手的首选是 jsp 或者 serlvet + xmlhttprequest
    asd001002
        48
    asd001002  
       2021-03-23 09:36:55 +08:00
    为啥把类传出去??
    zhuang0718
        49
    zhuang0718  
       2021-03-23 09:39:24 +08:00
    前后端分离的话就 ajax 对象转成 json 就可以了
    rodrick
        50
    rodrick  
       2021-03-23 10:11:36 +08:00
    好奇楼主是什么岗位,感觉不是开发人员。。一般开发人员应该不会说“html5 负责人”这种词
    teddy2725
        51
    teddy2725  
       2021-03-23 10:39:13 +08:00
    你连 java 都不会,怎么让你完成这个事,这波,这波是在劝你跑路啊。
    liantao
        52
    liantao  
       2021-03-23 11:05:19 +08:00
    公司考虑请个兼职的话可以联系~
    Asuka0947
        53
    Asuka0947  
       2021-03-23 11:11:04 +08:00
    模板语言试一试?或者发请求获取 json 呗
    tairan2006
        54
    tairan2006  
       2021-03-23 12:07:46 +08:00
    兄弟

    跑路啊

    想啥呢
    newee
        55
    newee  
       2021-03-23 12:11:00 +08:00   ❤️ 1
    又不会 java 又不会 js

    不要勉强了兄弟
    aLazarus
        56
    aLazarus  
       2021-03-23 13:11:24 +08:00
    用 spring mvc,在 controller 层把这个对象转成 json,然后 html 页面用 ajax 调用这个 controller 的接口,接收到这个 json,之后就是解析 json 数据了。
    daijialong
        57
    daijialong  
       2021-03-23 15:08:42 +08:00
    所以大哥你是程序员吗?啥都不会?
    RickyC
        58
    RickyC  
       2021-03-23 15:48:07 +08:00
    $.post(api,{},function(res){
    console.log(res)
    })
    cslive
        59
    cslive  
       2021-03-23 16:30:00 +08:00
    有 h5 应该用得是前后端分离,直接 json 完事
    afirefish
        60
    afirefish  
       2021-03-23 16:50:18 +08:00
    兄弟,跑路吧。或者出点钱找个外包...
    恕我直言,你这个问题是个初级程序员都不会问的。
    cs419
        61
    cs419  
       2021-03-23 16:58:43 +08:00
    懂这个的 都知道你碰到的是啥问题
    但你没说你是个啥岗位

    简单两点:
    页面由后端渲染 就是 jsp freemarker 读取查询出的数据 生成页面
    前后端分离,数据以 json 格式返回 前端 ajax 拿到数据 爱咋的咋的
    cs419
        62
    cs419  
       2021-03-23 17:01:55 +08:00
    又琢磨了下
    你们目前是前后端开发都没人了??
    weixiangzhe
        63
    weixiangzhe  
       2021-03-23 17:17:57 +08:00
    先找个外包人员整一下吧
    KuroNekoFan
        64
    KuroNekoFan  
       2021-03-23 19:50:59 +08:00
    霎时间不知道该如何回答,好好想了一下也不知道如何回答
    fmumu
        65
    fmumu  
       2021-03-24 08:43:26 +08:00
    你不会是公司 hr 吧
    Jrue0011
        66
    Jrue0011  
       2021-03-24 09:43:44 +08:00
    看了楼主历史回复是懂 C/C++的,只是单纯没接触过 Java Web 开发吧
    igwen6w
        67
    igwen6w  
       2021-03-24 15:50:00 +08:00
    。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3053 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 00:43 · PVG 08:43 · LAX 16:43 · JFK 19:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.