自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(125)
  • 资源 (3)
  • 收藏
  • 关注

原创 机器人的运动范围 的三种解法

题目:地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人能够到达多少个格子?示例:输入:m = 2, n = 3, k = 1输出:3来源:力扣(LeetCod

2020-08-28 23:36:31 390

原创 四则运算 不含小数

题目描述:输入: 字符串格式的算术表达式,如: “3+2*{1+2*[-4/(8-6)+7]}”, 数字部分无小数输出: 计算结果思路: 使用两个栈, 一个保存运算符, 一个保存数字这个题目主要是各类特殊情况需要考虑比较多java代码实现:import java.util.*;@SuppressWarnings("unchecked")public class Main{ public static void main(String[] args){ Scanne

2020-08-23 15:05:14 319

原创 购物单 与 01背包

牛客网试题地址:https://www.nowcoder.com/practice/f9c6f980eeec43ef85be20755ddbeaf4?tpId=37&&tqId=21239&rp=1&ru=/ta/huawei&qru=/ta/huawei/question-ranking输入描述:输入的第 1 行,为两个正整数,用一个空格隔开:N m(其中 N ( <32000 )表示总钱数, m ( <60 )为希望购买物品的个数。)从第

2020-08-21 12:21:58 379

原创 牛客网在线编程获取输入和打印输出

之前都是在leetcode刷题的, 第一次去牛客网刷算法题, 感觉有点不太适应emmm记录下输入输出的格式:输入的获取:import java.util.*;public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); //多组输入的时候请务必好好包起来 while(sc.hasNext()){

2020-08-14 15:38:28 1331

原创 单词距离与双游标

题目:有个内含单词的超大文本文件,给定任意两个单词,找出在这个文件中这两个单词的最短距离(相隔单词数)。如果寻找过程在这个文件中会重复多次,而每次寻找的单词不同,你能对此优化吗?示例:输入:words = [“I”,“am”,“a”,“student”,“from”,“a”,“university”,“in”,“a”,“city”], word1 = “a”, word2 = “student”输出:1这个题用暴力法会超时-.-改用双游标定位: int lastIndex1 = -1;

2020-08-14 12:22:50 240

原创 字典序排数 与dfs遍历N叉树

题目如下:给定一个整数 n, 返回从 1 到 n 的字典顺序。例如,给定 n =1 3,返回 [1,10,11,12,13,2,3,4,5,6,7,8,9] 。请尽可能的优化算法的时间复杂度和空间复杂度。 输入的数据 n 小于等于 5,000,000。首先观察数字的排列规则, 会发现这是一个N叉树的前序遍历.子节点和父节点的关系: children = parent*10+i (i =1,2,3…)需要判断: 节点所属数字不能大于n第一层子节点不包含0, 可以考虑单独处理.可以考虑使

2020-08-14 11:17:10 2474

原创 按字符串末尾的数字排序

题目如下:给出的字符串结构是前边是字母、后边为数字,例如wew0145,要求给出一组数据,按照后边的数字从小到大排序。输入wr0068,lt01,qhy0027828,gh20425256,xj0033258,zmj00505562输出lt01,wr0068,qhy0027828,xj0033258,zmj00505562,gh20425256解答:public static void main(String[] args) { String[] strs = new St

2020-08-12 23:02:54 1125

原创 回文素数

主要是记一下回文和素数的定义:public static void main(String[] args) { int N = 9989900; while(true){ //找到符合条件的则跳出循环并打印 if(N == reverse(N) && isPrime(N)){ System.out.println(N); break;

2020-08-12 21:39:43 163

原创 无重复字符的最长子串 与 滑动窗口

题目描述如下:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。这一题用暴力算法遍历也可以, 但是时间会超过leetcode的要求.读题可以总结题目有如下特点:输出结果在原字符串中是连续排列的每次需要读取的只在头/尾部, 中间部分内容提供比较时用这时候考虑用滑动窗口的方式就可以显著地减少操作次数.代码如下:import java.util.*;public class demo { public static void main(String[] args)

2020-08-12 15:48:18 137

原创 括号匹配深度 与 栈的使用

牛客网这一题的题干如下:输入描述:输入包括一个合法的括号序列s,s长度length(2 ≤ length ≤ 50),序列中只包含’(‘和’)’。输出描述:输出一个正整数,即这个序列的深度。然后我们再来看下对于"合法的括号序列"的定义1、空串"“是一个合法的括号匹配序列2、如果"X"和"Y"都是合法的括号匹配序列,“XY"也是一个合法的括号匹配序列3、如果"X"是一个合法的括号匹配序列,那么”(X)“也是一个合法的括号匹配序列4、每个合法的括号序列都可以由以上规则生成。例如:

2020-08-11 22:21:31 262

原创 SpringMVC和Struts2的区别

在网上看到了这个问题, 突然想起之前没有仔细总结过, 于是写了这篇博客.现在使用Struts2的公司估计是很少了, 除非是一些很久以前的历史遗留项目(很有可能是已经在重构的路上或者准备重构的路上了)我的第一份工作使用的还是Struts2的框架, 在大概一年以后公司也使用SSM框架代替原有框架了. 现在估计很多公司是直接使用SpringCloud了, 个人感觉SpringCloud虽然好, 但是极个别情景下使用个人感觉有点杀鸡用牛刀, 不同微服务间的通信浪费了很多不必要的资源(采用http协议, 一般会使

2020-08-11 12:11:35 204

原创 设计模式描述小结

装饰者: 包装一个对象, 以提供新的行为状态: 封装了基于状态的行为, 并使用委托在行为之间切换迭代器: 在对象的集合之间游走, 而不暴露几个的实现外观: 简化一群类的接口策略: 分封装可以互换的行为, 并使用委托来解决要使用哪一个代理: 包装对象, 以控制对此对象的访问工厂方法: 由子类决定要创建的具体类是哪一个抽象工厂: 允许客户创建对象的家族, 而无需指定他们的具体类(注意和工厂方法是两个不同的东西)适配器: 封装对象, 并提供不同的接口观察者: 让对象能够在状态改变时被通知模板.

2020-08-09 15:29:17 2125

原创 update未走索引导致全表锁住

事件经过:前段时间, 自动化测试的小姐姐向我们开发人员反应, 由于我方经常debug导致锁表, 她们的用例经常失败.该问题出现的时机基本一致,通过show OPEN TABLES where In_use > 0;以及show processlist, 确定sql.但是奇怪的是这次的事故竟然是把整个表锁了, 而不是以往只是某条数据被锁住(开发和测试未单独分库, 调试时的某些数据偶尔会导致锁表情况).对sql进行分析后发现, 这条update后面的where竟然没有走索引!!!原因:我们使用

2020-07-24 18:54:22 2235 2

原创 spring声明式事务@Transaction的避坑指南(一)

在spring框架下开启事务, 直接在类或者方法上加伤Transaction注解, 简单粗暴. 但是实际上却有很多坑需要注意.第一个:Transaction并不是在捕捉到任何异常时都会执行回滚.@Transaction注解的默认捕捉异常是RunTimeException我们首先需要知道, 异常分为两类: 运行时异常和非运行时异常.运行时异常...

2020-05-28 20:20:13 1066

原创 由于找不到VCRUNTIME140_1.dll,无法继续执行代码

安装mysql8的时候发现需要VCRUNTIME140_1.dll文件.该文件在C:\Windows\System32下面此前安装了2015的vc++支持包, 目录下只有VCRUNTIME140.dll解决方法:推荐去微软官网下载最新的2015-2019vc++支持包:https://support.microsoft.com/zh-cn/help/2977003/the-...

2020-01-31 14:13:33 30274 4

原创 记一个挺有趣的 关于mybatis in入参的bug排查

这个bug其实主要不在于写出来多奇怪主要是排查的时候觉得蛮有趣的.是一段17年遗留的老代码里面的.最开始代码运行并未出现报错之类的. 只是某条20多个入参, 将近300多行的sql查询结果一直是0条记录.但是使用传入的参数手动搜索是有查询结果的.其实再idea控制台查看入参的时候,有个奇怪的小细节, 只是当时没注意, 不然就没有后面的事了.idea显示的入参中间有两个参数显...

2019-12-28 17:14:53 344

原创 批处理git更新和切换分支

最近的项目一个project下多个module, 但是每个module都是一个git项目, 所以就造成了需要分别对每个module单独git pull.批量切换分支并拉取最新:@echo offset dir=set /p dir=please enter dir:set branch=set /p branch=please enter branch:cd %dir%fo...

2019-12-03 11:34:34 1346

原创 ftp连接成功, 但是accept timeout

ftp服务器在外网, 本地应用服务器端在内网,被防火墙拦截了.对tomcat放行, 或者关闭防火墙

2019-10-24 19:24:12 4016 1

原创 IDEA生成的get/set与非驼峰式命名

在写接口的时候发现对方传过来的参数不是驼峰式的, 而是首字母大写的格式.然后我用IDEA自动生成的get/set方法, 使用@RequestBody注解自动将对方传过来的json放入对象于是, 当然是读到一堆null了orz看了下IDEA自动生成的set方法里面传入的参数, 首字母被转化成了小写, 如下:private String Demo;public void setDe...

2019-10-20 17:19:12 1314

原创 fiddler抓取HTTPClient

在代码中调用其它接口, 使用HTTPClient发送请求的时候,fiddler并不能抓取到这个请求.为了调试方便所以在HTTPClient代码中设置代理, 如下:HttpHost proxy = new HttpHost("127.0.0.1",8888);requestConfig = RequestConfig.custom().setProxy(proxy).build(); ...

2019-10-20 17:09:11 774

原创 getBytes与编码

在使用MessageDigest进行md5加密前, 需要把使用String的getBytes方法获得字节数组需要注意的是getBytes()方法在不传入参数的情况下, 使用的是系统默认的编码方式.同一个字符串在不同的编码方式下, 获取到的字节数组是不同的, 这会引起,md5加密后得到的值不同.所以一般最好确认编码方式并作为参数传入:MessageDigest md = Mess...

2019-10-20 17:03:04 437

原创 mysql中汉字和长度的关系

mysql5.0以上mysql中, varchar(n)和char(n)表示n个字符, 不区分汉字和英文, 也就是说char(1)能存入1个英文字符, 也能存入1个汉字, 而不是1/3个或者1/2个汉字;但是实际上存入n个汉字和存入n个英文所占用的字节是有区别的,对于开发者来说, 并不用关注字节数,mysql 屏蔽了具体的存储细节,而直接以实际字符的个数来决定char存储的个数....

2019-10-14 19:45:05 4015

原创 项目中遇到的悲观锁和乐观锁

悲观锁:悲观锁就是假设每次操作都会有其他人使用同一个资源, 所以每次执行过程都是; 加锁-->使用资源-->释放锁, 项目中常使用synchronized对需要的代码部分加锁。使用synchronized主要是因为synchronized使用的是内置锁, 加锁和解锁都由jdk实现, 使用者无需手动控制, 比较方便。使用场景多是多线程开发时, 并行处理数据, 对方法或者代码块...

2019-08-12 15:20:54 688

原创 maven配置阿里云镜像

找到maven根目录下面的conf文件夹下的setting.xml文件, 在文件中加入以下配置内容:<mirrors> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven....

2019-05-26 15:28:56 140

原创 win10系统下更换jdk版本

新项目组使用的都是idea, 所以在自己电脑中也换成了idea,同时原先使用的jdk7也换成jdk8, 正好熟悉一下java8的新特性。电脑本地的环境配置中, 设置过%JAVA_HOME%的变量, 指向jdk7的根目录, path中的路径调用了%JAVA_HOME%变量, 所以现在只要把%JAVA_HOME%的值指向jdk8的根目录就可以了。但是只设置环境变量是不够的, 这时候运行cmd,...

2019-05-19 21:53:06 3688

原创 《重构:改善既有代码的设计》读书笔记(持续更新中)

背景(我也不知道这个算不算读书笔记,书本知识点整理和个人理解内容可跳至下面正文):最近过年加找工作一直没想起来整理学习内容, 时间都很零碎。回想一下, 的确一直以来都是为了完成项目去看知识点。 除了刚开始想转行做IT的时候跟着慕课网的两条前后端路线系统地学习了一下, 但是终究囫囵吞枣。前几天刚好有被问到《重构》这本书的内容。这两天临时抱佛脚看一下。 有了一定量的代码量积累的现在, 带着些许...

2019-02-26 12:47:23 2275 1

原创 mybatis的几种传参方法总结

mapper接口传递参数时遵循以下规则1、如果传递过来是单参数,且没有以@Param注解进行命名,则直接将单参数作为真实的参数调用SqlSession的对应方法。2、如果传递过来的不是单参数或者是包含以@Param注解进行命名的参数,则会将对应的参数转换为一个Map进行传递。具体规则如下:      2.1、 会把对应的参数按照顺序以param1、param2、paramN这样的形式作...

2019-01-09 17:34:37 1129

原创 vue中axios实现二进制流文件下载

后端传过来的是一个二进制流方式的docx文件之前试了下网上常见的思路,  这类方法思路如下:1. 使用js在页面常见a标签2. 创建Blob对象, 在Blob中传入后端返回的response.data   这一步中Blob需要的是一个数组类型的参数, 后端二进制流这边接收到的response.data使用查看发现是String, 所以我把response.data放进一个长度1的数...

2018-12-21 11:58:16 12191 3

原创 Jenkins使用batch+Maven自动部署vue+javaweb项目(三)

1. 新建一个Maven的Jenkins项目(如果没有"构建一个maven项目"的选项, 请安装maven插件, 详见上一篇博客)点击确定后, 进入配置页面, 以下步骤均在该页面完成2. 源码管理设置在配置页面中, 源码管理选择Subversion也就是SVN的方式, 该模式会自动把源码从SVN下载到jenkins的workspace中;如果选择None则需要手动把需要编译...

2018-12-21 11:34:23 534

原创 jenkins安装maven插件(二)

jenkins安装maven插件步骤1. 从jenkins控制台 http://localhost:8080/jenkins 的侧边栏  系统管理  进入系统管理页面2. 在系统管理页面的右侧Configuration中选择 管理插件 3. 进入插件管理页面后, 选择"可选插件", 在过滤输入框中输入"Maven Integration" 查找插件"Maven Integratio...

2018-12-20 17:41:29 1098

原创 jenkins安装(一)

一 环境本次安装是在win7下进行的, 中间件是tomcat7, 该tomcat使用的jdk是1.8版本二 步骤1. 从jenkins官网下载war包https://jenkins.io/, 这里可以下载最新版本, 也可以去Past Releases下载历史版本http://mirrors.jenkins.io/war-stable/, 我这边下载的是2.89.4版本, 下载的是.wa...

2018-12-19 14:44:18 173

原创 elementUI的table绑定数据更新

问题: &lt;el-table&gt;绑定数据不显示情况描述: elementUI中的&lt;el-table&gt;标签通过:data="myDataList"来绑定data中的list变量一般情况下, 在methods中, 使用 this.myDataList=res.data.dataFromServer 这类直接将从后端获取的数据赋值给myDataList,但是假如我们需要对...

2018-12-12 14:44:56 21878

原创 vue项目中package.json中的版本号

使用nodejs webpack vue-cli脚手架搭建的vue项目安装element vuex等均使用cnpm installnpm install moduleName # 安装模块到项目目录下 npm install -g moduleName # -g 的意思是将模块安装到全局,具体安装到磁盘哪个位置,要看 npm config prefix 的位置。 npm inst...

2018-11-28 14:33:03 8322 2

原创 elementUI提交表单时焦点跳转至第一个校验不通过处

this.$refs[formName].validate((valid) =&gt; { if (valid) { } else { setTimeout(()=&gt;{ var isError= document.getElementsByClassName("is-error"); is...

2018-11-28 14:15:37 2765

原创 js实现可下拉选择也可手动填写的input

body部分:&lt;div style="width:70px"&gt; &lt;input type="text" name="loadingPort" autocomplete="off" class="layui-input autocomplete"&gt; &lt;div class="loadingPort ly-hide

2018-11-28 14:14:28 3208

原创 java正则表达式匹配域名前半部分

public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object arg2) throws Exception { StringBuffer url = request.getRequestURL(); //获取访问页面的完整URL...

2018-11-26 10:34:44 2447

原创 elementUI校验注意事项(不定期更新)

1. 数字校验1.1 elementUI官方提供的数字校验:  elementUI的数字校验和其他校验不同, 使用了Vue 自身提供的用于将绑定值转化为 number 类型的修饰符.步骤两步:1) el-form-item中填写prop2)v-model后面添加".number"   (这一步比较特别)3) 在rules定义:{ type: 'number', message:...

2018-11-13 17:38:19 538

原创 js图片加载----图片名带百分号

有时候使用layui或者elementUI实现图片预览功能 或者页面加载图片的时候会发现个别图片无法显示原因可能是图片名中带百分号, 图片加载的时候, 相当于在地址栏中输入了带百分号的地址, 但没有encode, 这时候会无法识别解决方法: 拼接完整图片地址的时候, 单独对图片名encodeURIComponent()this.fileList[i].url=this.HOST+"/"...

2018-11-13 11:44:45 612

原创 elementUI中使用formatter对table中时间格式化

elementUI中的table提供了formatter这个属性来对传入的数据进行用户自定义的格式化table的写法如下: &lt;el-table :data="list" border style="width: 100%" :header-cell-style="{color:'black',textAlign:'center'}"&gt; &lt;el-table-co...

2018-11-12 15:09:06 17301 1

原创 jsp中调用java静态常量

1. 在普通的jsp代码中嵌入java静态常量1.1 在页面开头引入该静态常量所在的类: &lt;%@page import="com.XXX.XXXX"%&gt;1.2 在HTML片段中使用该静态常量:  &lt;option value="&lt;%=Code.TYPE_0%&gt;"&gt;否&lt;/option&gt; 2. 在struts2的s标签中调用java静态常量...

2018-11-06 11:12:04 2705

vue入门.pptx

比较简陋, 文字内容为主, 但是也不会花里胡哨的。 内容主要是自己自学vue和用vue搭建项目时的一些入门级别的心得。 可自行配图。

2020-01-20

ssm的jar包集合(spring+springmvc+mybatis)

ssm的jar包集合(spring+springmvc+mybatis),大部分基础的包都在里面,可直接使用

2018-05-12

vue-devtools4.1.3(已编译)

这是4.1.3已编译过的版本,适用于Chrome浏览器。解压压缩包,打开“chrome://extensions/”,勾选右上角的“开发者模式”,然后“加载已解压的扩展程序”,选择解压后的文件目录即可。成功后悔出现在插件列表中,浏览器右上角有灰色vue标志,在打开适用vue开发的页面后该标志会变绿色,F12后可找到vue。

2018-04-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除