关于java嵌入html的问题

写一个数据库管理界面,最终要实现能在网页上进行操作,我想用css对界面进行美化,
请问我还需要用java写一个图形界面吗?还是直接用html写一个界面呢?

ps:大二狗一个,只学了c,c++,sql,java,很多都不懂,请原谅我的无知

8个回答

java嵌入html,其实就是JSP(Java Server Pages), .html是静态网页,.jsp是动态网页。界面可以用Jsp实现,逻辑控制可以用Servlet实现。

最终要在网页上操作就不需要java的图形界面了(swing) 楼主可以参考phpMyAdmin 是一个web的数据库管理工具 桌面版的推荐navicat

直接在 Jsp 界面进行美化就行(jsp 可以看做是 前端支持 HTML 标签)
在 jsp 内还可以嵌入别的 jsp 页面 <%@ include page="jsp-name.jsp"%>

直接使用jsp+css+jquery做界面就OK了。关于页面美化,可以去W3C,bootstrap等网站去看看

直接用html写即可。你说的java图形界面应该是课本里学的GUI编程吧,那个实现的是一个桌面程序,如果你只需要网页端的话可以不写那个。并且网页端的美化要比桌面程序要容易,你上W3C学下css基本用法,有余力再学学JQ,做得界面很不错的

首先你可以使用 HTML 做网页。做完以后,你可以将网页文件转换成 jsp 格式,然后用 java 对jsp文件 操作。
优点:HTML 做界面会更美观,转换成jsp叫简单,

要是网页的话jsp或html都行

果断jsp,html

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
jsp小问题 java代码嵌入到HTML
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.util.Date,java.text.*" %> <% Date nowday=new Date(); //获取当前日期 int hour=nowday.getHours(); //获取日期中的小时 SimpleDateFormat format=new SimpleDateFormat("yyyy-mm-dd HH:mm:ss"); //定义日期格式对象 String time=format.format(nowday); %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>简单获取日期jsp程序</title> </head> <body> <center> <table border="1" width="300"> <tr height="30"> <td align="center">温馨提示!</td> </tr> <tr height="80"> <td align="center">现在时间为:<%=time %></td> </tr> <tr height="70"> <td align="center"> <!-- 一下为嵌入到HTML的java代码,用来生成动态内容 --> <% if(hour>=0&&hour<5){ out.println("现在是凌晨,时间还早,再睡会吧!"); } /* else if(hour>=5&&hour<10) out.println("早上好!"); */ else(hour>=5&&hour<=24){ out.pritnln("此处省略后面"); } %> </td> </tr> </table> </center> </body> </html> 为什么嵌入到 HTML 的 java 代码中的最后一个else那行总是报错,无论是改成 else 还是改成 else if 都报错,错误是:Multiple annotations found at this line: - Syntax error, insert "AssignmentOperator Expression" to complete Assignment - Syntax error, insert ";" to complete Statement
请问在JAVA APP中嵌入HTML是什么技术?
如题所述 请问在JAVA APP中嵌入HTML是什么技术? 在线等!急急!
JAVA Swing中嵌入html代码,但是一直出错
import java.awt.BorderLayout; import java.awt.Container; import java.io.File; import java.io.IOException; import java.net.URL; import java.net.URLClassLoader; import javax.swing.JEditorPane; import javax.swing.JFrame; import javax.swing.WindowConstants; import javax.swing.event.HyperlinkEvent; import javax.swing.event.HyperlinkListener; import javax.swing.text.html.HTMLDocument; import javax.swing.text.html.HTMLFrameHyperlinkEvent; public class Test1 extends JFrame implements HyperlinkListener { public Test1(){ Container c = getContentPane(); setSize(539,412); setTitle("QQ登录界面"); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); JEditorPane pane = new JEditorPane(); pane.setContentType("text/html"); pane.setEditable(false); pane.addHyperlinkListener(this); File file = new File("http://E://Eclipse//workspace//QQ//src//qq//QQ.html"); String path = file.getAbsolutePath(); try { pane.setPage(path); } catch (IOException e) { // TODO 自动生成的 catch 块 //System.out.println("读取页面 " + path + " 出错. " + ); e.printStackTrace(); } pane.setBounds(0, 0, 539, 199); c.add(pane); setVisible(true); } @Override public void hyperlinkUpdate(HyperlinkEvent e) { // TODO 自动生成的方法存根 if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) { JEditorPane pane = (JEditorPane) e.getSource(); if (e instanceof HTMLFrameHyperlinkEvent) { HTMLFrameHyperlinkEvent evt = (HTMLFrameHyperlinkEvent) e; HTMLDocument doc = (HTMLDocument) pane.getDocument(); doc.processHTMLFrameHyperlinkEvent(evt); } else { try { pane.setPage(e.getURL()); } catch (Throwable t) { t.printStackTrace(); } } } } public static void main(String[] args) { // TODO 自动生成的方法存根 new Test1(); } } 图片是运行结果和异常![图片说明](https://img-ask.csdn.net/upload/201705/19/1495169182_697625.png) ![图片说明](https://img-ask.csdn.net/upload/201705/19/1495169193_249812.png)
java中将word文档转换为html文件,不过重点是样式为内联css样式
java中将word文档转换为html文件,不过重点是样式为内联css样式 在网上搜索的全部都是嵌入式css样式,这样的话将html内容导入到百度文本编辑器中的时候样式全部去掉了
java web网页文件后缀的问题
在网页开发中,网页文件命名HTML和JSP文件有什么区别吗?我写了Java和HTML在一个文件里面,后缀无论是哪一个感觉没有影响啊。是不是和CSS,JS文件一样,它们都是可以嵌入HTML的代码,当需要多次使用以及代码结构清晰等问题,将一个文件中的一种语言的代码全部提取到以它的语言命名的文件夹里面? 现在由于刚学习web开发,短时间内接触了这几门语言,写代码的时候文件后缀都不知道有什么影响,浏览器在打开这些文件的时候有区别吗? **希望各位能够解惑一下,非常感谢!**
jsp里面嵌入一个html文件乱码问题
![图片说明](https://img-ask.csdn.net/upload/201702/17/1487310925_480519.png) ![图片说明](https://img-ask.csdn.net/upload/201702/17/1487310935_485945.png) ![图片说明](https://img-ask.csdn.net/upload/201702/17/1487310944_126536.png) 由于嵌入了一个无头无尾的HTML文件并且改了里面的内容。导致乱码问题,求教如何解决!!
在jsp页面中嵌入java代码报错
showMessage.jsp: <%@ page language="java" import="java.util.*,demo2.Message" pageEncoding="utf-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>查看问题</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> .line { border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: #666; height: 10px; } body { margin-right: auto; margin-left: auto; text-align: center; max-width: 960px; } #main { border: 3px solid #999; background-color: #f5f5f5; padding: 1px; margin-right: auto; margin-left: auto; width: 960px; } #main table tr td { white-space: normal; } </style> </head> <body> <div id="main"> <div align="center"> <h1> 留言列表 </h1> </div> <% response.setCharacterEncoding("utf-8"); int p = 1; ArrayList messageList = (ArrayList) request.getAttribute("list"); int prep = p; // 上一页 int nextp = p; // 下一页 if (messageList.size() == 5) { nextp = p + 1; } if (p > 1) { prep = p - 1; } if (!messageList.isEmpty()) { for (int i = 0; i < messageList.size(); i++) { Message message = (Message) messageList.get(i); %> <table width="700" border="1" align="center" cellpadding="2" cellspacing="0"> <tr> <td width="130" align="right"> 姓名: </td> <td width="556" align="left"><%=message.getName()%></td> </tr> <tr> <td align="right"> 主题: </td> <td colspan="3" align="left"><%=message.getTitle()%></td> </tr> <tr> <td align="right"><span class="STYLE1">内容</span>: </td> <td colspan="3" align="left"><%=message.getContent()%></td> </tr> <div> <span style="float: right; clear: both"> <%=message.getTime()%> </span> <span><%=i + 1%>楼</span> </div> </table> <br> <div class="line"> </div> <br> <% } } else { out.print("<br><br>还没有留言!<br><br>"); } %> <div align="center"> <input type="button" value="上一页" onclick="window.location.href('MessageServlet?action=list&p=<%=prep%>')"> &nbsp; <input type="button" value="下一页" onclick="window.location.href('MessageServlet?action=list&p=<%=nextp%>')"> &nbsp; <input type="button" value="返回" onclick="window.location.href('../message.jsp')"> </div> </div> </body> </html> Mseeage.java: package demo2; public class Message { private int id; private String name; private String title; private String content; private String time; public String getTime() { return time; } public void setTime(String time) { this.time = time; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } } ![图片说明](https://img-ask.csdn.net/upload/201612/25/1482657466_171097.png) ![图片说明](https://img-ask.csdn.net/upload/201612/25/1482657524_998170.png)
web语音通话到服务器转发到嵌入式客户端
我现在要做的一个工作是web端语音喊话,通过tomcat端的服务转到一个linux内核的一个嵌入式客户端。现在压根没有思路,也没有找到相对的技术支持。求助
Java怎么前后端分离?
最近在网络上搜索java前后端分离技术但是很多说法比较深奥看不懂,最近我想开发一款手机APP程序 由于本人安卓编程技术不是很熟练所以就想安卓APP界面使用html静态页面代替!我的思路是这样的:所用的技术是SSM ,我把html界面画好之后嵌入到安卓中 当用户打开APP的时候APP加载html界面 然后html中的数据通过js中的ajax从服务器获取数据。 然后遇到了几个问题: **第一:js中的ajax获取不到服务器控制器层返回的数据(重点)** 第二:如果获取到了的话MVC配置文件中的拦截器怎么解决! [图片说明](https://img-ask.csdn.net/upload/201810/21/1540116976_312180.jpg)
如何用java代码向html文件中添加代码
这是一个GUI中嵌入浏览器的聊天框。信息显示区是用JEditorPane打开html来显示聊天信息。现在我发送信息之后要如何向html中添加代码来达到聊天的效果![![图片说明](https://img-ask.csdn.net/upload/201706/25/1498376887_892854.png)图片说明](https://img-ask.csdn.net/upload/201706/25/1498376883_522382.png)
嵌入式安卓附件下载始终为0kb
附件在安卓机上无法下载,在ios上可以下载,直接用浏览器也可以下载。 前端代码: ``` window.location.href = G_CTX_PATH + "/mobile/xxxx/downloadFile?attachmentId="+attachmentId+"&userToken="+encodeURIComponent(encodeURIComponent(userToken)); ``` 后端是通过java io 去读取响应的。 抓包看的,数据正常响应回来,但是安卓机保存后就0kb。 我们前端代码是 html5嵌入在别人的app里面的,点击附件下载时。app就代码本机浏览器去访问链接。 感觉应该是前端处理问题,求大佬告知。 前段换成这种方式了 function downloadFiles(attachmentId,name){ //var TK = $("#TK").val(); //"&TK="+TK+ var userToken =$("#userToken").val(); //window.location.href =G_CTX_PATH + "/mobile/common/downloadFile?attachmentId="+attachmentId+"&userToken="+encodeURIComponent(encodeURIComponent(userToken)); openDownloadDialog(G_CTX_PATH + "/xxxx/common/downloadFile?attachmentId="+attachmentId+"&userToken="+encodeURIComponent(encodeURIComponent(userToken)),name); }; function openDownloadDialog(url, saveName) { if(typeof url == 'object' && url instanceof Blob) { url = URL.createObjectURL(url); // 创建blob地址 } var aLink = document.createElement('a'); aLink.href = url; aLink.download = saveName || ''; // HTML5新增的属性,指定保存文件名,可以不要后缀,注意,file:///模式下不会生效 var event; if(window.MouseEvent) event = new MouseEvent('click'); else { event = document.createEvent('MouseEvents'); event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); } aLink.dispatchEvent(event); }; 补充:报文信息 第一次请求 GET http://xxx.xxx.xxx.xxx:9088/xxxxx/xxxx/common/downloadFile?attachmentId=xxxx&userToken=xxxxx HTTP/1.1 Host: xxx.xxx.xxxx.xxx:9088 Connection: keep-alive Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Linux; Android 9; HWI-AL00 Build/HUAWEIHWI-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Encoding: gzip, deflate Accept-Language: zh-Hans-CN,zh-Hant-HK;q=0.8,en-US;q=0.6 Cookie: JSESSIONID=xxxxxxx HTTP/1.1 200 OK Content-Disposition: attachment; filename="xxxx.jpg" Content-Type: application/octet-stream;charset=UTF-8 Content-Length: 1066724 Date: Wed, 30 Oct 2019 02:20:51 GMT Server: OWN/8.5 第二次 GET http://xxx.xxx.xxx.xxx:9088/xxxx/mobile/xxxx/downloadFile?attachmentId=xxx&userToken=xxxx HTTP/1.1 Host: xxx.xxx.xxx.xxx:9088 Connection: Keep-Alive Accept-Charset: utf-8 Accept-Encoding: utf-8 Accept-Language: zh-CN User-Agent: Mozilla/5.0 (Linux; Android 9; HWI-AL00 Build/HUAWEIHWI-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.36 Range: bytes=0- Referer: ext:/lp:home Accept: multipart/mixed,text/html,image/png,image/jpeg,image/gif,image/x-xbitmap,application/vnd.oma.dd+xml,*/* Cookie: JSESSIONID=xxxx HTTP/1.1 200 OK Date: Wed, 30 Oct 2019 02:21:03 GMT Server: OWN/8.5 Content-Length: 48 Terminate because of csrf!http://xxx.xxxx.xxx.xxx ===========================================分割线 问题已经解决了,前段换了上面的第二种js 后台的话被拦截器拦截了,有csrf防攻击拦截器, 本来打算优雅点解决,通过js置空referer但是前端功底太弱,没办反只能后台改了拦截器降低拦截力度,只拦截post请求。帖子结了,分给一楼捧场的小伙伴了。
jsp页面如何通过导航栏按钮实现对 iframe标签所嵌入网页的控制
最近用到了iframe标签,但我只会直接嵌入一个静态的页面啊,就像这样: ``` <iframe src="http://www.baidu.com" height="400" width="700" frameborder="0"></ifrmae> ``` 如果我想通过导航栏的按钮来控制ifame所嵌入的内容,应该怎样做? 我知道导航栏按钮那里有个 a href=XXXX iframe这里有个 src=XXXXX,如何建立它们之间的对应关系?
嵌入applet的html页面,不能运行,求大神解答!!
为什么双击html文件,浏览器运行时,总是显示一张黑图,提示缺少插件![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/9.gif)
html中iframe的高度问题
我在项目A的jsp中嵌入了一个iframe,iframe的src 的路径是项目B ,我想要iframe的高度可以根据iframe中嵌的内容的高度实现自适应,跪求大神帮忙
Java 实现将cmd窗口嵌入Web页面,或获取cmd窗口IO绑定到页面某个组件并进行实时刷新
``` 现有一个业务需要将后台中启动的某个bat批处理文件所打印的内容实时的在web前端界面进行展示。 后台启动cmd使用的是 Process process = Runtime.getRuntime().exec("cmd /c start F:\\test.bat"); 方式, 其中的start是一个难点,考虑去掉,直接使用 cmd /c F://test.bat 不开启一个新的cmd窗口在后台执行,然后使用Process获取到 InputStream 但关键点在于**怎么将数据实时的刷新到HTML **? 有没有前端组件可用?还有一个难点在于 整个的cmd调用过程是开启新的线程异步执行的。 另外如果能解决以上难点还想请教一下能不能使用加 start 的命令启动?能的话又怎么获取cmd输出的内容? 昨天构思了一下,有很多难点没能突破,所以请教有开发过相关业务的大神,最好能加个好友聊一下,Thank you!!! QQ:1611826890 ```
Java SWT操作Excel(OLE),如何给单元格区域赋值?
import java.io.File; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.ole.win32.OLE; import org.eclipse.swt.ole.win32.OleAutomation; import org.eclipse.swt.ole.win32.OleClientSite; import org.eclipse.swt.ole.win32.OleFrame; import org.eclipse.swt.ole.win32.Variant; import org.eclipse.swt.program.Program; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Menu; import org.eclipse.swt.widgets.Shell; public class ExcelShell { public static void main(String[] args) { new ExcelShell().open(); } public void open() { Display display = Display.getDefault(); Shell shell = new Shell(); shell.setSize(600,400); shell.setText("Excel Window"); shell.setLayout(new FillLayout()); //使Excel的菜单栏显示 shell.setMenuBar(new Menu(shell,SWT.BAR)); createExcelPart(shell); shell.open(); while(!shell.isDisposed()){ if(!display.readAndDispatch()) { } } display.sleep(); shell.dispose(); display.dispose(); } /** * 使Excel嵌入到shell中 * @param shell */ private void createExcelPart(Shell shell) { //OleFrame实际上是一个Composite,用于放置OLE控件 OleFrame oleFrame = new OleFrame(shell,SWT.NONE); //OleClientSite提供一个场所用于把OLE对象嵌入到容器中,在这里“Excel.Sheet”表示的OLE对象是Excel File file01=new File("D:"+File.separator+"ABC.xlsx"); OleClientSite clientSite = new OleClientSite(oleFrame, SWT.NONE, file01); setValueForA1Cell(clientSite); //OleClientSite在显示OLE对象时所做的动作,这里的动作是OLEIVERB_SHOW,显示 clientSite.doVerb(OLE.OLEIVERB_SHOW); } /** * Sheet的Id */ private static final int SHEET_ID = 0x000001e5; /** * 单元格的Id(Range) */ private static final int CELL_ID = 0x000000c5; /** * 单元格值的Id */ private static final int CELL_VALUE_ID = 0x00000006; /** * 为第一个Sheet页的A1单元格赋值 * @param clientSite */ /* * 原理: 使用SWT进行OLE操作时,所有的对OLE对象的引用都是通过OLE定义的Id获得, 所有的动作都通过OleAutomation对象进行,OleAutomation可以代表任一OLE对象,如Workbook、Worksheet、Range。 可以通过getProperty()方法获得它的属性,也可以用setProperty()方法为它的属性赋值 Variant对象一般是封装了OLE对象的值,可以通过它进行值传入及获得相应的值,也可以通过它获得OleAutomation对象 */ private void setValueForA1Cell(OleClientSite clientSite) { //获得Excel的workbook对象, //在这里OleClientSite对象就代表着Workbook对象,需要把OleClientSite转换成OleAutomation对象以便进行下一步动作 OleAutomation workbook = new OleAutomation(clientSite); /** * 获得workbook的第一个Sheet页, *需要知道Worksheet的Id(0x000001e5),因为在OLE中获得Worksheet的方法是的返回值是一个数组, *所以需要传入一个参数“1”,表示数组的第一个元素,在这里参数“1”是通 过new Variant[]{new Variant(1)}传入的 */ OleAutomation sheet = workbook.getProperty(SHEET_ID,new Variant[]{new Variant(1)}).getAutomation(); /** * 获得Sheet页的A1单元格 *在OLE中代表单元格的是Range,可以表示一个单元格也可以表示一个单元格区域。实际上一个单元格就是一个特殊的Range, *Range的Id是0x000000c5。Range是通过Worksheet 获得的,需要传入的参数为字符串(用Variant进行包装), *可以为一个(代表一个单元格,如new Variant[]{new Variant("A1")}), *也可以为两个(代表一个单元格区域,如new Variant[]{new Variant("A1"), new Variant("B2")}), *因为我们要对单元格进行赋值,所以需要获得Range的OleAutomation对象 */ Variant cellA1Variant = sheet.getProperty(CELL_ID ,new Variant[]{new Variant("A1"), new Variant("B2")}); OleAutomation cellA1_B2= cellA1Variant.getAutomation(); /** * 为A1单元格赋值,Range的值(Value)的属性的Id是0x00000006,在这里传入一个字符串作为单元格的值 */ cellA1_B2.setProperty(CELL_VALUE_ID , new Variant[] {new Variant("Heo"),new Variant("GGH"),,new Variant("OOP"),new Variant("COM")}); } } 注:采用cellA1_B2.setProperty赋4个值则不能成功,显示空白,也不报错 若cellA1_B2.setProperty只传入一个值,则四个单元格都能显示传入的值 **求教:如何能正确给四个单元格都赋值?** **附上所用SWT的OLE包 API地址:** http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fswt%2Fole%2Fwin32%2Fpackage-summary.html&cp=2_1_0_182 **所采用getProperty、setProperty方法在OleAutomation类里**
为什么 elasticsearch 获取节点信息失败?
在 spring boot 项目中即成集成 elasticsearch(dao层数据与es交互使用的的是 spring-data-elasticsearch)首先安装了服务器端的 es 服务,和 head 插件,es 服务启动正常,node-1 为默认主节点,my-cluster 为集群名,如图: ![图片说明](https://img-ask.csdn.net/upload/201605/24/1464076273_991814.png) 在程序中,使用嵌入式node启动节点正常,方式如下: ``` Node node = NodeBuilder.nodeBuilder().node(); node.start(); ``` 但是,如果使用 TransportClient 建立 es 的 Client,方式如下: ``` TransportClient client = new TransportClient(settings); client.addTransportAddress(new InetSocketTransportAddress("127.0.0.1", 9300)); ``` 这是 ES 2.3 官网上面提供的 TransportClient 方式:https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/transport-client.html 使用 TransportClient 方式,启动程序后,程序可以正常启动,但是控制台一直不停报错,貌似是在一直监测节点,而节点一直没有被发现,所以不停报错,错误信息如下,应用程序控制台错误信息: ``` 2016-05-23 19:40:15.823 INFO 27655 --- [ main] org.elasticsearch.client.transport : [Aliyah Bishop] failed to get node info for [#transport#-1][XXX-MBP.lan][inet[/127.0.0.1:9300]], disconnecting... org.elasticsearch.transport.RemoteTransportException: Failed to deserialize exception response from stream Caused by: org.elasticsearch.transport.TransportSerializationException: Failed to deserialize exception response from stream at org.elasticsearch.transport.netty.MessageChannelHandler.handlerResponseError(MessageChannelHandler.java:173) at org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived(MessageChannelHandler.java:125) at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.elasticsearch.common.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791) at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:296) at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462) at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443) at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303) at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559) at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:268) at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:255) at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88) at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108) at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:318) at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.io.StreamCorruptedException: Unsupported version: 1 at org.elasticsearch.common.io.ThrowableObjectInputStream.readStreamHeader(ThrowableObjectInputStream.java:46) at java.io.ObjectInputStream.<init>(ObjectInputStream.java:299) at org.elasticsearch.common.io.ThrowableObjectInputStream.<init>(ThrowableObjectInputStream.java:38) at org.elasticsearch.transport.netty.MessageChannelHandler.handlerResponseError(MessageChannelHandler.java:170) ... 23 common frames omitted …………. failed to load elasticsearch nodes : org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: [] ``` es 控制台报错信息: ``` [2016-05-23 21:45:56,807][WARN ][transport.netty ] [node-1] exception caught on transport layer [[id: 0x8e4b89bc, /127.0.0.1:62566 => /127.0.0.1:9300]], closing connection java.lang.IllegalStateException: Message not fully read (request) for requestId [233], action [cluster/nodes/info], readerIndex [39] vs expected [57]; resetting at org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived(MessageChannelHandler.java:121) at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791) at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296) at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462) at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443) at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303) at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791) at org.elasticsearch.common.netty.OpenChannelsHandler.handleUpstream(OpenChannelsHandler.java:75) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559) at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268) at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255) at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88) at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108) at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:337) at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) ``` 而且,当我使用嵌入式node启动节点后,系统会自动启动一个node节点,node.name 也是随机的,并且并没有将该节点加入启动的es集群中,我加入的索引和数据也不能出现在 my-cluster 集群中 所以有两个问题: 1、为什么我使用嵌入式node启动节点,启动后的节点不会加入到集群中? 2、使用 TransportClient 方式建立 Client,启动程序后,程序的控制台,和服务器端的es一直报错,获取节点信息失败,是什么原因?即上面的错误信息 下面是环境版本信息: 服务器端 es 版本:2.3.3 jdk 版本:1.7.0_79 spring-data-elasticsearch 版本:1.2.0.RELEASE(即:elasticsearch-1.4.4.jar) 服务器端 es 配置,elasticsearch.yml: cluster.name: my-cluster node.name: node-1 http 端口为:9200 节点间的通信端口为:9300 关于第二个问题尝试了很多解决方案,比如: 1、应用 和 es 的 jdk 环境版本不一致。已检查过一致 https://github.com/elastic/elasticsearch/issues/3835 2、es 多个节点之间的JDK版本不一致。我使用的只是单节点,并且都在我本地机器上 http://jontai.me/blog/2013/06/elasticsearch-remotetransportexception-failed-to-deserialize-exception-response-from-stream/ 3、idk 版本过低,建议1.7+。已是1.7+ 最后附上两种启动节点方式的完整代码 1、嵌入式 node 启动 ``` import org.elasticsearch.client.Client; import org.elasticsearch.node.Node; import org.elasticsearch.node.NodeBuilder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories; @Configuration @EnableElasticsearchRepositories(basePackages = "xx.xxx.domain.repository.elastic") public class ElasticsearchConfiguration { @Bean public Client client() { Node node = NodeBuilder.nodeBuilder().node(); node.start(); return node.client(); } } ``` 2、TransportClient 方式 ``` import org.elasticsearch.client.Client; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.settings.ImmutableSettings; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.transport.InetSocketTransportAddress; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.elasticsearch.core.ElasticsearchOperations; import org.springframework.data.elasticsearch.core.ElasticsearchTemplate; import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories; @Configuration @EnableElasticsearchRepositories(basePackages = "xx.xxx.domain.repository.elastic") public class ElasticsearchConfiguration { @Bean public Client client() { TransportClient client = new TransportClient(); client.addTransportAddress(new InetSocketTransportAddress("127.0.0.1", 9300)); return client; } @Bean public ElasticsearchOperations elasticsearchTemplate() { return new ElasticsearchTemplate(client()); } } ```
写留言板,需要注意哪些安全问题
我的一个朋友写了一个留言板,请别人测试不到一天就挂了,我想问下需要注意拿些问题. [b]问题补充:[/b] 我的一个朋友写了一个留言板,请别人测试不到一天就挂了,我想问下需要注意拿些问题. sorry 语言是java,我现在关心的不是"灌水". 我想知道就是通常的写法有没有"恶意代码嵌入"的可能,如果有需要注意哪些?,我朋友的留言板,不知别人是怎么弄的,就是被代码给挂了. 我不知道怎么个"恶意嵌入",也不知道怎么个"注意",在网上找了下只知道一些普通的html过滤.简单的说,就是安全性.
echarts动态获取后台数据
一.现在我有JSP页面,页面里面有个div中有一个panel面板,面板种面嵌入的map地图。 ``` <div class="panel panel-default"> <div class="panel-heading"><h3 class="panel-title"><i class="fa fa-bar-chart-o fa-fw"></i>中国地图 </h3></div> <div class="panel-body"> <div style="mini-width:400px;height:350px" data-toggle="echarts" data-type="map" data-url="pop/echarts-mapData.html"></div> </div> </div> </div> ``` 二。其中,data-url="pop/echarts-mapData.html",引入的是一个外部html页面,但是里面是死数据,并且是JSON格式的数据。代码如下: ``` { "tooltip": { "trigger": "item" }, "setTheme": { "theme": "macarons" }, "legend": { "orient": "vertical", "x": "left", "data": [ "党员人数" ] }, "dataRange": { "min": 0, "max": 300, "x": "left", "y": "bottom", "text": [ "高", "低" ], "calculable": true }, "toolbox": { "show": true, "orient": "vertical", "x": "right", "y": "center", "feature": { "mark": { "show": true }, "dataView": { "show": true, "readOnly": false }, "restore": { "show": true }, "saveAsImage": { "show": true } } }, "series": [ { "name": "党员人数", "type": "map", "mapType": "重庆|江北区", "roam": false, "itemStyle": { "normal": { "label": { "show": true } }, "emphasis": { "label": { "show": true } } }, "data": [ { "name": "江北区", "value": 299 } ] } ] } ``` 三。很明显,↑↑↑↑↑↑上面的代码直接就是地图里面的各种参数(虽然数据是死的)。 图片效果如下: ![图片说明](https://img-ask.csdn.net/upload/201711/08/1510132266_325728.png) 问题: echarts的官网我也逛过多次了,但是例子都是新建的一个html网页,在里面加入的js代码,并配合ajax请求获取的后台数据。但是这样的话,加载出来的地图却是一个单独的html网页效果而已,并不能达到我嵌入JSP页面的div中这样的效果。 所以,请教各位能伸出援手,帮帮忙。---我的目的就是想,不要单独的一个html页面,而是就像上面的死数据一样,嵌入在JSP页面中,只是数据变为从后台获取而已。
对计算机专业来说学历真的重要吗?
我本科学校是渣渣二本,研究生学校是985,现在毕业五年,校招笔试、面试,社招面试参加了两年了,就我个人的经历来说下这个问题。 这篇文章很长,但绝对是精华,相信我,读完以后,你会知道学历不好的解决方案,记得帮我点赞哦。 先说结论,无论赞不赞同,它本质就是这样:对于技术类工作而言,学历五年以内非常重要,但有办法弥补。五年以后,不重要。 目录: 张雪峰讲述的事实 我看到的事实 为什么会这样 ...
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
小白学 Python 爬虫(25):爬取股票信息
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Linux基础入门 小白学 Python 爬虫(4):前置准备(三)Docker基础入门 小白学 Python 爬虫(5):前置准备(四)数据库基础 小白学 Python 爬虫(6):前置准备(...
小知识:浅谈二维码的生成和识别原理
目录 前言 条形码 静态二维码 二进制生成图形码 二维码的定位 前言 不知不觉中,我们的生活到处充满了二维码。登录账户需要二维码;加好友需要二维码;共享单车需要二维码;商品包装上也有二维码;甚至连楼下卖水果的阿姨手里都拿张二维码收款。那么,有没有想过这个二维码到底是什么东西呢?那么这个二维码的图案会不会多到不小心重合了呢? 条形码 在二维码出现之前,大行其道的...
[享学Jackson] 一、初识Jackson -- 世界上最好的JSON库
Jackson是一个简单的、功能强大的、基于Java的**应用库**。它可以很方便完成**Java对象**和**json对象(xml文档or其它格式)**进行互转。Jackson社区相对比较活跃,更新速度也比较快。Jackson库有如下几大特性: - 高性能,稳定:低内存占用,对大/小JSON串,大/小对象的解析表现均很优秀 - 流行度高:是很多流行框架的默认实现 - 容易使用:提供高层次的API,极大简化了日常使用 - 无需自己手动创建映射:内置了绝大部分序列化时和Java类型的映射关系 - 干净的JSO
卸载 x 雷某度!GitHub 标星 1.5w+,从此我只用这款全能高速下载工具!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个喜欢在网上收集各种资源的蒟蒻… 网上资源眼花缭乱,下载的方式也同样千奇百怪,比如 BT 下载,磁力链接,网盘资源等等等等,下个资源可真不容易,不一样的方式要用不同的下载软件,因此某比较有名的 x 雷和某度网盘成了我经常使用的工具。 作为一个没有钱的穷鬼,某度网盘几十 kb 的下载速度让我...
世界上最牛的网络设备,价格低廉,其貌不扬......
夜深人静,电视和电脑都已经关机休息,但是我还在默默工作,我安静地趴在你家中的某个地方,7*24小时不眠不休,任劳任怨,目的只有一个,能让你舒服地躺在床上,畅快地刷手机!没错,这就是我,...
《面试宝典》2019年springmvc面试高频题(java)
前言 2019即将过去,伴随我们即将迎来的又是新的一年,过完春节,马上又要迎来新的金三银四面试季。那么,作为程序猿的你,是否真的有所准备的呢,亦或是安于本职工作,继续做好手头上的事情。 当然,不论选择如何,假如你真的准备在之后的金三银四跳槽的话,那么作为一个Java工程师,就不可不看了。如何在几个月的时间里,快速的为即将到来的面试进行充分的准备呢? 1、什么是Spring MVC ?简单...
一名大专同学的四个问题
【前言】   收到一封来信,赶上各种事情拖了几日,利用今天要放下工作的时机,做个回复。   2020年到了,就以这一封信,作为开年标志吧。 【正文】   您好,我是一名现在有很多困惑的大二学生。有一些问题想要向您请教。   先说一下我的基本情况,高考失利,不想复读,来到广州一所大专读计算机应用技术专业。学校是偏艺术类的,计算机专业没有实验室更不用说工作室了。而且学校的学风也不好。但我很想在计算机领...
复习一周,京东+百度一面,不小心都拿了Offer
京东和百度一面都问了啥,面试官百般刁难,可惜我全会。
轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API ...
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
(总结)阿里面试问了ArrayList,都问了啥?
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
2020年1月中国编程语言排行榜,python是2019增长最快编程语言
编程语言比例 排名 编程语言 最低工资 工资中位数 最低工资 最高工资 人头 人头百分比 1 rust 20713 17500 5042 46250 480 0.14% 2 typescript 18503 22500 6000 30000 1821 0.52% 3 lua 18150 17500 5250 35000 2956 0.84% 4 go 17989 16...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
史上最全的IDEA快捷键总结
现在Idea成了主流开发工具,这篇博客对其使用的快捷键做了总结,希望对大家的开发工作有所帮助。
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
谁是华为扫地僧?
是的,华为也有扫地僧!2020年2月11-12日,“养在深闺人不知”的华为2012实验室扫地僧们,将在华为开发者大会2020(Cloud)上,和大家见面。到时,你可以和扫地僧们,吃一个洋...
Idea 中最常用的10款插件(提高开发效率),一定要学会使用!
学习使用一些插件,可以提高开发效率。对于我们开发人员很有帮助。这篇博客介绍了开发中使用的插件。
AI 没让人类失业,搞 AI 的人先失业了
最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 “这里写我跑路的消息实在太夸张了。” 王葱葱哼笑一下,把消息分享给群里。 阿杰也看了消息,笑了笑。在座几位也都笑了。 王葱葱是个有名的人物,21岁那年以全额奖学金进入 KMU 攻读人工智能博士,累计发表论文 40 余篇,个人技术博客更是成为深度学习领域内风向标。 ...
立即提问