pom引入:有MP了就不要再引入mybatis了,会出bug的
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3.1</version>
</dependency>
<!--mybatis-plus-generator 生成器-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.3.1</version>
</dependency>
<!-- junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
</dependency>
代码主体,隐去ip信息。
package com.sugerqube.XXX.Utils;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import org.junit.Test;
import java.util.Collections;
public class MPGenerator {
@Test
public void testGenerator() {
//1、配置数据源
FastAutoGenerator.create("jdbc:mysql://XXXXX/XXXXX", "root", "XXXXX")
//2、全局配置
.globalConfig(builder -> {
builder.author("sugerqube") // 设置作者名
.disableOpenDir() //禁止打开输出目录,默认打开
.outputDir(System.getProperty("user.dir") + "/src/main/java") //设置输出路径:项目的 java 目录下
.enableSwagger() //开启 swagger 模式
// .enableKotlin()
// .enableSpringdoc()
.dateType(DateType.ONLY_DATE) //定义生成的实体类中日期的类型 TIME_PACK=LocalDateTime;ONLY_DATE=Date;
.commentDate("yyyy-MM-dd hh:mm:ss"); //注释日期
})
//3、包配置
.packageConfig(builder -> {
builder.parent("com.sugerqube") // 设置父包名
.moduleName("timecocoon") //设置模块包名
.entity("entity") //pojo 实体类包名
.service("service") //Service 包名
.serviceImpl("serviceImpl") // ***ServiceImpl 包名
.mapper("mapper") //Mapper 包名
.xml("mapper") //Mapper XML 包名
.controller("controller") //Controller 包名
.pathInfo(Collections.singletonMap(OutputFile.xml, System.getProperty("user.dir") + "/src/main/resources/mapper")); //配置 mapper.xml 路径信息:项目的 resources 目录下
})
//4、策略配置
.strategyConfig(builder -> {
// builder.addInclude("incident_point", "incident_sum", "incident_line", "incident_cause_effect", "graph") // 设置需要生成的数据表名
builder.addInclude("incident_point") // 设置需要生成的数据表名
.addTablePrefix("t_", "c_") // 设置过滤表前缀
//4.1、实体类策略配置
.entityBuilder()
.enableLombok() //开启 Lombok
.disableSerialVersionUID() //不实现 Serializable 接口,不生产 SerialVersionUID
.logicDeleteColumnName("deleted") //逻辑删除字段名
.naming(NamingStrategy.underline_to_camel) //数据库表映射到实体的命名策略:下划线转驼峰命
.columnNaming(NamingStrategy.underline_to_camel) //数据库表字段映射到实体的命名策略:下划线转驼峰命
.idType(IdType.ASSIGN_ID)
// .addTableFills(new Column("create_time", FieldFill.INSERT))
// .addTableFills(new Property("modifyTime", FieldFill.INSERT_UPDATE))
.enableTableFieldAnnotation() // 开启生成实体时生成字段注解
.enableFileOverride()
//4.2、Controller策略配置
.controllerBuilder()
.formatFileName("%sController") //格式化 Controller 类文件名称,%s进行匹配表名,如 UserController
.enableRestStyle() //开启生成 @RestController 控制器
// .enableFileOverride()
//4.3、service 策略配置
.serviceBuilder()
.formatServiceFileName("%sService") //格式化 service 接口文件名称,%s进行匹配表名,如 UserService
.formatServiceImplFileName("%sServiceImpl") //格式化 service 实现类文件名称,%s进行匹配表名,如 UserServiceImpl
// .enableFileOverride()
//4.4、Mapper策略配置
.mapperBuilder()
.superClass(BaseMapper.class) //设置父类
.formatMapperFileName("%sMapper") //格式化 mapper 文件名称
.enableMapperAnnotation() //开启 @Mapper 注解
// .enableFileOverride()
.formatXmlFileName("%sXml"); //格式化 Xml 文件名称
})
//6、执行
.execute();
}
}
下次有空写一篇详解,带大家简单讲一下使用,看一下文档和源码,新代码生成器的文档有一点点跟不上源码。
文章最后更新时间为:2018年08月14日11:14:391.Bridged(桥接模式)什么是桥接模式?桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。在桥接的作用下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。在桥接模式下,虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致。其网络结构如下图所示:接下来,我们就来实际操作,如何设置桥接模式。首先,安装完系统之后,在开启系统之前,点击“编辑虚拟机设置”来设置网卡模式。点击“网络适配器”,选择“桥接模式”,然后“确定”在进入系统之前,我们先确认一下主机的ip地址、网关、DNS等信息。然后,进入系统编辑网卡配置文件,命令为vi/etc/sysconfig/network-scripts/ifcfg-eth0添加内容如下:编辑完成,保存退出,然后重启虚拟机网卡,使用ping命令ping外网ip,测试能否联网。能ping通外网ip,证明桥接模式设置成功。那主机与
1VMware系列产品之身份验证绕过和JDBC注入漏洞分析VMwareWorkspaceONEAccess在OAuth2ACS框架中有两个身份验证绕过漏洞,CVE-2022-22955就是其中一个,攻击者可通过获取OAuth2客户端的激活码,激活OAuth2客户端以此绕过身份验证;而CVE-2022-22957属于JDBC注入导致的远程代码执行,具有管理访问权限的攻击者通过可控参数构造恶意JDBCURL触发反序列化,从而执行任意命令获取系统权限。https://www.anquanke.com/post/id/2789032【云攻防系列】从攻击者视角聊聊K8S集群安全(下)攻击者视角聊聊K8S集群安全(上)中总结了在K8S集群中对K8S组件、节点对外服务、业务pod的攻击方法,以及容器逃逸的方法。本篇将继续介绍图1中攻击点8~12,即横向攻击、对K8S管理平台的攻击、对镜像库的攻击以及对第三方组件的攻击。https://www.secpulse.com/archives/186424.html3浅谈两家大型机构的云原生安全实战案例本文通过金融和制造业行业的两大实战案例,来看企业如何做好
Docker学习教程之Lepus部署(MySQL监控)介绍Lepus是一个由Python+PHP开发的数据库企业级监控系统,可用于MySQL/Oracle/MongoDB/Redis下载镜像 dockerpullgeorce/lepus查看镜像 dockerimages启动容器 dockerrun-d--name=lepus-p32800:80-p32799:3306georce/lepus查看进程 dockerps进入dockerbash sudodockerexec-itlepus/bin/bash配置环境变量 echo$TERM exportTERM=dumb用户名密码 admin Lepusadmin常见错误 perl:symbollookuperror:/usr/local/lib64/perl5/auto/DBD/mysql/mysql.so:undefinedsymbol:mysql\_init问题原因perl有多个lib\[/usr/local/lib64/perl5\|/usr/lib64/perl5\],系统调用时默认选用/usr/local/lib64/perl5
并发挑战(二)强烈推介IDEA2020.2破解激活,IntelliJIDEA注册码,2020.2IDEA激活码死锁锁是一个很有用的工具,运用的场景也多,使用也简单,但是,锁使用不当也会出现一系列维妮塔,比如说:死锁,一旦产生死锁,会造成系统功能无法使用。 例如:publicclassDeadLockDemo{ privatestaticStringA="A"; privatestaticStringB="B"; privatevoiddeadLock(){ Threadt1=newThread(()->{ synchronized(A){ try{ Thread.currentThread().sleep(2000); }catch(InterruptedExceptione){ e.printStackTrace(); } synchronized(B){ System.out.println("1"); } } }); Threadt2=newThread(()->{ synchronized(B){ sync
RabbitMQ的安装Step1:下载Erlang在安装RabbitMQ之前,我们需要先安装RabiitMQ所需要的的环境RabbitMQ是由Erlang语言编写的,因此在安装RabbitMQ之前需要安装Erlang。Erlang的下载地址https://www.erlang.org/downloadsStep2:安装ncurses#安装ncurese yuminstallncurses-devel复制Step3:安装ODBC#安装ODBC yuminstallunixODBC.x86_64unixODBC-devel.x86_64复制Step4:安装fop#安装fop yuminstallfop.noarch复制Step5:安装wxWidgets下载wxWidgets源文件下载地址https://www.wxwidgets.org/downloads/#安装gtk(2.0以上) yuminstallgtk3-devel.x86_64 #解压压缩包 tarxjfwxWidgets-3.0.5.tar.bz2 #进入目录 cdwxWidgets-3.0.5/ #配置并安装wxWidget
前言前面丙已经带着大家过了服务暴露和服务引入两个流程了,而这两个流程就是为了服务的调用,今天丙就带着大家来过一遍Dubbo服务调用流程。看完今天的服务调用流程,基本上Dubbo的核心过程就完整的串联起来了,在脑海中应该就有Dubbo整体运行的概念,这体系就建立起来了,对RPC也会有进一步的认识。话不多说,直接进入正题吧!简单的想想大致流程在分析Dubbo的服务调用过程前我们先来思考一下如果让我们自己实现的话一次调用过程需要经历哪些步骤?首先我们已经知晓了远程服务的地址,然后我们要做的就是把我们要调用的方法具体信息告知远程服务,让远程服务解析这些信息。然后根据这些信息找到对应的实现类,然后进行调用,调用完了之后再原路返回,然后客户端解析响应再返回即可。调用具体的信息那客户端告知服务端的具体信息应该包含哪些呢?首先客户端肯定要告知要调用是服务端的哪个接口,当然还需要方法名、方法的参数类型、方法的参数值,还有可能存在多个版本的情况,所以还得带上版本号。由这么几个参数,那么服务端就可以清晰的得知客户端要调用的是哪个方法,可以进行精确调用!然后组装响应返回即可,我这里贴一个实际调用请求对象列子。
摘要:在SkyWalking课程中有一小节讲到了JavaAgent,零代码侵入就能实现JVM层面的AOP增强的好技术。介绍:JavaAgent是JDK1.5以后引入的,也可以叫做Java代理。 JavaAgent是运行在main方法之前的拦截器,它内定的方法名叫premain(),也就是说先执行premain()然后再执行main方法。 使用步骤:定义一个MANIFEST.MF文件,在其中添加premain-class配置项。创建premain-class配置项指定的类,并在其中实现premain()方法。将MANIFEST.MF文件和premain-class指定的类一起打包成一个jar包。使用`-javaagent:`指定该jar包的路径。举个栗子agent-demo工程必须提供的premain()方法。publicclassAgentDemo{ publicstaticvoidpremain(StringagentArgs,Instrumentationinst)throwsException{ System.out.println("premain(Stringa
配图来自Canva一个现象:生活中越来越多人摒弃拼音输入功能,转而使用语音输入功能,微信、QQ等社交软件语音功能已十分成熟,百度搜索、搜狗搜索等也都添上语音输入功能,语音输入取代拼音输入的劲头显现。几年前,输入法市场还是另一番光景,用户依赖拼音输入,嫌弃语音输入。因为,当时的语音输入功能在信息表达的准确性和时效性上存在漏洞,输出错别字多、特殊语句识别不了,而拼音输入准确性高,更加靠谱。而今,语音识别技术、人工智能技术的精进让语音输入法脱胎换骨,用户体验更佳。而用户在尝试了智能语音输入功能之后,也开始改观。其实,AI语音输入法被誉为办公神器、懒人福音的原因很简单:语音输入功能简化输入流程,更便捷也更符合用户口头表达习惯。可以看到,随着用户习惯的改变,输入法产品也变得更加智能,而新市场需求的出现,相当于给第三方输入法企业超车的机会。智能语音输入渐成主流相较于拼音输入,便捷、高效的智能语音输入大幅度的提升了用户的沟通效率和输入体验,满足了现代人高效率、高品质、时尚便捷的生活追求。而新颖、良好的用户体验,也让智能语音输入法渐成主流输入方式。赛诺市场研究发布的《2020年中国第三方手机输入法春季
2015-04-0814:05:34jQueryUI动画方法是jQuery方法的扩展,其方法的参数比jQuery方法更多,并且提供的动画效果比jQuery方法更多,下面我先来给大家介绍一下jQueryUI的effect方法。在使用jQueryUI之前需要引入js文件,我们经常使用的是jquery-ui.js,同时还需要引入jQuery文件jquery-ui.js,引入方法为:<scriptsrc="jquery-1.9.0.js"></script> <scriptsrc="jquery-ui.js"></script>复制先来介绍一个通过鼠标单击实现元素抖动效果的实现方法:<htmllang="en"> <head> <metacharset="utf-8"> <title>effectdemo</title> <linkrel="stylesheet"href="
随着互联网的发展,尤其是移动互联网,基于H5、微信的应用越来越多,企业也更多地想基于Chrome、网页、H5、微信公众号来快速开发和运营自己的产品,那么传统的安防IPC所输出的各种RTSP、Onvif、GB/T28181、SDK视频流,都无法直接在web或者微信上进行无插件化的播放,那么,就产生了一种安防设备互联网化的需求,基本要求是:无插件、纯web、全平台Windows/Linux/Android/iOS、支持微信、支持分享!EasyNVR完全解决了上述各种问题,实现了一个完整的、小而美的传统安防向互联网迈进的解决方案: ★支持PC端/Android安卓端/iOS苹果端/微信端无插件化观看; ★支持微信扫描二维码观看; ★支持微信/微博直播分享; ★基于纯Web网页/无插件H5观看(不用安装任何APP); ★支持海康/大华等市面上几乎全部的网络摄像机接入; ★实时IPCamera/NVR直播画面实时直播监控;常见应用场景:安防监控系统/小区监控/幼儿园监控/交通监控/厂区监控/景点景区监控/店面监控特色特点:基于纯web页面观看监控/无须安装插件/跨平台支持PC端、安卓端、iOS苹
评估SNP遗传力有两种方法LDSC和GREML,本文介绍下GREML评估遗传力的方法。在GCTA软件中,其核心就是如下所示的线性混合模型其中y表示表型,b表示固定效应协变量的系数,u表示随机效应自变量的系数,这里的随机效应指的就是所有SNP位点对表型的效应,e表示随机误差。其中u和e服从如下所示的正态分布表型方差可以用如下公式表示在GCTA中,W的计算公式如下在之前的文章中,我们介绍了GCTA对于样本遗传相似度的定义,公式如下可以推导出如下关系定义所有SNP位点的方差如下则表型变异V的公式变换如下 定义SNP遗传力的计算公式如下此时只需要通过REML算法对线性混合模型的参数进行估计,然后求解上述方差,即可计算出了SNP遗传力了。软件实际操作的代码如下首先构建GRM矩阵,下游分析都是需要输入GRM矩阵的,在实际分析中,还可以根据遗传相似度进行过滤,去除亲缘关系较近的样本,上述代码为了方便演示,没有做过滤。在进行REML分析时,有两种选择,第一种是默认用法,没有协变量的校正,第二种添加了协变量的校正,注意这里的协变量都是属于固定效应协变量,协变量可以是离散型,也可以是连续型。上述代码中使用
作者:黄小斜今天和各位要参加校园招聘的小伙伴聊一下,如何制定校园招聘计划。现在是七月中旬,这段时间大家应该都已经在准备秋季招聘了,因为我之前也有说过秋招提前批大概在七月中下旬就会开始,而正式的招聘一般在八月底到九月之间会陆续召开,所以相当于这三个月的时间都会是持续的秋季校园招聘。如果说高考,考研都是拿成绩定胜负,一次考试定终生,那么校园招聘给了你很多次的求职机会。你可选择参加各种公司的招聘,然后最后选择一下你真正想要去的公司工作。这对于我们来说,其实选择是更加多元化的,不像高考的时候,也就那么几个人能考上清华北大,而你连想都不敢想。现在的情况是你可以尝试所有的公司,只要你有实力,你就有机会,虽然我感觉进bat的难度要远远的低于高考考上清华北大。但是,秋季校园招聘依然是很多同学都需要认真准备的一场战役,这是场持久战,耗时两到三个月。对于准备充分的同学来说,可能一个月之内就可以结束战斗,但是对于那些准备尚未充分的同学来说,如果你一个月不能拿到心仪的offer,那么久只能继续战斗到第二个月,第三个月,甚至要等到春招。所以,我们必须要把秋季招聘当成一场持久战,一场拉锯战。这两到三个的时间应该如
在区块链旅游口号喊出来的这段时间内,我一直很好奇当下的旅游乱象已经发展到了什么程度,闲暇之余打开了知乎,在回答云南旅游乱象的相关问题底下,看到了以下几位网友的独特见解:网友一:自由行哪里都没有乱象,景区东西贵,只要人流量大的地点东西一样贵,跟团游哪里都有乱象,无关地域,于国内出境都一样。网友二:云南旅游业的某些乱象,只是整体旅游环境的一个缩影,在其他地方、其他国家,这些同样存在,甚至更多。而我能想到的一些解决方案或许是老调重弹,旅游业竞争愈加激烈,这也为理性消费提供了更加良性的土壤,如果能随之引入信用评价体系的话,如果真正有魄力将信用评价与资质保留挂钩的话,我想更多景点会更加在乎“脸面”的。不,或许应该说更加在乎“饭碗”更贴切一些。总之一句话,市场“不对”的情况下,谁该出手,敢不敢出手?其实答案是非常明确的。网友三:把一个烂摊子收拾好,提高旅游业水平,整治旅游业风气,让云南旅游良性循环,提高竞争力是大家所希望的,而这个过程需要付出很多的人力物力,需要领导大刀阔斧的改革,需要很长的整改时间,而且在一定时间内的收入肯定会下降,旅游业是云南的支柱产业之一,你想他们愿意干这种费力不讨好的事吗?
有这样一个例子在thinkPHP视图页面执行一个给评论点赞的功能,为了强化用户体验,一般都采用ajax异步请求后台处理点赞数据,成功后页面执行局部更新后的数据即可。前台通常会用到jquery,通过执行jquery的ajax方法更加简单方便的完成任务请求。简单描述下问题出现场景tinkPHP在应用路由后的视图页面执行ajax,并没有正常放回数据。以下代码描述了一个获取评论ID,到ajax请求的过程。根据后台处理规则,cmthot方法会返回一个更新的后点赞数据(data)返回到前台。function uphot(o){ var cmtid=$(o).attr("cmtid");//获取评论ID $.ajax({ type:"post", dataType:"json", data:{cmtid:cmtid}, url:"{:url('cmthot')}",//请求地
今天我们所谓的人工智能只不过是一种高级机器学习软件,运用广泛行为算法来调节自身以适应人类的喜好。虽然人工智能的用途不可小觑,但是从存在主义角度来看,这些机器并不会越变越“聪明”,但是他们会根据越来越多的数据来提升自己的技能和可用性。以下我列举了当今最为人所熟知的人工智能应用案例。#1—Siri几乎人人都知道苹果的私人助手Siri。她是一种声控的智能助手,声音亲和,能够在日常生活中给人类提供帮助。她可以帮我们查找信息,为我们提供指导,帮我们创建备忘录,帮我们发信息。Siri其实是一种伪智能的数字私人助手。她运用机器学习技术来提高自身智能性,以预测和理解我们的自然语言问题和命令。#2—AlexaAlexa是新晋的智能家居中心,其发展速度令人瞠目。亚马逊刚刚推出Alexa项目时就在世界范围内获得了广泛关注。它的实用性极强,我们在房间内任意角落发出指令,它都能解读我们的话语,由此它被誉为是具有革命性的产品,能够代替我们上网获取信息、购物、安排日程、设置闹钟等等,它还能为我们的智能家居提供能源,对于很多行动不便的人来说,这个产品确实是一大福音。#3—Tesla如果你不曾拥有特斯拉,你就不会知道什
作者:陈象9/14/201711:43:07PM导语:最近写了好几个简单的爬虫,踩了好几个深坑,在这里总结一下,给大家在编写爬虫时候能给点思路。本次爬虫内容有:静态页面的爬取。动态页面的爬取。web自动化终极爬虫。分析:数据获取(主要靠爬虫)静态网页爬取动态网页爬取数据存储(pythonexcel存储)PythonExcel操作,保存结果数据获取实战:百度音乐(静态网页)分析步骤 1.打开百度音乐:http://music.baidu.com/2.打开浏览器调试模式F12,选择Network+all模式3.搜索框搜索歌曲(beatit),查看控制台过滤请求:ctrl+f输入搜索关键字依照请求接口的特点,查看主请求分析请求(requesheaders、Querystring、response)4.通过以上分析:获取到有效信息:歌曲搜索请求接口为http://music.baidu.com/search?key=歌曲名获取请求方式(post、get)百度音乐搜索歌曲为get请求请求headers(伪装浏览器,避免被拒绝请求)请求返回结果(htmlorjson)百度音乐的返回结果为html。
随着React越来越受欢迎,React开发者也越来越多,在开发过程中也遇到各种各样的问题。本文我将结合自己实际工作经验,总结11个React开发中常见的一些错误,帮助您避免一些错误的发生。如果您刚开始使用React,那建议这篇文章你要好好看一下,如果您已经使用过React开发项目,也建议您能查缺补漏一下。阅读完本文,您将学习如何避免下面这11个React错误用法:渲染列表时,不使用key直接通过赋值方式修改state值将state值直接绑定到input标签的value属性执行setState后直接使用state使用useState+useEffect时出现无限循环忘记在useEffect中清理副作用错误的使用布尔运算符没有定义组件参数类型把字符串当做数值传递到组件没有以大写字母开头的组件名称错误的为元素绑定事件1.渲染列表时,不使用key问题描述在刚学React时,我们会根据文档介绍的方式来渲染一个列表,比如:constnumbers=[1,2,3,4,5]; constlistItems=numbers.map((number)=><li>{number}</
【编者按】本文作者为KevinGoldberg,主要介绍要想成功部署DevOps模式,企业所需应对的5大挑战与问题。文章系国内ITOM管理平台OneAPM编译呈现。 要给DevOps下个简明、准确而又恰当的定义真不是件容易的事儿。不过,以前看到过一句话,似乎能较好地解释什么是DevOps——“DevOps是一种文化、运动或者实践,它强调软件开发人员和其他IT专业技术人员之间的沟通与协作,以共同促进软件交付流程和基础设施变更的自动化。” 现在,你明白了什么是DevOps,什么不是DevOps,那么你又要思考,为什么你的企业应该使用DevOps?除了打破两个分散部门之间独立的工作模式,你还可以期待怎样的显著变化和成果?根据Puppet最新的《DevOps现状报告》,他们发现“高效能的IT组织比低效能的IT组织经历的故障要少60倍,故障恢复速度要快168倍。而且,他们的部署时间要短200倍但部署频率却高出30倍。”简单地说就是,成功的DevOps组织能在更短的时间内实现更快的产品发布频率,而且出现的问题更少。 要实现更具有协作性的DevOps转变,在开始前,必须搞清楚公司可能会面临哪些潜在的
前言 今天来聊聊一个接口对接的场景,A厂家有一套HTTP接口需要提供给B厂家使用,由于是外网环境,所以需要有一套安全机制保障,这个时候oauth2就可以作为一个方案。 关于oauth2,其实是一个规范,本文重点讲解spring对他进行的实现,如果你还不清楚授权服务器,资源服务器,认证授权等基础概念,可以移步理解OAuth2.0-阮一峰,这是一篇对于oauth2很好的科普文章。 需要对springsecurity有一定的配置使用经验,用户认证这一块,springsecurityoauth2建立在springsecurity的基础之上。第一篇文章主要是讲解使用springboot搭建一个简易的授权,资源服务器,在文末会给出具体代码的github地址。后续文章会进行springsecurityoauth2的相关源码分析。java中的安全框架如shrio,已经有跟我学shiro-开涛,非常成体系地,深入浅出地讲解了apache的这个开源安全框架,但是springsecurity包括oauth2一直没有成体系的文章,学习它们大多依赖于较少的官方文档,理解一下基本的使用配置;通过零散的博客,了解一
数组内是否有重复 //返回true就是有重复functionisRepeat(array){ if(array.length===0){ returnfalse; } for(vari=0;i<array.length;i++){ varcurV=array[i]; varcount=0; for(varj=0;j<array.length;j++){ if(curV===array[j]){ count+=1; } } if(count==2){ returntrue; } } returnfalse; }复制 jquery添加数组与删除数组 //添加数组functionadd(id){ if($.inArray(id,teacherIdArray)===-1){ xxxArray.push(id); } }//删除数组 functionremove(id){ varindex=$.inArray(id,teacherIdArray); if(index!==-1){ xxxIdArray.splice(index,1); } }//添加复制 fun
win10蓝屏,windbg的使用 上微软官网下载windbg https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools 下载页面流程如下所示 选择Asastandalonetoolset方式进行安装 点击下载安装程序,会根据环境下载对应的版本 安装时,仅勾选windbg工具即可。 安装好后,首先需要配置符号表,才能正确解析dump文件系统符号文件的配置: srv*c:\mss*http://msdl.microsoft.com/download/symbols上面的意思就是从微软官网下载系统符号文件到c:\mss目录如果还需要添加pdb文件,则把它的路径加到后面即可,用分号隔开 下图为软件界面,选择FILE->OPENCRASHDUMP 打开C:\Windows\Minidump路径下的dmp文件。通过提示找到出错原因。 运行过程略有卡顿,输出狂可能会提示调试器未连接,稍等片刻即可