Java List<T> 去重
1.List<T>,是个泛型,实际业务里,它经常是一个bean,例如Person类,里面有age、name等属性。 2.如果List<Person> ps 有重复的数据,我们需要去重的话,就要在Person类里写上equal()方法和HashCode()方法。注:不写这个不能去重! 3.去重,我们就需要一个临时的List<Person> temp 集合来接收新数据,一个临时Person p 来接收循环的数据。 4.最后迭代去重。 List<Person> temp = new ArrayLis
ASP.NET Core 2.2 基础知识(十六) SignalR (未完待续)
我一直觉得学习的最好方法就是先让程序能够正常运行,才去学习他的原理,剖析他的细节. 就好像这个图: 所以,我们先跟着官方文档,创建一个 SignalR 应用: https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/signalr?view=aspnetcore-2.2&tabs=visual-studio 这个例子一共涉及到下面几个步骤: 自定义中心 ChatHub ; 在启动类 Startup 中启用 SignalR 服务,并添加路由;
dubbo spi解析
1. 什么叫SPI? 简单总结就是一种使用类名字符串来动态实例化java类的方式,也就是反射。 2. java SPI与Dubbo SPI有什么区别 然后在这个文件里面写入实现类 com.blueskykong.javaspi.serializer.KryoSerializer com.blueskykong.javaspi.serializer.JavaSerializer 但是dubbo的SPI格式变了,也就意味着不能直接使用java SPI了 文件的目录相似,但是里面的内容变为了key-
点评CAT 安装手册
CAT 安装部署: 下文将一步步介绍如何安装服务端、如何接入客户端、如何查看一些监控指标 首先,准备安装环境 1.确保待安装环境已经安装了jdk(1.6,1.7版本)、git、maven(maven 版本需要在 3.2.3以上)mysql、web容器 tomcat,这里不再赘述 2.下载cat源码:https://github.com/dianping/cat.git,并导入到eclipse(导入过程中可能会遇到一些问题,可以不必在此纠结,继续下一步) 3.下载master打包后的包,http
通俗易懂--岭回归(L2)、lasso回归(L1)、ElasticNet讲解(算法+案例)
1.L2正则化(岭回归) 1.1问题 想要理解什么是正则化,首先我们先来了解上图的方程式。当训练的特征和数据很少时,往往会造成欠拟合的情况,对应的是左边的坐标;而我们想要达到的目的往往是中间的坐标,适当的特征和数据用来训练;但往往现实生活中影响结果的因素是很多的,也就是说会有很多个特征值,所以训练模型的时候往往会造成过拟合的情况,如右边的坐标所示。 1.2公式 以图中的公式为例,往往我们得到的模型是: 为了能够得到中间坐标的图形,肯定是希望θ3和θ4越小越好,因为这两项越小就越接近于0,就可以
get post HTTP 请求
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; impor
携程 apollo api
Apollo管理员在http:// {portal_address} /open/manage.html创建第三方应用,创建之前最好先查询此AppId是否已经创建。创建成功之后会生成一个令牌,如下图所示: 2.2给已注册的第三方应用授权 第三方应用不应该能操作任何Namespace的配置,所以需要给token绑定可以操作的Namespace.Apollo管理员在http:// {portal_address} /open/manage.html页面给token赋权。赋权之后,第三方应用就可以通
双向加密算法aes 在Java 中的应用
package com.noahgroup.paas.cicd.rest.apollo.test; import java.security.Key; import java.security.SecureRandom; import java.util.Base64; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; public class AESUtils { //实例化密钥 private static Key
json 数据转化为实体类 包含list类型
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; impor
json 转简单对象
import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import org.codehaus.jackson.JsonEncoding; import org.codehaus.jackson.JsonGenerationException; import org.codehaus.jackson.JsonGenerator; impor
mybatis 逆向工程生成实体类
在maven中配置pom.xml文件 在pom.xml的中加入如下插件:
1
2
3
4
5
6
7
8
9
10
<!--mybatis 逆向工程-->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
mybatis 批量修改 中的坑
使用事务控制,在service层控制进行循环修改。 mybatis动态sql语句进行批量修改。 透过现象看本质就是要实现以下效果 批量的sql语句一次执行 第一种:使用事务控制,在service层控制进行循环修改。容易想到,容易操作,但是要发送多次sql请求,浪费时间和性能。 这个是一个树拖拽排序的后台代码: sql就是最简单的update语句 service用事务控制,循环执行插入就行 这个很简单,很好理解,不多说。注意事务控制就行。 第二种:mybatis动态sql语句进行批量修改。一次性
vue 日期数据格式化
vue <span>{{ modifyForm.changeId}} </span> export default { name: 'modifyDetai', created () { if (this.changeId !== undefined) { this.getDetail() } }, filters: { formatDate: function (value) { let date = new Date(value) let y = date.getFullYear() le
Please commit your changes or stash them before you merge
今天用git pull来更新代码,遇到了下面的问题:
error: Your local changes to the following files would be overwritten by merge: xxx/xxx/xxx.java Please, commit your changes or stash them before you can merge. Aborting 提示已经很友好了,从网友处得到的答案直接帮我解决问题。 1.stash 通常遇到这个问题,你可以
如何在Java MyBatis 插入数据库返回主键?
User user = new User();
user.setUserName("chenzhou");
user.setPassword("xxxx");
user.setComment("测试插入数据返回主键功能");
System.out.println("插入前主键为:"+user.getUserId());
userDao.insertAndGetId(user);//插入操作
System.out.println("插入后主键为:"+user.get
JAVA 调用 jenkins 远程API
/ Jenkins-client
compile group: 'com.offbytwo.jenkins', name: 'jenkins-client', version: '0.3.6' 第二步:写代码
JenkinsServer jenkins = new JenkinsServer(new URI("http://localhost:8088/"), "用户名", "密码");
// 判断jenkins是否running
if(jenkins.isRunning()
2019.01.02 NOIP训练 三七二十一(生成函数)
版权声明:随意转载哦......但还是请注明出处吧: https://blog.csdn.net/dreaming__ldx/article/details/85607023 传送门 生成函数基础题。 题意简述:求由1,3,5,7,9这5个数字组成的n位数个数,要求其中3和7出现的次数都要是偶数。 考虑对于每个数字构造生成函数。 对于1,5,9: ∑nxnn!=ex\sum_n\frac{x^n}{n!}=e^x∑nn!xn=ex 对于3,7: ∑nx2n(2n)!=ex+e−x2\sum_n
今日推荐
周排行