首页
友链
关于
免责声明
Search
1
王者营地战绩数据王者荣耀查询网页源码
6,209 阅读
2
群晖Active Backup for Business套件备份Linux服务器教程
4,384 阅读
3
影视分享
4,313 阅读
4
(亲测)Jrebel激活破解方式2019-08-21
4,289 阅读
5
centos7 安装及卸载 jekenis
3,573 阅读
日常
文章
后端
前端
Linux
异常
Flutter
分享
群辉
登录
Search
标签搜索
docker
springboot
Spring Boot
java
linux
Shiro
Graphics2D
图片
游戏账号交易
Mybatis
Spring Cloud
centos
脚本
Web Station
群辉
王者营地
战绩查询
平台对接
Spring Cloud Alibaba
nacos
绿林寻猫
累计撰写
249
篇文章
累计收到
26
条评论
首页
栏目
日常
文章
后端
前端
Linux
异常
Flutter
分享
群辉
页面
友链
关于
免责声明
搜索到
40
篇与
前端
的结果
2021-12-08
web开发性能优化---代码优化篇
原文:https://blog.csdn.net/fuyifang/article/details/40519421 1、合理使用缓存使用提高性能最好最快的办法当然是通过缓存来改善,对于任何一个web开发者都应该善用缓存。Asp.net下的缓存机制十分强大,用好缓存机制可以让我们极大的改善web应用的性能。1.页面缓存 2.部分页面缓存3.使用DataSource缓存4.Cache对象2、避免数据库频繁连接1.能采用SQL或直接存储过程一次执行的尽量不要用代码多次执行2.及时关闭数据库连接3.适当采取配置文件文件存频繁使用文件4.对不经常更改并且数据量小的可采用xml或者配置文件设置4、资源文件上传大小验证1.严格验证上传图片大小2.严格控制上传Flash动画和视频大小5、尽量避开访问高峰期,进行数据作业和数据服务1.执行定时任务尽量避开访问高峰期2.对应固定报表2可以采取预定格式,避开高峰自动提取6、数据查询采用真分页1.需要多少数据取多少数据7、建设页面跳转覆盖1.尽量采取弹框或切换选项方式展示数据,避免来回刷新列表重新获大量数据8、取数据不要查询全部字段1.查询数据尽量不要SELECT *
2021年12月08日
135 阅读
0 评论
0 点赞
2021-12-08
jquery.lazyload.js实现图片懒加载
原文:https://blog.csdn.net/fuyifang/article/details/40474837 个人理解:将需要延迟加载的图片的src属性全部设置为一张相同尽可能小(目的是尽可能的少占宽带,节省流量,由于缓存机制,当浏览器加载了一张图片之后,相同的图片就会在缓存中拿,不会重新到服务器上拿)的图片,然后将图片的实际地址写在alt属性里,当鼠标往下滑动的时候得到当前显示区域内的img的lz-src,动态的就将各自的lz-src属性的值赋值给src属性,这样就实现了图片延迟加载,减轻服务器端的压力,节省本地带宽,提升了访问网页的速度 插件源码地址: https://raw.github.com/tuupola/jquery_lazyload/master/jquery.lazyload.js jQuery下载地址:http://jquery.com/ html页面代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <script type="text/javascript" src="js/jquery-1.4.3.min.js" ></script> <script type="text/javascript" src="js/lazyload.js"></script> <script type="text/javascript"> //初始化代码 $(document).ready(function() { $("img[name='lazy']").lazyload({ placeholder : "images/默认图片.jpg", effect : "fadeIn" }); }); </script> <title>无标题文档</title> </head> <body> <img src="images/默认图片.jpg" width="100px" height="300px" name="lazy" lz-src="images/商品图片1.jpg"/><br /> <img src="images/默认图片.jpg" width="100px" height="300px" name="lazy" lz-src="images/商品图片2.jpg"/><br /> <img src="images/默认图片.jpg" width="100px" height="300px" name="lazy" lz-src="images/商品图片3.jpg"/><br /> <img src="images/默认图片.jpg" width="100px" height="300px" name="lazy" lz-src="images/商品图片4.jpg"/><br /> <img src="images/默认图片.jpg" width="100px" height="300px" name="lazy" lz-src="images/商品图片5.jpg"/><br /> <img src="images/默认图片.jpg" width="100px" height="300px" name="lazy" lz-src="images/商品图片6.jpg"/><br /> </body> </html>
2021年12月08日
167 阅读
0 评论
0 点赞
2021-12-08
JDK开发WebServrice
前言前言摘自:https://blog.csdn.net/qq_33326449/article/details/52973297 什么是webservice?一句话概括:WebService是一种跨编程语言和跨操作系统平台的远程调用技术。所谓跨编程语言和跨操作平台,就是说服务端程序采用Java编写,客户端程序则可以采用其他编程语言编写,反之亦然!跨操作系统平台则是指服务端程序和客户端程序可以在不同的操作系统上运行。所谓远程调用,就是一台计算机a上的一个程序可以调用到另外一台计算机b上的一个对象的方法。譬如从天气预报系统中获取某个城市的天气数据在自己系统中进行展示;从证券交易系统中获取某只股票的交易信息在自己的系统中进行展示;又譬如一个商城系统中能够展示快递的跟踪信息,而这些信息就是通过webservice从具体的快递公司的系统中获取的数据。其实可以从多个角度来理解WebService,从表面上看,WebService就是一个应用程序向外界暴露出一个能通过Web进行调用的API,也就是说能用编程的方法通过Web来调用这个应用程序。我们把调用这个WebService的应用程序叫做客户端,而把提供这个WebService的应用程序叫做服务端。从深层次看,WebService是建立可互操作的分布式应用程序的新平台,是一个平台,是一套标准。它定义了应用程序如何在Web上实现互操作性,你可以用任何你喜欢的语言,在任何你喜欢的平台上写Web service ,只要我们可以通过Web service标准对这些服务进行查询和访问。二.WSDL是什么,有什么作用?WSDL是web service definition language的缩写,即web service的定义(描述)语言。怎样向别人介绍你的 web service 有什么功能,以及每个函数调用时的参数呢?你可能会自己写一套文档,你甚至可能会口头上告诉需要使用你的web service的人。这些非正式的方法至少都有一个严重的问题:当程序员坐到电脑前,想要使用你的web service的时候,他们的工具(如Visual Studio)无法给他们提供任何帮助,因为这些工具根本就不了解你的web service。解决方法是:用机器能阅读的方式提供一个正式的描述文档。web service描述语言(WSDL)就是这样一个基于XML的语言,用于描述web service及其函数、参数和返回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的,这将是一个很大的好处。一些最新的开发工具既能根据你的web service生成WSDL文档,又能导入WSDL文档,生成调用相应web service的代码。Webservice服务发布之后,通过浏览器访问发布的+?wsdl即可获得wsdl文档。三.WSDL文档主要有那几部分组成,分别有什么作用?一个WSDL文档的根元素是definitions元素,WSDL文档包含7个重要的元素:types, import, message, portType, operations, binding和service元素。1、 definitions元素中一般包括若干个XML命名空间;2、 Types元素用作一个容器,定义了自定义的特殊数据类型,在声明消息部分(有效负载)的时候,messages定义使用了types元素中定义的数据类型与元素;3、 Import元素可以让当前的文档使用其他WSDL文档中指定命名空间中的定义;4、 Message元素描述了Web服务的有效负载。相当于函数调用中的参数和返回值;5、 PortType元素定义了Web服务的抽象接口,它可以由一个或者多个operation元素,每个operation元素定义了一个RPC样式或者文档样式的Web服务方法;6、 Operation元素要用一个或者多个messages消息来定义它的输入、输出以及错误;7、 Binding元素将一个抽象的portType映射到一组具体的协议(SOAP或者HTTP)、消息传递样式(RPC或者document)以及编码样式(literal或者SOAP encoding);8、 Service元素包含一个或者多个Port元素每一个Port元素对应一个不同的Web服务,port将一个URL赋予一个特定的binding,通过location实现。可以使两个或者多个port元素将不同的URL赋给相同的binding。四.SOAP是什么? SOAP是simple object access protocal的缩写,即简单对象访问协议。 是基于XML和HTTP的一种通信协议。是webservice所使用的一种传输协议,webservice之所以能够做到跨语言和跨平台,主要是因为XML和HTTP都是独立于语言和平台的。Soap的消息分为请求消息和响应消息,一条SOAP消息就是一个普通的XML文档,包含下列元素:1、 必需的 Envelope 元素,可把此XML文档标识为一条SOAP消息2、 可选的 Header 元素,包含头部信息3、 必需的 Body 元素,包含所有的调用和响应信息4、 可选的 Fault 元素,提供有关在处理此消息所发生错误的信息 Soap请求消息 Soap响应消息 五.怎么理解UDDI?UDDI是Universal Description Discovery and Integration的缩写,即统一描述、发现和整合规范。用来注册和查找服务,把web services收集和存储起来,这样当别人访问这些信息的时候就从UDDI中查找,看有没有这个信息存在。五.Webservice的SEI指什么?WebService EndPoint Interface(webservice终端[Server端]接口)就是 WebService服务器端用来处理请求的接口六.说说你知道的webservice框架,他们都有什么特点?Webservice常用框架有JWS、Axis2、XFire以及CXF。下面分别介绍一个这几种Web Service框架的基本概念1、JWS是Java语言对WebService服务的一种实现,用来开发和发布服务。而从服务本身的角度来看JWS服务是没有语言界限的。但是Java语言为Java开发者提供便捷发布和调用WebService服务的一种途径。2、Axis2是Apache下的一个重量级WebService框架,准确说它是一个Web Services / SOAP / WSDL 的引擎,是WebService框架的集大成者,它能不但能制作和发布WebService,而且可以生成Java和其他语言版WebService客户端和服务端代码。这是它的优势所在。但是,这也不可避免的导致了Axis2的复杂性,使用过的开发者都知道,它所依赖的包数量和大小都是很惊人的,打包部署发布都比较麻烦,不能很好的与现有应用整合为一体。但是如果你要开发Java之外别的语言客户端,Axis2提供的丰富工具将是你不二的选择。3、XFire是一个高性能的WebService框架,在Java6之前,它的知名度甚至超过了Apache的Axis2,XFire的优点是开发方便,与现有的Web整合很好,可以融为一体,并且开发也很方便。但是对Java之外的语言,没有提供相关的代码工具。XFire后来被Apache收购了,原因是它太优秀了,收购后,随着Java6 JWS的兴起,开源的WebService引擎已经不再被看好,渐渐的都败落了。4、CXF是Apache旗下一个重磅的SOA简易框架,它实现了ESB(企业服务总线)。CXF来自于XFire项目,经过改造后形成的,就像目前的Struts2来自WebWork一样。可以看出XFire的命运会和WebWork的命运一样,最终会淡出人们的视线。CXF不但是一个优秀的Web Services / SOAP / WSDL 引擎,也是一个不错的ESB总线,为SOA的实施提供了一种选择方案,当然他不是最好的,它仅仅实现了SOA架构的一部分。注:对于Axis2与CXF之间的关系,一个是Axis2出现的时间较早,而CXF的追赶速度快。如何抉择: 1、如果应用程序需要多语言的支持,Axis2应当是首选了;2、如果应用程序是遵循 spring哲学路线的话,Apache CXF是一种更好的选择,特别对嵌入式的Web Services来说;3、如果应用程序没有新的特性需要的话,就仍是用原来项目所用的框架,比如 Axis1,XFire,Celtrix或BEA等等厂家自己的Web Services实现,就别劳民伤财了。七.你的系统中是否有使用到webservice开发,具体是怎么实现的?如果你觉得自己掌握的不够好,对自己不够自信的可以回答为“我的系统中没有使用到webservice的开发,但是我掌握webservice开发的概念和流程”,然后可以给他讲讲相关的概念,也就是上面的这些问题的回答,这样可以绕过这个问题,因为并不是所有的系统都会涉及到webservice的开发。另一种回答即是先给他介绍一种webservice开发框架,比如CXF,然后告诉他你做的是服务端开发还是客户端开发,如果你说你做的事服务端开发,那么你就告诉他怎么定义的webservice,使用了哪些注解,怎么跟spring进行的整合,怎么发布的服务等等;如果你告诉他你做的事客户端的开发,那么你可以告诉他你怎么生成的本地代码,然后又怎么通过本地代码去调用的webservice服务。 一、开发WebService服务器端第一步:创建Java工程 ,创建相应的包(服务端)使用JDK开发(1.6以上版本)第二步:建一个接口WebServiceI,创建方法:import javax.jws.WebMethod; import javax.jws.WebService; @WebService //使用@WebService注解标注WebServiceI接口 public interface WebServiceI { /** * 根据用户名和密码得到该用户的信息 * * @param username * @param password * @return */ @WebMethod //使用WebMethod注解标注WebService接口中的方法 public String getUsersByUsernameAndPassword(String username, String password); }第三步:编写WebServiceI接口的实现类WebServiceImpl,使用@WebService注解标注实现类,并实现接口所有方法:import javax.jws.WebService; @WebService //使用@WebService注解标注WebServiceI接口的实现类 public class WebServiceImpl implements WebServiceI { @Override public String getUsersByUsernameAndPassword(String username, String password) { // TODO Auto-generated method stub //可调用dao String str ="账户:"+username+",密码:"+password; return str; } }第四步:写发布类WebServicePublish,使用Endponit(终端)类发布WebServiceimport work.javaj.WebService.service.WebServiceImpl; import javax.xml.ws.Endpoint; /** * 发布类WebServicePublish,使用Endponit(终端)类发布WebService * @author Administrator * @data 2018年9月18日 * @time 下午2:24:09 */ public class WebServicePublish { public static void main(String[] args) { //ip 为本地ip String address="http://ip:9003/WebService/UsersService"; Endpoint.publish(address, new WebServiceImpl()); System.err.println("发布成功"); } }浏览器测试:二、客户端(终端)访问WebService第一步:创建终端工程,主要用来实现接收服务端的暴露。第二步:找到客户端源代码路径(包路径) 在命令框中输入(shift+右键):wsimport -keep http://192.168.43.82:9003/WebService/UsersService?wsdl 第三步:创建Test.java测试类,在main方法中: /** *WebServiceClient测试类 * @author Administrator * @data 2018年9月18日 * @time 下午2:45:26 */ public class Test { public static void main(String[] args) { //先创建服务对象 WebServiceImplService webServiceImplService = new WebServiceImplService(); //根据服务对象得到端口 WebServiceImpl webServiceImplPort = webServiceImplService.getWebServiceImplPort(); //通过端口调用暴露的方法 String usersByUsernameAndPassword = webServiceImplPort.getUsersByUsernameAndPassword("admin", "123456"); System.out.println(usersByUsernameAndPassword); } }
2021年12月08日
141 阅读
0 评论
0 点赞
2021-12-08
Failed to load property source from location 'classpath:/application.yml'
1.可能是项目提交重新下载之后编码格式出问题,一般改为utf-82.可能是文件当中的格式问题,比如空格
2021年12月08日
264 阅读
0 评论
0 点赞
2021-12-08
安卓应用发布在各大应用市场方法整理
想要把APP上架到应用市场都要先注册开发者账号才可以。这里的方法包括注册帐号和后期上架及一些需要注意的问题。注意:首次提交应用绝对不能随便删除,否则后面再提交会显示应用APP冲突,会要求走应用认领流程,那个时候就会相当麻烦啦。1、腾讯应用宝腾讯开放平台地址:http://open.qq.com注册开发者帐号地址:https://ssl.zc.qq.com/v3/index-chs.html重要提示:开发者QQ号码一旦注册不能变更,建议使用公司老板或法人的QQ号码而不是员工私人号码注册,以免遇到员工离职等情况造成不必要的麻烦。2017年9月18日以后应用上架要提交软件著作权证明(原件扫描)或者该应用PC官网ICP备案截图+官网地址+2个以上的应用宝以外市场上线后台状态截图代替,软著后续补上。如果APP在应用宝搜索不到(不能外显),则必须提供软著+版号。注册开发者帐号方法:http://wiki.open.qq.com/wiki/%E6%B3%A8%E5%86%8C%E5%BC%80%E5%8F%91%E8%80%85%E5%B8%90%E5%8F%B7应用提交方法:http://wiki.open.qq.com/wiki/%E5%88%9B%E5%BB%BA%E6%96%B0%E5%BA%94%E7%94%A8 2、360手机助手360开放平台地址:http://dev.360.cn注册开发者帐号地址:http://dev.360.cn重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。企业操作人要进行实名认证,要提供身份证号,银行卡号及预留的手机验证码验证。应用上架必须要提交360的保证函。注册开发者帐号方法:http://dev.360.cn/wiki应用提交方法:http://dev.360.cn/wiki/index/id/21 3、百度手机助手/安卓市场/91助手百度开发者平台地址:http://app.baidu.com重要提示:百度手机助手、91助手 和安卓市场是联盟平台,在百度开发平台中上传APP通过审核后,在其它两个平台也可以搜索到自己的APP。这里只需要注册一个百度开发者帐号即可。开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。应用上架必须要提交百度的保证函。注册开发者帐号方法:http://app.baidu.com/docs?id=2&frompos=401003应用提交方法:http://app.baidu.com/docs?id=5&frompos=401007 4、小米应用商店小米开放平台网站:https://dev.mi.com注册开发者帐号地址:https://account.xiaomi.com/pass/register重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。企业操作人要进行实名认证,要提供身份证号,银行卡号及预留的手机验证码验证。该认证将调用“小米支付”服务,在该小米账号下绑定银行卡进行实名认证。注册开发者帐号方法:https://dev.mi.com/docs/appsmarket/distribution/account_register/应用提交方法:https://dev.mi.com/docs/appsmarket/distribution/app_submit/ 5、华为应用市场华为开发者联盟地址:http://developer.huawei.com/consumer/cn注册开发者帐号地址:https://hwid1.vmall.com/CAS/portal/userRegister/regbyphone.html重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。应用上架必须要提交华为的免责函。注册开发者帐号方法:http://developer.huawei.com/consumer/cn/wiki/index.php?title=%E6%B3%A8%E5%86%8C%E7%99%BB%E5%BD%95应用提交方法:http://developer.huawei.com/consumer/cn/wiki/index.php?title=%E5%88%9B%E5%BB%BA%E5%B9%B6%E7%AE%A1%E7%90%86%E5%BA%94%E7%94%A8 6、阿里应用商店/豌豆荚/PP助手阿里开发者平台地址:http://open.uc.cn重要提示:阿里应用分发 整合了 豌豆荚、阿里九游、PP助手、UC应用商店、神马搜索,并联合YunOS应用商店等应用分发平台,实现全流量矩阵布局。这里只需要注册一个阿里开发者帐号即可。注册开发者帐号地址:https://reg.taobao.com/member/reg/fill_mobile.htm重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。企业操作人要进行实名认证,用支付宝扫描二维码进行实名认证。应用上架必须要提交阿里的保证函。注册开发者帐号方法:http://aliapp.open.uc.cn/wiki/?p=35应用提交方法:http://aliapp.open.uc.cn/wiki/?p=40 7、三星应用商店三星开发者平台地址:http://support-cn.samsung.com/App/DeveloperChina/Home/Index重要提示:全球开发者:只有当您与 Samsung Electronics Co. 有合作关系,才应选择全球开发者类型。完成卖家注册后:请联系您的三星对手方以批准三星应用商店的合作伙伴关系请求。如果无法确认您的合作关系,您必须重新注册会员资格。主题开发者: 主题开发者类型的卖家只能使用三星SDK注册应用程序,但可以将应用程序销售到所有国家/地区。中国开发者: 中国开发者类型的卖家可注册不使用三星SDK的应用程序,但只可将应用程序出售到中国。注册开发者帐号地址:https://seller.samsungapps.com/join/joinNow.as重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。法人和联系人要双手持身份证拍照,要露出双臂,照片不能用软件处理。注册开发者帐号方法:http://support-cn.samsung.com/App/DeveloperChina/home/list?parentid=11&newsid=38应用提交方法:(需要下载三星应用商店上传手册)http://support-cn.samsung.com/App/DeveloperChina/home/list?parentid=11&newsid=11 8、OPPO应用商店OPPO开发者联盟地址:http://open.oppomobile.com注册开发者帐号地址:http://open.oppomobile.com/newuser/signup重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。必须要软件著作权,没有软著则可以试着在后台补交(华为、小米、应用宝)三家中的两家后台上架截图作为辅助依据上架,碰碰运气。应用上架必须要提交OPPO的免责函。注册开发者帐号方法:http://open.oppomobile.com/doc/index?idx=0&item=39应用提交方法:http://jingyan.baidu.com/article/d169e186656065436611d897.html 9、ViVO应用商店ViVO开发者联盟地址:https://dev.vivo.com.cn注册开发者帐号地址:https://id.vivo.com.cn/?callback=http://dev.vivo.com.cn®isterSource=1&_201707171541#!/access/register重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。要记得填写联系人信息。注册开发者帐号方法:https://dev.vivo.com.cn/doc/document/info应用提交方法:https://dev.vivo.com.cn/doc/document/info?id=52 10、联想应用商店联想开发者联盟地址:http://open.lenovo.com注册开发者帐号地址:https://passport.lenovo.com/wauthen2/wauth/jsp/register.jsp重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。应用上架必须要提交联想的免责函。注册开发者帐号方法:http://open.lenovo.com/developer/adp/helpData/database_detail.jsp?url=http://open.lenovo.com/sdk/zhzc/应用提交方法: http://open.lenovo.com/developer/adp/helpData/database_detail.jsp?url=http://open.lenovo.com/sdk/?p=796 11、魅族应用商店魅族开发者联盟地址:http://open.flyme.cn注册开发者帐号地址:https://i.flyme.cn/register重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。应用上架必须要提交魅族的免责函。注册开发者帐号方法: http://open-wiki.flyme.cn/index.php?title=%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%97应用提交方法: http://open-wiki.flyme.cn/index.php?title=%E5%BA%94%E7%94%A8%E5%8F%91%E5%B8%83 12、金立应用商店金立开发者联盟地址:https://open.appgionee.com注册开发者帐号地址:https://open.appgionee.com/cp/register重要提示:开发者帐号,建议使用公司老板或法人的邮箱或手机,而不是员工私人邮箱或手机注册,以免遇到员工离职等情况造成不必要的麻烦。应用上架必须要提交金立的承诺书。注册开发者帐号方法: https://open.appgionee.com/cp/help应用提交方法: https://open.appgionee.com/cp/help这些都是主流的应用市场,操作流程其实在各自开发者平台官网上都可以找到,还有需要注意的是,不同类型的APP在不同应用市场需要提供的证书都会有所不同,需要上传前留意下具体需要哪些证明材料,特别是软件著作权证明或免责函。感觉华为、小米对资料的要求是最严格的;然后是360、魅族、阿里,如果你的应用程序是批量制作的,使用单一或几个模板生成的,或用简单文字、图片打包而成的话,它可以检测出来,并且不会让你通过审核。联想和vivo应该算是最好通过的。百度、小米、华为、魅族的开发者帐号审核相对慢一点,阿里、360跟腾讯还算比较快的,上架应用审核时间也相对比较快。只要资料全,其实很容易通过的。应用审核,OPPO要求要软著,审核上架不易。--------------------- 作者:niezhipeng8 来源:CSDN 原文:https://blog.csdn.net/niezhipeng8/article/details/79103436
2021年12月08日
135 阅读
0 评论
0 点赞
2021-12-08
JS本地存储 localStorage操作(一个页面存值,另外一个页面拿值)
存值方法: localStorage.setItem(Key, value); localStorage.Key=value; 读值方法: localStorage.getItem(Key); localStorage.key;删除:window.localStorage.removeItem('key') 使用: a页面存值 localStorage.li='哈哈哈';//存放字符串或者json字符串 (如果是ajax返回的json对象,localStorage.li=JSON.stringify(data); 转字符串) b页面取值 var str = localStorage.li; // 哈哈哈 (如果传的是json字符串,var obj=eval('('+localStorage.li+')'); 转json对象之后再使用)
2021年12月08日
196 阅读
0 评论
0 点赞
2021-12-08
itext转换html成pdf(支持中文、图片)
1.首先导入依赖 <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.11</version> </dependency> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itext-asian</artifactId> <version>5.2.0</version> </dependency> <dependency> <groupId>org.xhtmlrenderer</groupId> <artifactId>flying-saucer-pdf</artifactId> <version>9.0.7</version> </dependency>2.代码部分package com.pdf.util; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.OutputStream; import org.jsoup.Jsoup; import org.xhtmlrenderer.pdf.ITextFontResolver; import org.xhtmlrenderer.pdf.ITextRenderer; import com.lowagie.text.pdf.BaseFont; /** * 转换html为pdf * @author Uncle Liu * */ public class Html2pdf { /** * 将HTML转成PD格式的文件。html文件的格式比较严格 * @param htmlFile * @param pdfFile * @throws Exception */ // <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd "> public static void html2pdf(String htmlFile, String pdfFile) throws Exception { // step 1 String url = new File(htmlFile).toURI().toURL().toString(); System.out.println(url); // step 2 OutputStream os = new FileOutputStream(pdfFile); ITextRenderer renderer = new ITextRenderer(); renderer.setDocument(url); // step 3 解决中文支持 ITextFontResolver fontResolver = renderer.getFontResolver(); if("linux".equals(getCurrentOperatingSystem())){ //Linux下的和Windows的不一样,要自己下载,不要拷贝Windows的到Linux fontResolver.addFont("/usr/share/fonts/chiness/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.EMBEDDED); }else{ fontResolver.addFont("C:\\Windows\\WinSxS\\amd64_microsoft-windows-font-truetype-simsun_31bf3856ad364e35_10.0.17134.1_none_e089ab61d8d9374e\\simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); } renderer.layout(); renderer.createPDF(os); os.close(); System.out.println("create pdf done!!"); } public static String getCurrentOperatingSystem(){ String os = System.getProperty("os.name").toLowerCase(); System.out.println("---------当前操作系统是-----------" + os); return os; } public static void main(String[] args) { String htmlFile = "D:\\WorkSpace\\IdeaProjects\\pdf\\src\\main\\resources\\templates\\u.html"; String pdfFile = "c:/test.pdf"; try { Html2pdf.html2pdf(htmlFile, pdfFile); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } } 3.html页面注意:html格式非常严格,图片地址这里用的是绝对路径(file:///D:/WorkSpace/IdeaProjects/pdf/src/main/resources/static/images/1.jpg)如果是相对路径要在后台设置<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"/> <title>Title</title> <style> /*没有background-color生成的pdf一部分会是空白*/ body{ text-align:center;border: 0px;margin: 0px;background-color:#FFFFFF;} .div{ margin:0 auto; width:1188px; height:auto;} body { /*中文支持*/ font-family:SimSun; } </style> </head> <body> <div class="div"> <div> <h2>123我</h2> <img src="file:///D:/WorkSpace/IdeaProjects/pdf/src/main/resources/static/images/1.jpg" style="width: 20px;height: 20px"/> <table border="1" cellspacing="0"> <tr> <td>eE额33</td> <td>eE额33</td> </tr> <tr> <td>eE额33</td> <td>eE额33</td> </tr> <tr> <td>eE额33</td> <td>eE额33</td> </tr><tr> <td>eE额33</td> <td>eE额33</td> </tr> </table> </div> </div> </body> </html>4.生成pdf超出页面长度时会自动分页
2021年12月08日
129 阅读
0 评论
0 点赞
2021-12-08
To display the conditions report re-run your application with 'debug' enabled.
spring boot项目启动报错:To display the conditions report re-run your application with 'debug' enabled.Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.可能是因为配置了数据库的包,但是没有配置数据源的问题
2021年12月08日
217 阅读
0 评论
0 点赞
2021-12-08
natapp外网穿透
1、下载客户端 2、安装natapp解压缩到目录D:\Program Files\natapp,双击打开会失败,需配置环境变量。3、注册账户,购买隧道 我的隧道:配置:4.运行复制authtoken, cmd进入natapp目录执行 natapp -authtoken 你的authtoken当然得启动本地项目,并配置80端口 至此就可以内网的服务器当成公网服务器来使用了
2021年12月08日
161 阅读
0 评论
0 点赞
2021-12-08
对象转JSON时属性丢失
在fastjson下将对象转json时会丢失部分属性的情况,出现这种情况的问题原因是由于属性命名不符合规范导致,比如:uId,一个字母后面紧跟着一个大写字母,导致反射get/set方法时会出现连续两个大写字母(getUId/setUId)。解决该问题的方法时在属性上加上注解:@JSONField(name="uId"),就可以解决该问题。或者是属性名serviceDeadline在get/set方法时方法名变成了getserviceDeadline/setserviceDeadline,改为getServiceDeadline/setServiceDeadline就可以了
2021年12月08日
202 阅读
0 评论
0 点赞
1
2
3
4