BASE64Encoder是内部专用 API, 可能会在未来发行版中删除

BASE64Encoder是内部专用 API, 可能会在未来发行版中删除;
这咋办嘛

2个回答

你只要不更新jdk版本就没有事。
另外,你也可以使用apache common lang开源包中的Base64工具,spring本身也有自己写的base64工具类,不一定非要使用jdk自带的

首先,JDK 说弃用都是有相关替代类的;
其次,可以不用这个而用 apache 的 commons-codec-1.10.jar 这个包的 org.apache.commons.codec.binary.Base64 类,而且它处理的 Base64 编码更好一些,明显的优势是会去掉换行符号,避免解码错误。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
JAVA 使用 Decoder decoder = Base64.getDecoder();函数报错无法解析Base64?
在调用摄像头使用 Decoder decoder = Base64.getDecoder();函数时会报错无法解析Base64,这个代码比较久,一开始不能用是因为sun.misc.BASE64Encoder jar包在高版本中没有了,百度之后我也正确的导入了import java.util.Base64.Decoder;包,但就是报错。 ``` { if (imgStr == null) { return false; } //Encoder encoder = Base64.getEncoder(); Decoder decoder = Base64.getDecoder(); //Base64解码 byte[] b = decoder.decode(imgStr); //如果目录不存在,则创建 File file = new File(filePath); if (!file.exists()) { file.mkdirs(); } ```
des 加密中BASE64Encoder找不到jar包问题
用了一个des 加密中util工具类,其中有用到BASE64Encoder这个类,是位于rt.jar这个包下吧,上百度上查的办法都是在build path 里边加入jre system library,也确实是可行,但是过一会jre system library就消失了,我jdk用的1.8,但是项目好像是基于1.6,是这个原因么?但是当我直接导入1.6的rt.jar时程序就根本运行不起来了,一直launching。。。。![图片说明](https://img-ask.csdn.net/upload/201507/27/1437982160_8128.png)
eclipse import语句标记上有语法错误,删除这些标记;找不到问题在哪,求大佬解惑
![图片说明](https://img-ask.csdn.net/upload/201912/25/1577282527_104549.png) ``` package com.baidu.ai.aip.auth; import java.util.Base64.Encoder; import java.io.*; import java.util.Base64.Decoder; //import java.util.Base64.*; BASE64Encoder encoder = Base64.getEncoder(); //在代码中获取BASE64Decoder //BASE64Decoder decoder = Base64.getDecoder(); //在代码中获取BASE64Decoder BASE64Decoder decoder = Base64.getDecoder(); //import sun.misc.BASE64Encoder; /** * 图片转化base64后再UrlEncode结果 */ public class BaseImg64 { /** * 将一张本地图片转化成Base64字符串 */ public static String getImageStrFromPath(String imgPath) { InputStream in; byte[] data = null; // 读取图片字节数组 try { in = new FileInputStream(imgPath); data = new byte[in.available()]; in.read(data); in.close(); } catch (IOException e) { e.printStackTrace(); } // 对字节数组Base64编码 BASE64Encoder encoder = new BASE64Encoder(); // 返回Base64编码过再URLEncode的字节数组字符串 return URLEncoder.encode(encoder.encode(data)); } } ```
这个BASE64Encoder的加密方法的解密方法怎么写?
public class BASE64Encoder { private static char[] codec_table = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/' }; public BASE64Encoder() { } public static String encode(byte[] a) { int totalBits = a.length * 8; int nn = totalBits % 6; int curPos = 0;// process bits StringBuffer toReturn = new StringBuffer(); while (curPos < totalBits) { int bytePos = curPos / 8; switch (curPos % 8) { case 0: toReturn.append(codec_table[(a[bytePos] & 0xfc) >> 2]); break; case 2: toReturn.append(codec_table[(a[bytePos] & 0x3f)]); break; case 4: if (bytePos == a.length - 1) { toReturn.append(codec_table[((a[bytePos] & 0x0f) << 2) & 0x3f]); } else { int pos = (((a[bytePos] & 0x0f) << 2) | ((a[bytePos + 1] & 0xc0) >> 6)) & 0x3f; toReturn.append(codec_table[pos]); } break; case 6: if (bytePos == a.length - 1) { toReturn.append(codec_table[((a[bytePos] & 0x03) << 4) & 0x3f]); } else { int pos = (((a[bytePos] & 0x03) << 4) | ((a[bytePos + 1] & 0xf0) >> 4)) & 0x3f; toReturn.append(codec_table[pos]); } break; default: // never hanppen break; } curPos += 6; } if (nn == 2) { toReturn.append("=="); } else if (nn == 4) { toReturn.append("="); } return toReturn.toString(); } }
网络图片 转base64问题
``` public static String imgPathToBase64(String imgFile) { InputStream in = null; byte[] data = null; try { URL url = new URL(imgFile); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); in = conn.getInputStream(); ByteArrayOutputStream output = new ByteArrayOutputStream(); byte[] buffer = new byte[2048]; int n = 0; while (-1 != (n = in.read(buffer))) { output.write(buffer, 0, n); } data = output.toByteArray(); BASE64Encoder encoder = new BASE64Encoder(); return encoder.encode(data); } catch (IOException e) { e.printStackTrace(); return ""; } } ``` 这段代码在以前的工程能把网络图片转出正确的base64编码 现在 无论我传的url图片是什么 转出来的结果都一样 而且不是那张图片的base64编码 究竟什么原因 ,我实在想不通了
js怎么获取base64文件流?
我通过java生成了一个base64的String,怎么传到前台js中?我的代码如下,传不过去 InputStream in = null; byte[] data = null; // 读取图片字节数组 try { in = new FileInputStream(imgFile); data = new byte[in.available()]; in.read(data); in.close(); } catch (IOException e) { e.printStackTrace(); } // 对字节数组Base64编码 BASE64Encoder encoder = new BASE64Encoder(); String encodeStr = encoder.encode(data); System.out.println(encodeStr); return encodeStr;// 返回Base64编码过的字节数组字符串 } //调用上面方法获取s String s = EdorPubFun.getPDFStr(reportPathName);// //将流传给js <html> <script language="javascript"> parent.fraInterface.GDYMBX_ShowPDFSign("<%=s%>"); </script> </html>
maven install 报错,执行的是论坛里的 lfroum 程序。
[INFO] Compiling 240 source files to D:\project\workspace\lforum\webapp\WEB-INF\ classes [INFO] ------------------------------------------------------------------------ [ERROR] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Compilation failure D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[20,21] 找不到符号 符号: 类 TemplateEngine 位置: 软件包 org.xidea.lite D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[21,28] 软件包 org.xidea.lite.parser 不存在 D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[28,9] 找不到符号 符号: 类 TemplateEngine 位置: 类 org.xidea.lite.servlet.TempateServlet D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[51,44] 找不到符号 符号: 类 TemplateEngine 位置: 类 org.xidea.lite.servlet.TempateServlet D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[8,17] 软件包 javax.mail 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[9,17] 软件包 javax.mail 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[10,17] 软件包 javax.mail 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[11,17] 软件包 javax.mail 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[12,17] 软件包 javax.mail 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[13,17] 软件包 javax.mail 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[14,25] 软件包 javax.mail.Message 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[15,26] 软件包 javax.mail.internet 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[16,26] 软件包 javax.mail.internet 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[17,26] 软件包 javax.mail.internet 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[18,26] 软件包 javax.mail.internet 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[23,15] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在 未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES.java:[9,15] 警告:sun.misc.BASE64Decoder 是 Sun 的专用 API,可能会在未 来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES.java:[10,15] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在未 来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[34,31] 警告:com.sun.image.codec.jpeg.ImageFormatException 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[35,31] 警告:com.sun.image.codec.jpeg.JPEGCodec 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[36,31] 警告:com.sun.image.codec.jpeg.JPEGEncodeParam 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[37,31] 警告:com.sun.image.codec.jpeg.JPEGImageEncoder 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[803,56] 警告:com.sun.image.codec.jpeg.ImageFormatException 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \Utils.java:[20,32] 软件包 org.apache.oro.text.regex 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \Utils.java:[21,32] 软件包 org.apache.oro.text.regex 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \Utils.java:[22,32] 软件包 org.apache.oro.text.regex 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES2.java:[17,15] 警告:sun.misc.BASE64Decoder 是 Sun 的专用 API,可能会在 未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES2.java:[18,15] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在 未来版本中删除 D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[60,21] 找不到符号 符号: 变量 DEFAULT_DECORATOR_MAPPING 位置: 类 org.xidea.lite.servlet.TempateServlet.ServletTemplateEngine D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[62,8] 找不到符号 符号: 变量 decoratorMapper 位置: 类 org.xidea.lite.servlet.TempateServlet.ServletTemplateEngine D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[62,31] 找不到符号 符号: 类 DecoratorMapper 位置: 类 org.xidea.lite.servlet.TempateServlet.ServletTemplateEngine D:\project\workspace\lforum\src\main\java\org\xidea\lite\servlet\TempateServlet. java:[69,2] 方法不会覆盖或实现超类型的方法 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[70,3] 找不到符号 符号: 类 Session 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[70,21] 找不到符号 符号: 变量 Session 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[71,3] 找不到符号 符号: 类 Message 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[71,21] 找不到符号 符号: 类 MimeMessage 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[72,19] 找不到符号 符号: 类 InternetAddress 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[73,3] 找不到符号 符号: 类 RecipientType 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[76,18] 软件包 Message 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[79,18] 软件包 Message 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[82,18] 软件包 Message 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[85,18] 软件包 Message 不存在 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[89,31] 找不到符号 符号: 类 InternetAddress 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[92,3] 找不到符号 符号: 类 Multipart 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[92,24] 找不到符号 符号: 类 MimeMultipart 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[93,3] 找不到符号 符号: 类 BodyPart 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[93,23] 找不到符号 符号: 类 MimeBodyPart 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[100,5] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在 未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[100,32] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会 在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[102,16] 找不到符号 符号: 类 MimeBodyPart 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[110,3] 找不到符号 符号: 类 Transport 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[115,12] 找不到符号 符号: 类 MessagingException 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \EmailUtil.java:[118,13] 找不到符号 符号: 类 MessagingException 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.EmailUtil D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES.java:[51,2] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在未 来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES.java:[51,31] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在未 来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES.java:[72,2] 警告:sun.misc.BASE64Decoder 是 Sun 的专用 API,可能会在未 来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES.java:[72,31] 警告:sun.misc.BASE64Decoder 是 Sun 的专用 API,可能会在未 来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[783,2] 警告:com.sun.image.codec.jpeg.JPEGImageEncoder 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[783,29] 警告:com.sun.image.codec.jpeg.JPEGCodec 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[784,2] 警告:com.sun.image.codec.jpeg.JPEGEncodeParam 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[859,2] 警告:com.sun.image.codec.jpeg.JPEGImageEncoder 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[859,29] 警告:com.sun.image.codec.jpeg.JPEGCodec 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \ForumUtils.java:[860,2] 警告:com.sun.image.codec.jpeg.JPEGEncodeParam 是 Sun 的专用 API,可能会在未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \Utils.java:[929,51] 找不到符号 符号: 类 Perl5Compiler 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.Utils D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \Utils.java:[929,14] 找不到符号 符号: 类 Perl5Matcher 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.Utils D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \Utils.java:[930,11] 找不到符号 符号: 类 MalformedPatternException 位置: 类 com.javaeye.lonlysky.lforum.comm.utils.Utils D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES2.java:[119,2] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在 未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES2.java:[119,25] 警告:sun.misc.BASE64Encoder 是 Sun 的专用 API,可能会在 未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES2.java:[133,2] 警告:sun.misc.BASE64Decoder 是 Sun 的专用 API,可能会在 未来版本中删除 D:\project\workspace\lforum\src\main\java\com\javaeye\lonlysky\lforum\comm\utils \des\DES2.java:[133,25] 警告:sun.misc.BASE64Decoder 是 Sun 的专用 API,可能会在 未来版本中删除 [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 13 seconds [INFO] Finished at: Wed Jun 01 23:39:18 CST 2011 [INFO] Final Memory: 13M/41M [INFO] ------------------------------------------------------------------------ D:\project\workspace\lforum>
用Windows media service 搭建的流媒体服务器进行视频直播,怎样可以在手机上观看直播
搭建了一个基于流媒体的直播平台,编码器用的Windows media encoder,服务器用的Windows media service ,播放器用的是Windows media player ,目前的问题是只能在电脑上看直播,问一下各位大神,怎样能做手机上观看。
Android 如何获取视频编码格式是否是H.264?
各位大神,android开发中,用户上传视频后,我想先判断视频是否h264编码的,根据视频编码格式去做相应处理,我用什么方式可以获取到视频是否的H.264格式的。 有看到大神说,这样子可以获取到: File file = new File(filePath); Encoder encoder = new Encoder(); MultimediaInfo info = null; try { info = encoder.getInfo(file); } catch (EncoderException e) { e.printStackTrace(); } VideoInfo video = info.getVideo(); String decoder = video.getDecoder(); 但是我在使用过程中抛了异常:异常--->it.sauronsoftware.jave.InputFormatException 求大神讲解,或提出其他获取视频编码格式的方式。 谢谢!!!
FFmpeg中的avcodec_find_encoder_by_name("libx264")内幕是怎样的呢?
为什么我在win7、vs2015中可以得到一个AVCodec,而在win10、vs2017中却返回NULL呢? 新线索: 在win10、vs2017中,debug模式下此函数返回空,在release模式下不为空;
安卓 图片base64编码
网上看了几种办法,无论是安卓自带的util包下的base64还是sun.misc.Encoder包下的base64, 转码之后都转不回图片,卡了两天了,有人能帮忙么?
springboot logback日志不能每天生成新的日志文件,全部日志在一个文件里?
如题:springboot+logback日志不能每天切割出新的日志文件,全部的日志在一个文件里。 logback配置如下,已经用了 SizeAndTimeBasedRollingPolicy 滚动策略,但是日志不会自动按天切分,只有在重启的时候才会重新读取当天日期,生成新的日志文件。 ``` <?xml version="1.0" encoding="utf-8" ?> <configuration> <appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender"> <layout class="ch.qos.logback.classic.PatternLayout"> <!-- <pattern> %d - %msg%n &lt;!&ndash; 控制台打印日志文件体 时间-信息 &ndash;&gt; </pattern>--> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </layout> </appender> <!-- info日志 --> <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 过滤日志 --> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>DENY</onMatch> <!-- 如果命中就禁止这条日志 --> <onMismatch>ACCEPT</onMismatch> <!-- 如果没有命中就使用这条规则 --> </filter> <encoder> <!--格式化输出,%d:日期;%thread:线程名;%-5level:级别,从左显示5个字符宽度;%msg:日志消息;%n:换行符--> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> <!-- 设置字符集 --> <charset>UTF-8</charset> </encoder> <!-- 滚动策略 --> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <!-- 设置info日志路径 日志文件输出的文件名--> <fileNamePattern>../logs/%d{yyyy-MM}/api-info-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <!--日志文件保留天数--> <MaxHistory>30</MaxHistory> <!--日志文件最大的大小--> <maxFileSize>5MB</maxFileSize> </rollingPolicy> </appender> <!-- error日志 --> <appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 过滤日志 --> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> <!-- 滚动策略 --> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <!-- 设置error日志路径 --> <fileNamePattern>../logs/%d{yyyy-MM}/api-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <!--日志文件保留天数--> <MaxHistory>30</MaxHistory> <!--日志文件最大的大小--> <maxFileSize>5MB</maxFileSize> </rollingPolicy> </appender> <!-- api访问日志 --> <appender name="apiTopicLog" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 过滤日志 --> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <fileNamePattern>../logs/%d{yyyy-MM}/api_topic-%d{yyyy-MM-dd}.%i.log</fileNamePattern> <MaxHistory>30</MaxHistory> <!--日志文件最大的大小--> <maxFileSize>5MB</maxFileSize> </rollingPolicy> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n</pattern> </encoder> </appender> <!-- 1. 输出SQL 到控制台和文件--> <logger name="org.hibernate.SQL" additivity="false"> <level value="DEBUG"/> <!-- <appender-ref ref="fileInfoLog"/>--> <appender-ref ref="consoleLog"/> </logger> <!-- 2. 输出SQL 的参数到控制台和文件--> <logger name="org.hibernate.type.descriptor.sql.BasicBinder" additivity="false" level="TRACE"> <level value="TRACE"/> <!-- <appender-ref ref="fileInfoLog"/>--> <appender-ref ref="consoleLog"/> </logger> <logger name="apiTopic" additivity="false"> <!-- 添加appender --> <appender-ref ref="fileInfoLog"/> <appender-ref ref="apiTopicLog"/> <appender-ref ref="consoleLog"/> </logger> <!-- 设置默认日志级别为INFO --> <root level="info"> <appender-ref ref="consoleLog"/> <appender-ref ref="fileInfoLog"/> <appender-ref ref="fileErrorLog"/> </root> </configuration> ```
java内存溢出问题,不确定哪里出的问题
项目运行的时候出现了内存溢出情况,复现方式无法确定,大概出现了五六次,每次复现的方式都不一样,下面是我用MAT工具分析的dump文件 ![图片说明](https://img-ask.csdn.net/upload/202001/20/1579508231_612899.png) ![图片说明](https://img-ask.csdn.net/upload/202001/20/1579508244_502327.png) 除了hibernate里的那两个对象,其他的1000多万个对象里全是integer类型的对象 这是当时出现的时候产生的异常 ``` 2020-01-17 13:32:55 ERROR [DruidDataSource.java:2469] - create connection SQLException, url: jdbc:mysql://localhost:55060/mcs?useUnicode=true&characterEncoding=utf-8, errorCode 0, state 08S01 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet successfully received from the server was 1 milliseconds ago. The last packet sent successfully to the server was 0 milliseconds ago. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:990) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3517) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3417) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3860) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:864) at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1707) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1217) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2189) at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2220) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2015) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:768) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) at sun.reflect.GeneratedConstructorAccessor118.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:385) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:323) at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1513) at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1578) at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2466) Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost. at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2969) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3427) ... 19 more 2020-01-17 13:33:03 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_preset_rlat failed: java.lang.OutOfMemoryError: GC overhead limit exceeded at net.sf.ehcache.util.MemoryEfficientByteArrayOutputStream.getBytes(MemoryEfficientByteArrayOutputStream.java:65) at net.sf.ehcache.util.MemoryEfficientByteArrayOutputStream.serialize(MemoryEfficientByteArrayOutputStream.java:99) at net.sf.ehcache.store.disk.DiskStorageFactory.serializeElement(DiskStorageFactory.java:405) at net.sf.ehcache.store.disk.DiskStorageFactory.write(DiskStorageFactory.java:384) at net.sf.ehcache.store.disk.DiskStorageFactory$DiskWriteTask.call(DiskStorageFactory.java:485) at net.sf.ehcache.store.disk.DiskStorageFactory$PersistentDiskWriteTask.call(DiskStorageFactory.java:1088) at net.sf.ehcache.store.disk.DiskStorageFactory$PersistentDiskWriteTask.call(DiskStorageFactory.java:1072) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292) 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) 2020-01-17 13:32:59 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:32:59 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:32:55 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:16 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:27 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-17 13:33:27 ERROR [SqlExceptionHelper.java:144] - wait millis 7401, active 16, maxActive 40, creating 1 2020-01-17 13:33:27 INFO [GetCWRCapHandler.java:114] - 解析录像服务器上报心跳协议过程中出现异常:org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Could not open connection 2020-01-17 13:33:33 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:33 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:49 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:49 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:49 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:49 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:49 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:53 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:53 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:33:53 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:02 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-17 13:34:02 ERROR [SqlExceptionHelper.java:144] - wait millis 5503, active 18, maxActive 40, creating 1 2020-01-17 13:34:02 INFO [GetCWRCapHandler.java:114] - 解析录像服务器上报心跳协议过程中出现异常:org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Could not open connection 2020-01-17 13:34:04 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:08 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:12 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:12 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:14 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:14 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:14 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:17 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-17 13:34:17 ERROR [SqlExceptionHelper.java:144] - wait millis 5485, active 19, maxActive 40, creating 1 2020-01-17 13:34:17 INFO [GetCWRCapHandler.java:114] - 解析录像服务器上报心跳协议过程中出现异常:org.springframework.orm.hibernate3.HibernateJdbcException: JDBC exception on Hibernate data access: SQLException for SQL [n/a]; SQL state [null]; error code [0]; Could not open connection; nested exception is org.hibernate.exception.GenericJDBCException: Could not open connection 2020-01-17 13:34:17 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:27 INFO [DeviceCache.java:249] - 设备状态及报警维护过程中出现异常 2020-01-17 13:34:35 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:35 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:42 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:42 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:44 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:44 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:34:52 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-17 13:34:52 ERROR [SqlExceptionHelper.java:144] - wait millis 7301, active 22, maxActive 40, creating 1 2020-01-17 13:34:52 INFO [GetCWRCapHandler.java:114] - 解析录像服务器上报心跳协议过程中出现异常:org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Could not open connection 2020-01-17 13:34:53 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:35:05 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_roll_preset failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-17 13:35:18 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-17 13:35:18 ERROR [SqlExceptionHelper.java:144] - Error 2020-01-17 13:35:50 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-17 13:35:50 ERROR [SqlExceptionHelper.java:144] - Error 2020-01-17 13:36:13 WARN [SqlExceptionHelper.java:143] - SQL Error: 1205, SQLState: 40001 2020-01-17 13:36:13 ERROR [SqlExceptionHelper.java:144] - Lock wait timeout exceeded; try restarting transaction 2020-01-17 13:36:13 WARN [SqlExceptionHelper.java:143] - SQL Error: 1205, SQLState: 40001 2020-01-17 13:36:24 ERROR [SqlExceptionHelper.java:144] - Lock wait timeout exceeded; try restarting transaction 2020-01-17 13:36:13 WARN [SqlExceptionHelper.java:143] - SQL Error: 1205, SQLState: 40001 2020-01-17 13:37:01 ERROR [SqlExceptionHelper.java:144] - Lock wait timeout exceeded; try restarting transaction 2020-01-17 13:37:43 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-17 13:36:37 WARN [SqlExceptionHelper.java:143] - SQL Error: 1205, SQLState: 40001 2020-01-17 13:36:33 WARN [SqlExceptionHelper.java:143] - SQL Error: 1205, SQLState: 40001 2020-01-17 13:36:22 WARN [SqlExceptionHelper.java:143] - SQL Error: 1205, SQLState: 40001 ``` 现在就是无法确定到底哪里导致的内存溢出? 这个是上次出现的异常和代码 ``` 2020-01-13 13:21:44 WARN [SqlExceptionHelper.java:143] - SQL Error: 1205, SQLState: 40001 2020-01-13 13:21:44 ERROR [SqlExceptionHelper.java:144] - Lock wait timeout exceeded; try restarting transaction 2020-01-13 13:23:55 INFO [MQTTProtocolHandler.java:283] - 接收到设备接入协议:{"topic":"info/deviceBaseInfo/BHIP118-S/00:00:01:A6:00:A2","reportTime":"256573751","decodeCapacity":{"totalLevel":2,"totalBlock":36,"totalPixel":16588800},"outputList":[{"status":"start","ratio":"UHD","pixel":"3840*2160","type":"UDP","url":"udp://231.0.100.80:7001"},{"status":"start","ratio":"HD","pixel":"960*540","type":"UDP","url":"udp://231.0.101.80:7001"},{"status":"start","ratio":"SD","pixel":"352*288","type":"UDP","url":"udp://231.0.102.80:7001"},{"status":"stop","ratio":"UHD","pixel":"3840*2160","type":"RTMP","url":"rtmp://192.168.15.80:1935/live/100"},{"status":"stop","ratio":"HD","pixel":"960*540","type":"RTMP","url":"rtmp://192.168.15.124:1935/live/101"},{"status":"stop","ratio":"SD","pixel":"352*288","type":"RTMP","url":"rtmp://192.168.15.80:1935/live/102"}],"baseInfo":{"deviceType":"BHIP118-S","code":"00:00:01:A6:00:A2","version":"v1.0.0.11","ip":"192.168.16.80"},"online":true} 2020-01-13 13:23:59 INFO [DeviceCache.java:127] - 接收到新增/更新设备信息:00:00:01:A6:00:A2 :BaseInfo [type=0,name=BHIP118-S,ip=192.168.16.80,port=0,code=00:00:01:A6:00:A2,groupCode=null,groupIndex=0,online=true,multiCastTime=0,ver=v1.0.0.11,channel=0,reserve=0,lockStatus=null,workMode=null,videoPixerls=null,kvmMode=null,serialNumber=null,sdipPortInfo is null,hdIpPortInfo is null,audioIpPortInfo is null,outputList[SourceOutput [ratio=UHD, url=udp://231.0.100.80:7001, pixel=3840*2160, channel=0, SourceOutput [ratio=HD, url=udp://231.0.101.80:7001, pixel=960*540, channel=0, SourceOutput [ratio=SD, url=udp://231.0.102.80:7001, pixel=352*288, channel=0, SourceOutput [ratio=UHD, url=rtmp://192.168.15.80:1935/live/100, pixel=3840*2160, channel=0, SourceOutput [ratio=HD, url=rtmp://192.168.15.124:1935/live/101, pixel=960*540, channel=0, SourceOutput [ratio=SD, url=rtmp://192.168.15.80:1935/live/102, pixel=352*288, channel=0],callStatus=null] 2020-01-13 13:24:06 INFO [MultiCastDeviceInfoHandler.java:229] - 更新视频合成器设备信息: Device [id=ff8080816f694555016f6a4bf61e158c, code=00:00:01:A6:00:A2, name=192.168.16.80, ip=192.168.16.80, port=0, status=0, type=BHIP118, deviceType=BHIP118-S, stamp=2020-01-03 15:26:00, abilityInfo=null, netCardInfo=null] 2020-01-13 13:24:53 INFO [MultiCastDeviceInfoHandler.java:364] - 更新解码器信息:Decoder [IP=192.168.16.80, Port=0, Channel=0, totalBlocks=36, totalLevel=2, uRefWidth=1920, uRefHeight=1080, audioPort=0, totalPixel=16588800, deviceTypeName=BHIP118-S, pixelsWidth=null, pixelsHeight=null] 2020-01-13 13:25:17 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:17 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:17 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:19 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:28 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:42 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-13 13:25:42 ERROR [SqlExceptionHelper.java:144] - wait millis 14463, active 11, maxActive 40, creating 1 2020-01-13 13:25:46 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_playback_task failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:25:48 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-13 13:25:50 ERROR [SqlExceptionHelper.java:144] - wait millis 18056, active 11, maxActive 40, creating 1 2020-01-13 13:25:50 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_source_volume failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:25:51 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:51 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:51 INFO [GetCWRCapHandler.java:114] - 解析录像服务器上报心跳协议过程中出现异常:org.springframework.orm.hibernate3.HibernateJdbcException: JDBC exception on Hibernate data access: SQLException for SQL [n/a]; SQL state [null]; error code [0]; Could not open connection; nested exception is org.hibernate.exception.GenericJDBCException: Could not open connection 2020-01-13 13:25:51 INFO [GetCWRCapHandler.java:114] - 解析录像服务器上报心跳协议过程中出现异常:org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Could not open connection 2020-01-13 13:25:58 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_kvm failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:25:56 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:25:56 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:03 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_video_terminal failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:05 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_pic_layer failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:05 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_template failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:05 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_multicast_address failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:08 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_mass_source failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:08 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_pic_encoder_block failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:08 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_ipc_preset_group failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:08 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:13 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_video_terminal failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:17 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_record_layer_block failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:24 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_video_meeting failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:28 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_audio_preset_rlat failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:28 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_preset failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:28 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_layer_block failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:28 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:32 WARN [SqlExceptionHelper.java:143] - SQL Error: 0, SQLState: null 2020-01-13 13:26:32 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:32 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:32 ERROR [DiskStorageFactory.java:495] - Disk Write of mcs_encoder failed: java.lang.OutOfMemoryError: GC overhead limit exceeded 2020-01-13 13:26:52 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:27:07 ERROR [SqlExceptionHelper.java:144] - wait millis 20150, active 12, maxActive 40, creating 1 2020-01-13 13:26:50 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:46 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:46 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:41 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:41 ERROR [SqlExceptionHelper.java:144] - wait millis 23244, active 12, maxActive 40, creating 1 2020-01-13 13:26:41 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:26:41 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:30:29 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:30:25 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:30:07 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:30:07 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 2020-01-13 13:30:07 WARN [DruidDataSource.java:1258] - get connection timeout retry : 1 ``` 这个是组播上报的设备信息,因为组播是一秒钟上报了好几次,是不是这里一直占用着连接 ``` public void run() { try { ms = new MulticastSocket(multiCastPort);//建立组播套接字 ms.setReceiveBufferSize(65535); // ms.setNetworkInterface(NetworkInterface.getByInetAddress(localAddress)); ms.joinGroup(InetAddress.getByName(multiCastIP));//加入组播组 LogHome.getLog().info("正常启动监听" + localAddress.getHostAddress()); byte[] buffer = null; DatagramPacket dp = null; while (true) { try { if (IsStop) { break; } buffer = new byte[1400]; dp = new DatagramPacket(buffer, buffer.length); LogHome.getLog().debug("等待接受组播信息:"); ms.receive(dp); MultiCastInfoParser info = new MultiCastInfoParser(dp.getData()); DeviceCache.baseInfoOf1004Handler(info.parse()); } catch (Exception e) { if (IsStop) {// 如果换网卡可能会出问题 break; } else { if (ms.isClosed()) { ms = new MulticastSocket(multiCastPort); ms.setNetworkInterface(NetworkInterface.getByInetAddress(localAddress)); ms.joinGroup(InetAddress.getByName(multiCastIP)); } } LogHome.getLog().error("接受并设置组播信息失败",e); }finally{ Thread.sleep(1); } } } catch (Exception e) { e.printStackTrace(); try { if (listenerList.containsKey(localAddress.getHostAddress())) { listenerList.remove(localAddress.getHostAddress()); } } catch (Exception ex) { LogHome.getLog().error(ex); } } ```
FFmpeg:avcodec_find_encoder_by_name("libx264")返回空,是怎么回事呢?
FFmpeg编译时的参数:./configure --enable-shared --enable-static --enable-pic --enable-gpl --enable-avresample --enable-sdl --enable-libx264 cmd中使用ffmpeg -encoders ![图片说明](https://img-ask.csdn.net/upload/201912/15/1576374486_153947.jpg) 新线索: 在win7、vs2015中此函数不为空,在win10、vs2017中为空; 在win10、vs2017中的debug模式下,此函数返回空,release模式下不为空;
并发使用ImageIO速度慢问题
主要实现:使用ImageIO把BufferedImage写入到ByteArrayOutputStream输出流,从输出流取出字节数组进行网络传输。 问题: 1、少量比如10个线程调用的时候特别快大概只要几十ms; 2、并发200个线程调用的时候就很慢,就是逐渐增加的那种,一些是几十ms,一些是几百ms,一些是几千ms; 3、做了些时间截点,发现就是调用ByteArrayOutputStream的时候花费的时间多,本来是IO的流,我想换成NIO,但搜了一圈发现没有把用java生成图片转换到NIO流的。 代码: ``` BufferedImage bufImg = qRcodeCommon(contentBytes,size); long startTime=System.currentTimeMillis(); try { ImageIO.write(bufImg, imgType, bos);//缓存输出流接收生成的图片字节数组 BASE64Encoder encoder=new BASE64Encoder(); //System.out.println(encoder.encodeBuffer(bos.toByteArray())); String str=encoder.encodeBuffer(bos.toByteArray()); bos.reset(); System.out.println("写出数组:"+(System.currentTimeMillis()-startTime)+"ms"); return str; }catch (IOException e){ e.printStackTrace(); System.out.println("缓存图片出现IO异常"); } ``` 缩短时间,提高性能,各位大佬帮忙看看!
Android将mp3转换成Base64字符串乱码问题
需要将文件转成的Base64字符串放在本地,等需要播放的时候再将Base64转换成mp3文件。但转成的Base64字符串一直有乱码问题,同样的方法图片没有乱码问题,下面贴出代码 ``` public static String fileToBase64(String path) throws Exception { File file = new File(path); FileInputStream inputFile = new FileInputStream(file); byte[] buffer = new byte[(int) file.length()]; inputFile.read(buffer); inputFile.close(); return new BASE64Encoder().encode(buffer); } ```
PHP的md5 utf-8字节流加密
Java public static String getSign(String source) throws Exception{ String sign = ""; MessageDigest digest = MessageDigest.getInstance("MD5"); byte[] bts = digest.digest(source.getBytes("UTF-8")); BASE64Encoder encoder = new BASE64Encoder(); sign = encoder.encode(bts); return sign; } 引用的类均是jdk自带的。 加密明文: aaabbbcccddd111222333444 加密密文: o2NM9K4ivYnK5VC2w4VOTg== 能否将以上的java的加密改成php代码的加密源码。。。
这个base64加密的解密怎么写?
public class BASE64Encoder { private static char[] codec_table = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/' }; public BASE64Encoder() { } public static String encode(byte[] a) { int totalBits = a.length * 8; int nn = totalBits % 6; int curPos = 0;// process bits StringBuffer toReturn = new StringBuffer(); while (curPos < totalBits) { int bytePos = curPos / 8; switch (curPos % 8) { case 0: toReturn.append(codec_table[(a[bytePos] & 0xfc) >> 2]); break; case 2: toReturn.append(codec_table[(a[bytePos] & 0x3f)]); break; case 4: if (bytePos == a.length - 1) { toReturn.append(codec_table[((a[bytePos] & 0x0f) << 2) & 0x3f]); } else { int pos = (((a[bytePos] & 0x0f) << 2) | ((a[bytePos + 1] & 0xc0) >> 6)) & 0x3f; toReturn.append(codec_table[pos]); } break; case 6: if (bytePos == a.length - 1) { toReturn.append(codec_table[((a[bytePos] & 0x03) << 4) & 0x3f]); } else { int pos = (((a[bytePos] & 0x03) << 4) | ((a[bytePos + 1] & 0xf0) >> 4)) & 0x3f; toReturn.append(codec_table[pos]); } break; default: // never hanppen break; } curPos += 6; } if (nn == 2) { toReturn.append("=="); } else if (nn == 4) { toReturn.append("="); } return toReturn.toString(); } }
onvif device test tool 怎么去分析错误指令
这个是我点击Encoder configuration时候出现的打印: Error in deserializing body of reply message for operation 'GetVideoEncoderConfigurations'. 求大神们分析下,会是什么原因导致的,怎么去查? 现在是不知道怎么入手? 穷人家的孩子没有悬赏。 谢谢你们了!!!
130 个相见恨晚的超实用网站,一次性分享出来
相见恨晚的超实用网站 持续更新中。。。
我花了一夜用数据结构给女朋友写个H5走迷宫游戏
起因 又到深夜了,我按照以往在csdn和公众号写着数据结构!这占用了我大量的时间!我的超越妹妹严重缺乏陪伴而 怨气满满! 而女朋友时常埋怨,认为数据结构这么抽象难懂的东西没啥作用,常会问道:天天写这玩意,有啥作用。而我答道:能干事情多了,比如写个迷宫小游戏啥的! 当我码完字准备睡觉时:写不好别睡觉! 分析 如果用数据结构与算法造出东西来呢? ...
对计算机专业来说学历真的重要吗?
我本科学校是渣渣二本,研究生学校是985,现在毕业五年,校招笔试、面试,社招面试参加了两年了,就我个人的经历来说下这个问题。 这篇文章很长,但绝对是精华,相信我,读完以后,你会知道学历不好的解决方案,记得帮我点赞哦。 先说结论,无论赞不赞同,它本质就是这样:对于技术类工作而言,学历五年以内非常重要,但有办法弥补。五年以后,不重要。 目录: 张雪峰讲述的事实 我看到的事实 为什么会这样 ...
字节跳动视频编解码面经
三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时想着能进去就不错了,管他哪个岗呢,就同意了面试...
win10系统安装教程(U盘PE+UEFI安装)
一、准备工作 u盘,电脑一台,win10原版镜像(msdn官网) 二、下载wepe工具箱 极力推荐微pe(微pe官方下载) 下载64位的win10 pe,使用工具箱制作启动U盘打开软件, 选择安装到U盘(按照操作无需更改) 三、重启进入pe系统 1、关机后,将U盘插入电脑 2、按下电源后,按住F12进入启动项选择(技嘉主板是F12) 选择需要启...
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, ...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Ol4网格生成以及优化
概述 先描述一下大致场景:以0.05为单元格大小生成网格,并在地图上绘制,绘制的时候需要区分海陆。本文以此需求为契机,简单描述一下该需求的实现以及如何来优化。 效果 实现 优化前 var source = new ol.source.Vector({ features: [] }); var vector = new ol.layer.Vector({ source...
11月19日科技资讯|华为明日发布鸿蒙整体战略;京东宣告全面向技术转型;Kotlin 1.3.60 发布
「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。扫描上方二维码进入 CSDN App 可以收听御姐萌妹 Style 的人工版音频哟。 一分钟速览新闻点! 6G 专家组成员:速率是 5G 的 10 至 100 倍,预计 2030 年商用 雷军:很多人多次劝我放弃WPS,能坚持下来并不是纯粹的商业决定 ...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n...
iOS Bug 太多,苹果终于坐不住了!
开源的 Android 和闭源的 iOS,作为用户的你,更偏向哪一个呢? 整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 毋庸置疑,当前移动设备操作系统市场中,Android 和 iOS 作为两大阵营,在相互竞争的同时不断演进。不过一直以来,开源的 Android 吸引了无数的手机厂商涌入其中,为其生态带来了百花齐放的盛景,但和神秘且闭源的 iOS 系统相比,不少网友...
Python语言高频重点汇总
Python语言高频重点汇总 GitHub面试宝典仓库 回到首页 目录: Python语言高频重点汇总 目录: 1. 函数-传参 2. 元类 3. @staticmethod和@classmethod两个装饰器 4. 类属性和实例属性 5. Python的自省 6. 列表、集合、字典推导式 7. Python中单下划线和双下划线 8. 格式化字符串中的%和format 9. 迭代器和生成器 10...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆每天早上8:30推送 作者|Mr.K 编辑| Emma 来源|技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯...
程序员该看的几部电影
1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?如何...
蓝桥杯知识点汇总:基础知识和常用算法
文章目录基础语法部分:算法竞赛常用API:算法部分数据结构部分 此系列包含蓝桥杯绝大部分所考察的知识点,以及真题题解~ 基础语法部分: 备战蓝桥杯java(一):一般输入输出 和 快速输入输(BufferedReader&amp;BufferedWrite) 备战蓝桥杯java(二):java编程规范和常用数据类型 备战蓝桥杯java(三):常用功能符以及循环结构和分支结构 备战蓝桥杯java(四...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
@程序员,如何花式构建线程?
作者 |曾建责编 | 郭芮出品 | CSDN(ID:CSDNnews)在项目和业务的开发中,我们难免要经常使用线程来进行业务处理,使用线程可以保证我们的业务在相互处理之间可以保证原子性...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
实现简单的轮播图(单张图片、多张图片)
前言 刚学js没多久,这篇博客就当做记录了,以后还会完善的,希望大佬们多多指点。ps:下面出现的都是直接闪动,没有滑动效果的轮播图。 单张图片的替换 · ...
强烈推荐10本程序员在家读的书
很遗憾,这个春节注定是刻骨铭心的,新型冠状病毒让每个人的神经都是紧绷的。那些处在武汉的白衣天使们,尤其值得我们的尊敬。而我们这些窝在家里的程序员,能不外出就不外出,就是对社会做出的最大的贡献。 有些读者私下问我,窝了几天,有点颓丧,能否推荐几本书在家里看看。我花了一天的时间,挑选了 10 本我最喜欢的书,你可以挑选感兴趣的来读一读。读书不仅可以平复恐惧的压力,还可以对未来充满希望,毕竟苦难终将会...
Linux自学篇——linux命令英文全称及解释
man: Manual 意思是手册,可以用这个命令查询其他命令的用法。 pwd:Print working directory 意思是密码。 su:Swith user 切换用户,切换到root用户 cd:Change directory 切换目录 ls:List files 列出目录下的文件 ps:Process Status 进程状态 mkdir:Make directory ...
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。
疫情数据接口api
返回json示例 { "errcode":0,//0标识接口正常 "data":{ "date":"2020-01-30 07:47:23",//实时更新时间 "diagnosed":7736,//确诊人数 "suspect":12167,//疑是病例人数 "death":170,//死亡人数 "cur...
相关热词 c#导入fbx c#中屏蔽键盘某个键 c#正态概率密度 c#和数据库登陆界面设计 c# 高斯消去法 c# codedom c#读取cad文件文本 c# 控制全局鼠标移动 c# temp 目录 bytes初始化 c#
立即提问