一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Programming Language

js判断对象是否为空对象的几种方法

1.将json对象转化为json字符串,再判断该字符串是否为"{}" var data = {}; var b = (JSON.stringify(data) == "{}"); alert(b);//true 2.for in 循环判断 var obj = {}; var b = function() { for(var key in obj) { return false; } return true; } alert(b());//true 3.jquery的isEmptyObject方法 此方法是jquery将2方法(for in)进行封装,使用时需要依赖jquery var data = {}; var b = $.isEmptyObject(data); alert(b);//true 4.Object.getOwnPropertyNames()方法 此方法是使用Object对象的getOwnPropertyNames方法,获取到对象中的属性名,存到一个数组中,返回数组对象,我们可以通过判断数组的length来判断此对象是否为空 注意:此方法不兼容ie8,其余浏览器没有测试 var data = {}; var arr = Object.getOwnPropertyNames(data); // Object.keys(objTest).length alert(arr.length == 0);//true   5.使用ES6的Object.keys()方法 与4方法类似,是ES6的新方法, 返回值也是对象中属性名组成的数组 var data = {}; var arr = Object.keys(data); alert(arr.length == 0);//true   from:https://www.cnblogs.com/jpfss/p/9105119.html

龙生   16 Jun 2020
View Details

CentOS7 SpringBoot 注册服务

1.服务配置文件

2.启动服务

  参考: https://blog.csdn.net/weixin_37490221/article/details/80758276

龙生   10 Jun 2020
View Details

linux中启动 java -jar 后台运行程序

直接用java -jar xxx.jar,当退出或关闭shell时,程序就会停止掉。以下方法可让jar运行后一直在后台运行。 方法一 java -jar xxx.jar & 说明: 在末尾加入 & 符号   方法二 (1)执行java -jar xxx.jar后 (2)ctrl+z 退出到控制台,执行 bg (3)exit 完成以上3步,退出SHELL后,jar服务一直在后台运行。   方法三 nohup java -jar xxxx.jar & 将java -jar xxxx.jar 加入  nohup   &中间,也可以实现   from:https://www.cnblogs.com/zsg88/p/9473843.html

龙生   10 Jun 2020
View Details

Asp.net Core 跨域配置

一般情况WebApi都是跨域请求,没有设置跨域一般会报以下错误

ASP.net Core 跨域有两种,全局和区域 全局跨域: 打开Startup.cs文件.在ConfigureServices方法中添加以下代码 1.配置跨域处理,允许所有来源:

2.允许一个或多个具体来源:

以上两种按需求选择一种即可. Configure方法中添加以下代码

 局部跨域第一种用法: 1.ConfigureServices方法不变,删去Configure中的app.UseCors()方法 2.在Controller顶部或者Action方法顶部加上[EnableCors("自定义的跨域策略名称")]特性,例如

以上就可实现指定某个controller或者action跨域 禁止跨域: 禁止跨域在Controller或者Action加上[DisableCors]特性即可禁止跨域

  参考: https://blog.johnwu.cc/article/asp-net-core-cors.html?from=singlemessage&isappinstalled=0 https://docs.microsoft.com/en-us/aspnet/core/security/cors http://www.cnblogs.com/tianma3798/p/6920704.html   from:https://www.cnblogs.com/xiaoliangge/p/7650465.html

龙生   10 Jun 2020
View Details

.Net Core 通过配置文件(appsetting.json)修改Kestrel启动端口

网上常见方法 网上太多文章通过修改Program文件方法进行修改。例如这样 修改配置文件的方法 将配置文件按照这样修改就行了

写在后面 更多配置参考 https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-3.1 也有有些人搞不懂,为什么要这样写呢,无论是iis,nginx,tomcat 等等这些web服务程序都有自己的配置规则。那是没问题的。但是如果你想要直接用Kestrel呢,这样做绝对是非常棒的,而且可以放到树莓派等小型机器中直接作为服务使用。非常棒。 还有一种就是在本地开发的debug时候,这样可以防止端口冲突,如果是debug,还可以修改launchSettings.json文件进行修改端口。这个文件的修改方式我就不多说了,自己看看里面的配置应该也会很清楚了(这个文件简单修改还可以,自己写一些复杂的系统变量就搞不懂了) 引用 https://www.cnblogs.com/goldenbiu/articles/10755213.html https://www.cnblogs.com/Allen0910/p/8550873.html     from:https://blog.csdn.net/iml6yu/article/details/100692488

龙生   01 Jun 2020
View Details

三步把asp.net core 3.1应用部署到centos7

一、编译发布Asp.net core 应用 直接使用vs2019编译发布后,通过ftp上传到centos的 /www/ 目录下,不再赘述。 二、centos安装asp.net core runtime和nginx 1、安装asp.net core runtime# Copy

  2、安装nginx# 添加源:#

  安装 nginx# Copy

  Nginx常用命令# Copy

  3、使用nginx反向代理# 在 /etc/nginx/ 目录下新建AspnetCoreDemo.conf,内容如下 Copy

  4、重新加载nginx配置#

  三、添加Systemd守护 1、Systemd service内容如下# 路径 /etc/systemd/system/AspnetCoreDemo.service 新建文件

  2、Systemd基本操作命令#

  四、防火墙设置(不需要端口访问,可忽略此步)

  from:https://www.cnblogs.com/wxb8/p/12359521.html

龙生   18 May 2020
View Details

CentOS 下运行.net Core程序

系统: 阿里云的默认 CentOS 7.5 镜像 项目环境:.Net Core 2.2 一、安装.Net Core的运行环境 第一步,如果是一台新的服务器,可以升级一下系统的基础软件。如果没有必要也可以跳过这一步。 执行命令

  第二步,注册Microsoft签名密钥,每个机器只要注册一次就可以 注册命令

执行结果   第三步:安装.Net Core SDK ,这里根据项目环境,需要安装2.2版的。不同的开发环境选择对应的运行时版本即可 执行命令

  完成后,通过命令,可以看出.net core的版本

    第四步:上传一个.Net Core的程序,进入到程序包所在目录 执行命令

    到这里,就可以通过服务器IP加上程序设定的端口号(一般默认是5000)进行访问了。如果你的服务器是在云端,有安全防护,需要开启对应的端口访问权限   二、通过 nginx 进行转发 第一步、安装nginx 执行命令

    第二步,修改 nginx 的配置文件 执行命令

修改 location的值,修改的内容如下:

  这个配置的意思是监听80端口,如果有人访问80端口就把请求转到5000端口,这里的5000端口就是你 .Net Core 程序的端口,默认为5000可以更改,如果有更改换掉即可。 第三步、重启 nginx 的服务。启动 .Net Core 的程序

这个时候,我们就可以通过服务器的80端口,访问我们的 .Net Core 程序了。   第四步、配置多个.net core的转发 如果你的服务器的nginx需要转发多个正在运行的 .Net Core 项目,可以通过在nginx的 /etc/nginx/conf.d/ 目录下,为每个项目建立一个转发的规则文件

这里的配置文件目录和文件格式 在 nginx.conf 中有指定。 进入目录后,新建一个文件

 

[…]

龙生   18 May 2020
View Details

Dubbo

一、Dubbo是什么? Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC(一种远程调用) 分布式服务框架(SOA),致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。 二、为什么要用Dubbo? 因为是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。  

  三、Dubbo 和 Spring Cloud 有什么区别?

  不需要,如果硬要用Web 容器,只会增加复杂性,也浪费资源。 五、Dubbo内置了哪几种服务容器?

  Dubbo 的服务容器只是一个简单的 Main 方法,并加载一个简单的 Spring 容器,用于暴露服务。 六、dubbo都支持什么协议,推荐用哪种?

  七、Dubbo里面有哪几种节点角色?

  八、dubbo服务注册与发现的流程图 dubbo服务注册与发现的流程图 九、Dubbo默认使用什么注册中心,还有别的选择吗? 推荐使用zookeeper作为注册中心,还有redis、multicast、simple注册中心。 十、Dubbo 核心的配置有哪些? Dubbo 核心的配置 十一、在 Provider 上可以配置的 Consumer 端的属性有哪些?

  十二、Dubbo有哪几种负载均衡策略,默认是哪种?

  十三、Dubbo启动时如果依赖的服务不可用会怎样? Dubbo缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止 Spring 初始化完成,默认 check="true",可以通过 check="false" 关闭检查。 十四、Dubbo推荐使用什么序列化框架,你知道的还有哪些?

  十五、Dubbo默认使用的是什么通信框架,还有别的选择吗?

  十六、Dubbo有哪几种集群容错方案,默认是哪种? Dubbo集群容错方案 十七、服务提供者能实现失效踢出是什么原理?

  十八、Dubbo服务之间的调用是阻塞的吗?

  Dubbo暂时不支持分布式事务。 十九、Dubbo的管理控制台能做什么?

  二十、Dubbo 服务暴露的过程

  二十一、当一个服务接口有多种实现时怎么做? 当一个接口有多种实现时,可以用 group 属性来分组,服务提供方和消费方都指定同一个 group […]

龙生   18 May 2020
View Details

C#中TripleDES对应Java中的DESede即大家说的3DES,附C#及Java加解密结果一致的控制台程序例子

直接上代码了。 Java控制台代码: package Test; import java.security.Key; import javax.crypto.Cipher; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.DESedeKeySpec; import javax.crypto.spec.IvParameterSpec; import org.apache.commons.codec.binary.Base64; public class Test { private static final String encoding = "UTF-8"; public static void main(String[] args) { try { String text = "20200121";// 明文 String key = "Tt3rLPrDIVIhXqAz";// 长度控制为16,作为3DES加密用的key String encryptStr = EncryptData(text, key);// 3DES加密结果 System.out.println("明文:" + text); System.out.println("密钥:" + key); System.out.println("密文:" + encryptStr); System.out.println("解密:" + DecryptData(encryptStr, key)); } catch (Exception e) { e.printStackTrace(); } } /** * DESede加密,key长度为16 * * @param plainText 明文 * @param key 密钥 * @return DESede加密结果 * […]

龙生   09 May 2020
View Details

webAPI 使用注解非必须参数拦截问题

使用注解可以更方便对参数进行验证,但是也会存在非必须参数如:https://aaa.com?id=1&name=&age=;或https://aaa.com?id=1&name&age的请求。这时ModelState.IsValid过滤器将会拦截请求提示"值是必需的。"或"有一个值是必需的,但请求中不存在该值。"异常。 若接口使用model接收参数,可将值类型参数改为可空类型解决此问题;如:

  若接口不使用model接收参数,暂无没有找到解决方案; 经过调试可以使用一种笨拙的取巧方案解决:在过滤器.ModelState.IsValid==false内部对值的错误内容进行排除  

  from:https://blog.csdn.net/niuc321/article/details/88694793

龙生   09 May 2020
View Details
1 56 57 58 175