自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Alanoddsoff的专栏

任重而道远,不忘初心,注重Yes And理念!

  • 博客(43)
  • 收藏
  • 关注

原创 Error launching IEDA-启动IDEA报错解决(创建JVM失败提示)

IDEA启动报错

2022-08-17 09:41:57 2779 2

原创 字节输入流InputSteam转换成多组件文档类MultipartFile

InputSteam转为MultipartFile

2022-03-04 17:45:09 3275

原创 Idea开发过程中的热部署

以下是对Idea使用过程中的热部署的一些小结:如下图所示:Idea右上角有一个锤子图标的按钮,下文简称为“锤钮”作用是编译和构建整个项目,当你用debug模式启动了项目之后,如果修改了Java文件,点击一下锤钮,则Idea会马上编译你修改的Java文件为最新的字节码文件更新到本地的target目录,不用重启项目,重新访问页面即可得到更改后的效果。如果更改了html,css,js等前端页面文件,需要清理浏览器缓存,再访问页面即可看到更改后的效果。但如果更改了Mybatis相关的.xml文件,则需

2020-10-24 08:34:04 2278

原创 java.sql.SQLException: sql injection violation, comment not allow报错分析及解决

近期项目开发中,遇到报错java.sql.SQLException: sql injection violation, comment not allow查阅了下资料得知:在数据源配置时,加上了 Druid 的 wall 过滤器。而它默认的拦截策略是,不允许 SQL 中带有备注,如下图:然后查看一下mybatis中xml文件,如下图:去掉相关查询列注释后,重启项目即可解决问题...

2020-10-24 08:23:48 16509 2

原创 java.sql.SQLDataException: ORA-01830: 日期格式图片在转换整个输入字符串之前结束 报错问题解决

最近参与的项目,后台技术体系采用Spring Boot + Mybatis的组合,XXXMapper.xml中做批量插入时,偶然会遇到一些报错,如下:报错日志:(select?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,to_number(?),?,?,?,?,to_date(?,'yyyy-MM-ddHH24:mi:ss'),to_date(?,'yyyy-MM-ddHH24:mi:ss'),to_...

2020-08-28 23:58:27 2471

原创 java.sql.SQLException: 无效的列类型: 1111 报错问题解决

在项目中利用Mybatis做持久化框架,XXXMapper.xml中insert语句做插入时,偶然会遇到一些报错或者说是问题,如下:报错日志:nestedexceptionisorg.apache.ibatis.type.TypeException:Couldnotsetparametersformapping:ParameterMapping{property='__frch_item_0.perSource',mode=IN,javaType=classjava.lan...

2020-08-28 22:43:32 7745

原创 Free MyBatis plugin下载安装及作用

idea中有很多可以利用的IDE集成插件,其中就包括持久层框架Mybatis相关的一些插件,这里具体介绍一下Free Mybatis plugin的安装及利用步骤:1.在idea中点击File->Settings,然后搜索mybatis,Plugins中继续搜mybatis,下载FreeMyBatisplugin,如下图,之后重启IDE即可2.下载成功并重启后在ServiceImpl中调用XXXMapper的方法,点击Ctrl+Alt+左键方法名可直接进入XXXMapper.xml...

2020-08-28 22:27:23 8402 5

原创 微服务(二)之使用Spring Boot来构建微服务

以下简单介绍一下如何使用Spring Boot来快速构建微服务Spring Boot处理用户请求的流程:接收请求:客户端发送一个Http GET请求到相关微服务。 路由映射:Spring Boot解析Http请求,并根据http请求、URL以及URL定义的潜在映射路由,路由映射到具体微服务的方法。 参数解构:Spring Boot将路由中定义的所有参数映射到执行该工作的Java方法中。 JSON到Java对象的映射:将Http请求中传递的JSON映射到Java类。 业务逻辑执行:映射完请求传

2020-08-17 23:15:20 197

原创 微服务(一)之初识微服务

微服务简介微服务是一个小的、松耦合的分布式服务。微服务允许将一个大型的应用分解为具有严格职责定义的便于管理的组件,使这些组件完全彼此独立。 2. 为什么需要微服务?传统应用程序或系统的所有UI(用户接口)、业务、数据库访问逻辑都被打包到一起,放到一整个应用程序中,并往往部署在一个应用服务器上。而这个应用程序中可能涉及到若干个不同的业务模块,每个业务模块都有团队来进行维护,而各个团队对自己负责的业务模块都有不同的要求和交付需求。随着应用规模和复杂需求的新增,每一个模块的变更最终会导致整个...

2020-08-14 21:52:39 119

原创 服务端口和服务路径的互查(Linux)

之前在工作中的各类服务器中排查问题时,经常会用到的Linux命令,其中很重要的就是找到服务的路径或端口,具体总结如下:如何通过服务部署的端口号找到服务部署路径:1.比如某服务的端口号为9585,则输入netstat-apn|grep9585,找到9585端口的服务信息,如下图:2. 找被监听的线程号为24064。3. 然后输入 psef|grep24064 找到服务部署路径(如下图):如何通过服务部署路径查找到服务端口:以测试服务器上的super...

2020-06-27 09:50:27 804

原创 如何在IDEA中显示刚刚在Git远程服务器创建的分支

在用IDEA开发的过程中,如果别的同事在Git上创建了新的分支,而你又要进行同步的切换使用,步骤如下:1. pull的过程中查看界面,点击Remote:最右边的刷新按钮,即可看到Git远程服务器最新的分支列表,如下图:但是这样只是显示了最新的分支有哪些,真正要切换的时候,在右下角还是无法查看到新分支2. 点击项目的根目录,然后VCS->Update Project即可更新Gi...

2019-05-24 21:12:04 2953 2

原创 java.lang.NoClassDefFoundError: net/lingala/zip4j/io/ZipInputStream问题解决

最近在开发阶段,pull了Git分支最新代码到本地,结果启动后台Dubbo服务报错,如下:然后在文件中搜了相关类,导入和解析都正常,然后去看pom文件中的配置信息也正常,如下:然后在本地的maven仓库查看jar包是否下载下来以及版本号是否一致,也没问题,如下:然后Build Project试图重新编译整个项目,依然报错在maven管理项目视图将项目cl...

2019-04-30 17:14:35 3018 1

原创 IDEA编译操作

最近在开发过程中遇到一些启动服务报错的问题,其中一部分原因归结为文件引用及编译报错,故对于IDEA作为IDE的开发同学们,在启工程或服务前最好先对项目或修改的类进行整体或局部的编译后,保证文件编译通过无误后再启动服务,这样可以提高一些开发效率和提升自检措施。下面是对IDEA中几种类型的编译操作进行梳理:Recompile:对选定的目标(Java 类文件),进行强制性编译,不管目标是否是被修...

2019-04-30 16:53:48 5224

原创 初识Maven

以上是《maven实战》这本书给出的构建的定义:编译、运行单元测试、生成文档、打包和部署。Maven让构建自动化,只需要一条简单的命令,即可完成上述过程。基本命令:mvn clean installMaven是跨平台的,windows,Linux,Mac上均可用命令达到相同的结果。以上是框架或者说组件一直努力改进的指导思想,包括Maven,而Maven则侧重在优化构建体系。...

2019-03-31 21:48:21 113

原创 ArrayList扩容源码解析(JDK1.8)

环境:JDK1.8先看看几个ArrayList内部成员变量:ArrayList的容量大小默认的初始容量为10:DEFAULT_CAPACITY = 10。对于所有的空实例可共享的空阵列实例EMPTY_ELEMENTDATA。对于所有的空实例可共享的空阵列实例DEFAULTCAPACITY_EMPTY_ELEMENTDATA,不同...

2019-03-31 15:15:10 364

转载 Scrum之探究(一)

原文链接作者:Mark Levison机械的Scrum对比真正的Scrum,差别在哪里?最近,我和一个朋友聊到了他们公司实施Scrum的情况。他们有些迷茫!在实施Scrum之前,他们经常为了访问一台测试机而不得不等上一个小时(甚至更多时间)。实施了Scrum几年之后,这个问题依然存在。同一家公司,却把测试服务器放在另一个国家,于是经常碰到网络问题,导致处于运行状态的测试中途失败。这是他们...

2019-03-31 14:01:26 122

转载 程序员的提高之道(实操方法论)

最近,我大量阅读了Steve Yegge的文章。其中有一篇叫“Practicing Programming”(练习编程),写成于2005年,读后令我惊讶不已:与你所相信的恰恰相反,单纯地每天埋头于工作并不能算是真正意义上的锻炼——参加会议并不能锻炼你的人际交往能力;回复邮件并不能提高你的打字水平。你必须定期留出时间,集中锻炼,这样才能把事情做得更好。我认识很多杰出的程序员——这是在亚马逊工...

2019-03-13 09:38:13 654

原创 IDEA常用快捷键梳理

从Eclipse换到IDEA已经有快2年时间了,通过项目中的运用,梳理了一下平时最常用的IDEA中的快捷键,如下:Ctrl+N:全文搜索某个文件(Eclipse中是Ctrl+Shift+R)psvm+enter:默认main方法的快捷键(Eclipse中是main+enter)sout+enter:System.out.println()的快捷键(Eclipse中是syso+enter...

2019-03-09 21:01:11 140

原创 window系统下如何给PHP添加Redis扩展

之前搭建本地PHP开发环境时,出现了缺失redis扩展组件的问题,以下是我总结的解决方案:1. 访问地址:http://windows.php.net/downloads/pecl/snaps/redis/,找到对应的redis扩展版本,下载下来并解压,如下图:2. 将解压后文件群中的php_redis.dll文件放到php安装目录下的\ext目录。3. 编辑php安装目录下的ph...

2019-03-09 20:57:15 119

转载 学习一下大神对于阅读与思考的看法

阅读与思考豆瓣上有人问起平常是怎么看书的,遂总结了几点。想起许久没写博客(因为好书太多,时间不够),遂贴上来也算一篇:P阅读的方法读的时候有轻有重,有的地方快,有的地方慢,具体哪些地方快哪些慢我一时也整理不出来什么法则(可以参考《如何阅读一本书》)。举一个例子:以前我读书是流水帐式的,现在我一定会先把目录很仔细的看一看,目录往往包含了最高层的知识结构,然后我会挑选看上去...

2019-02-28 20:44:29 198

转载 大神的学习习惯

一直以来伴随我的一些学习习惯(part3)By 刘未鹏(pongba)C++的罗浮宫(http://blog.csdn.net/pongba)TopLanguage(https://groups.google.com/group/pongba)1. 第一部分2. 第二部分这篇主要写一些学习(尤其是阅读)的基本方法。1. 趁着对一件事情有热情的时候,一股脑儿把...

2019-02-28 20:41:46 224

原创 从gitlab下载项目到IDEA及切换分支

操作前提:1. 下载git到本地。2. 注册并可以正常登录gitlab。3. 正常创建自己的git密钥。接下来就可以开始导工程代码的步骤了:1. 新开辟一个文件夹来存储git上的项目代码。2. 在该文件夹下,右键点击”Git Bash here“:3. git clone gitlab的.git后缀地址,然后回车。4. 输入用户名和密码,用户名和密码为你登...

2019-02-28 20:27:44 5486

原创 如何创建git密钥

最近公司给新配了一台电脑,涉及到重新搭建项目环境和配置以及从SVN改成Git来管理代码,过程中涉及到Git密钥的创建,具体操作步骤如下:1. 下载Git到本地。2. 找到你的Git Bash命令后打开,如下图。3. 输入以下命令创建你的全局账户名和全局邮箱:git config--globaluser.name “testUser”git config --global...

2019-02-27 22:29:06 5851

原创 Eclipse下载反编译插件报错Unable to read repository at https://ecd-plugin.github.io/update/content.xml问题解决

为了方便查看java源代码,而需要在Eclipse中集成反编译插件,步骤如下:1. Help->Eclipse Marketplace...。 2. 在搜索框中输入Decompiler,搜索到Enhanced Class Decompiler 3.1.1,点击Install。 install之后报如下错误:Unable to read repository a...

2019-02-24 00:12:51 17869 7

原创 Apache配置php项目后启动apache服务报错问题解决

根据E:\Apache2.4.12\bin\httpd.exe -k install的命令去启动apache服务的时候报如下错误:建立服务失败的原因是没有以管理员的身份启动服务,解决方案如下1. 找到cmd.exe文件,一般来讲会在C:\Windows\System32\cmd.exe(本人的电脑就是如此)。2. 然后以管理员身份运行(A)cmd.exe即可。3. ...

2019-02-20 01:04:44 1518

原创 Apache服务的创建和删除

添加apache系统服务的方式如下:找到apache安装目录的bin文件夹,在该文件夹下shift+鼠标右键。 然后选择在此处打开命令窗口(W),输入命令:httpd.exe -k install -n apache2.2回车即创建服务成功。 运行services.msc打开系统服务,如果创建成功即可看到。删除apache系统服务的方式如下:     同样找到apache安装目录的b...

2019-02-20 01:00:33 836

原创 Composer安装失败解决

之前在PHP项目环境搭建时,安装Composer依赖管理报错,具体报错信息如下: win7 64系统,wamp X64软件,安装Composer出现问题。使用Composer-Setu.exe安装,报错如下 Connection Error [ERR_CONNECTION]: Unable to connect to getcomposer.org Request to ...

2019-02-20 00:47:49 5229 2

原创 快速排序探究

算法特点:      内部非常精练和高度优化的内部循环。具体实现如下:时间和空间复杂度:      最好空间复杂度O(log(n)),最坏空间复杂度O(n),平均空间复杂度O(log n);最好时间复杂度O(n log n),最坏时间复杂度O(n^2),平均时间复杂度O(n log n)。算法稳定度:      快速排序是不稳定的。未完待续.........

2019-02-19 23:10:25 134

原创 冒泡排序探究

冒泡排序算法原理:      1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。      2. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。      3. 针对所有的元素重复以上的步骤,除了最后一个。      4. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。具体实现如下:...

2019-02-19 23:02:32 142

原创 二分排序(折半插入排序)探究

算法思想:二分法插入排序是在插入第i个元素时,对前面的0~i-1元素进行折半,先跟他们中间的那个元素比。如果小,则对前半再进行折半,否则对后半进行折半,直到left>right。然后再把第i个元素前1位与目标位置之间的所有元素后移,最后把第i个元素放在目标位置上。具体实现如下(Java):额外说明:二分排序的时间复杂度是O(n^2),空间复杂度O(1),属于稳定排序。...

2019-02-19 22:54:23 477 1

原创 如何在eclipse中打开选中文件所在的文件夹

操作步骤如下:在eclipse中设置相关选项:1.点击菜单栏上的Run--External Tools--External Tools Configurations2. 然后其中Name随意取名,Location为C盘中的explorer.exe路径,当时我本机的路径为C:\Windows\explorer.exe,然后在Arguments中配置${container_loc}...

2019-02-19 22:27:14 5177

原创 工作中常用的linux命令梳理

由于近一年来,项目中需求新增以及迭代的量慢慢趋于平稳,平时工作中更多的是解决缺陷和BUG,这其中涉及到很多linux服务器上的调试工作,故就梳理了一下平时用的比较多的linux命令,以供以后查阅,具体内容如下:tar -czvf webapps.tar.gz webapps将名为webapps的文件夹压缩成tar包,取名为webapps.tar.gztar -xzvf file.tar....

2019-02-19 15:58:48 84

原创 敏捷开发模式探究

之前所在的研发团队经历了半年左右的项目敏捷开发模式,以下总结一下大致的迭代流程。团队配置:      1个scrum master(sm)      1个po(产品)      5个研发      2个测试具体流程:      迭代开始前,po带着客户需求先和研发和测试开一个需求宣贯和确认(用户故事和与之关联的若干task),期间会进行紧密的答疑和头脑风暴以及技术评估。...

2019-02-19 00:00:32 191

原创 mysql表创建注意事项小结

最新项目上新需求改造较多,故涉及到比较多的业务表创建,故总结一下项目上线过程中出现问题之后创建表时应该注意的事项:      1. 去掉字段上的 CHARACTER SET utf8 COLLATE utf8_general_ci 设置      2. 去掉表上的 AUTO_INCREMENT = 97 设置      3. 去掉表上的 COLLATE = utf8_general_c...

2019-02-18 22:52:43 199

原创 Win7+IE8页面兼容性问题解决之DOCTYPE声明

问题场景:      在WIN7+IE8下,某区域项目的功能页面出现导航栏和页面排版样式丢失的兼容性问题。解决思路:      1. 上网查相关的兼容性问题触发场景和相关解决方案,基本遇到的是不沾边或不靠谱的三四手技术帖,不足以解决实际问题。      2. “横向”对比其他功能模块的页面,发现有若干没有兼容性问题的页面,通过winMerge对比页面代码差异后,发现,出现兼容性问题...

2019-02-18 22:43:04 1206

原创 Spring项目集成和配置superdiamond方式

如果Java项目系统中使用到了superdiamond统一配置管理平台来对不同版本的项目包做配置信息管理,以下是Spring集成superdiamond的配置方式:在相关的xml配置中添加以下内容即可(这样最好单独创建一个xml,然后被总xml配置文件引入):<!-- PropertySourcesPlaceholderConfigurer可以在XML配置文件中加入外部属性文件 --...

2019-02-18 22:30:45 819

原创 jsp报错javax.servlet.jsp.JspException cannot resoved to a type解决

之前在项目开发过程中出现页面报错的问题,特记录一下排查流程:问题:      本地Java应用JSP页面报错:javax.servlet.jsp.JspException cannot resoved to a type解决方案:      上网查得是因为页面做了pageContext.request.contextPath的引用。而根据网上的解决方案给request加上['req...

2019-02-18 22:25:14 696

翻译 分布式缓存系统memcached简介

概念:Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。事件处理:libevent是...

2019-02-18 22:17:36 212

原创 context:annotation-config和context:component-scan注解的区别小结

<context:annotation-config>作用:当有太多需要注册的Bean需要在xml文件中显式声明时,可以统一用此标签来一次性隐式注册所有的Bean,而不用针对每个Bean都写几行声明语句。以下是官方说明:<context:component-scan>作用:扫描所指定路径下的所有被注释为各功能组件的类,这些类将在容器内注册为Spring Be...

2019-02-18 22:10:27 315

原创 Postman联调实践(一)-绕过登录验证

背景说明:随着互联网平台架构的逐年升级换代,前后端分离模式、SSM选型以及分布式架构的越来越流行,Restful风格定义的接口模式成为Java后端开发最主要的工作之一。平时工作中除了单元测试外,更多的会用到测试联调工具或中间件,这其中Postman尤其方便和实用,Postman是一个很强大的 API调试、Http请求的工具,既可以作为Google的插件工具在浏览器实用,也可以下载Client端...

2018-10-17 19:09:52 5505

空空如也

空空如也

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

TA关注的人

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