- 博客(90)
- 收藏
- 关注
原创 web工程师必备知识(所有文章总目录个人总结持续更新)
一、java那些事String s1 = "abc"; String s2 = "abc";创建了几个对象?以及字符串常量池设计模式(单例模式)线程的6种状态(NEW,RUNNABLE,BLOCKED,WAITING,TINED_WATING,TEMINATE)常见的数据结构(栈、队列、数组、链表和红黑树)java中静态方法为什么不可以调用非静态方法将一个数组中所有的奇数...
2019-01-11 12:52:13 423
原创 spring源码环境搭建问题解决
安装后需要配置国内下载镜像(否则下载超级慢,我下载了一个上午没下载好,修改国内镜像后,几分钟好了)解决build.gradle->搜configurations.all 添加。
2024-03-13 16:30:26 172
原创 java项目启动脚本shell脚本
6. 为了防止java程序被启动多次,这里增加反复检查进程,反复杀死的处理(递归调用stop)。#5. 如果步骤4的结果能够确认程序的pid,则打印[OK],否则打印[Failed]#2. 如果程序已经启动($psid不等于0),则开始执行停止,否则,提示程序未运行。#5. 如果步骤4的结果$?#2. 如果程序已经启动($psid不等于0),则提示正在运行并表示出pid。#2. 如果程序已经启动($psid不等于0),则提示程序已启动。#1. 首先调用checkpid函数,刷新$psid全局变量。
2023-12-26 11:32:53 88
原创 nexus 私服 拉不了 jar 包,报 Not authorized
如果你排查了所有情况,并且确定账号密码都没问题,路径也正确,并且setting.xml都配置正确了。可以看下是不是这个原因。
2023-09-21 16:53:32 208
原创 工厂方法模式【Factory Method Pattern】
实例化对象,用工厂方法代替new操作(重点)工厂模式包括工厂方法模式和抽象工厂模式抽象工厂模式是工厂方法模式的扩展。
2023-08-16 13:51:36 266
原创 代理模式【Proxy Pattern】
什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道被代理人能做哪些事情不能做哪些事情吧,那就是两个人具备同一个接口,代理人虽然不能干活,但是被代理的人能干活呀。
2023-08-14 15:34:51 968
原创 策略模式【Strategy Pattern】
里,俗称就是锦囊妙计嘛,那赵云就是一个干活的人,从锦囊中取出妙计,执行,然后获胜,用 JAVA 程序。嘿,还别说,真是解决了大问题,搞到最后是周瑜陪了夫人又折兵呀,那咱们先看看这个场景是什么样子。刘备要到江东娶老婆了,走之前诸葛亮给赵云(伴郎)三个锦囊妙计,说是按天机拆开解决棘手问题,妙计是小亮同志给的,妙计是放置在锦囊。
2023-08-09 17:52:32 788
原创 Mysql on duplicate key update用法,注意三点就能上手
Mysql on duplicate key update用法,注意三点就能上手
2022-08-23 16:00:54 494 1
原创 根据变量名例用反射获取实体对应的值
/** * 根据变量名字,来获取实体对应字段的值 * @param element * @param o * @return */ public static Map<String, Object> getMapByEntityElement(String[] element, Object o){ try { Class aClass = o.getClass(); ..
2021-10-29 17:48:54 253
原创 idea快速修改git地址
方法一:直接修改文件找到项目所在目录文件->.git->config->把如图对应的地址改成新地址,然后重启idea方法二:用idea界面修改
2021-06-12 09:53:12 1017 1
原创 IDEA好用的插件
采用插件破解,原理,每次重启idea都是30天免费试用1.首先点击免费试用进入到idea2.然后file->settings->plugins添加ip地址https://plugins.zhile.io安装插件IDE Eval查看下面,安装成功勾选自动,然后在重启idea,设置完毕...
2021-05-26 20:45:48 156
原创 nginx
1 整体结构2常用配置#user nobody;#工作进程数(一般配置一个就足够了)worker_processes 1;events { #最大链接数 worker_connections 1024;}http { #资源类型 include mime.types; default_type application/octet-stream; #用于开启文件高效传输模式 sendfile on; .
2021-02-03 14:46:42 80
原创 微信支付对接记录,和遇到的坑,总结!并附带微信支付工具类,只需要替换几个参数就可以直接使用!
第一个坑,签名获取,微信是两次签名加密,要按照微信官方文档一步步查看参数是否正确.第二个坑,md5加密,我用到网上的md5加密方法,当小程序调起微信支付的时候一直报签名失败,最后发现是签名的md5加密的问题.第三个坑,两次签名加密如果用到时间戳和随机字符串,一定要保持一致,用同一个,否则也会报出签名异常.第四个坑,微信支付不能重复提交不一样的订单,比如:用户待付款,商家修改价格,然后提交就会出现订单重复问题.解决方案:就是业务订单号和支付订单号分开处理,每次支付都生成支付单号就也可以解决..
2020-12-26 17:06:29 490
原创 如果有人问你什么是多线程,你这样说,面试管肯定对你另眼相看!
什么是线程安全?我相信不少做了几年开发的人,面试都会遇到这个问题.不理解的人一般会说,线程安全就是指,线程的安全啊,这回答了等于没说!线程安全其实指的是内存的安全,为什么这么说呢?这还是和操作系统有关系!操作系统一般都是多任务的,就是多个进程同时进行(准确来说是cpu切换的速度太快了),所以每个进程之间访问的数据要保证安全,所以每个进程都只能访问自己的内存,不能访问别的进程,这个操作系统已经处理过了.但是每个进程除了自己私有的一个内存空间外,还有一个公共的区域,"堆"内存;进程中的所有线程都
2020-07-29 14:42:37 310
原创 记录一下郑州互联网公司的一次奇葩面试经历
关注公众号:码农脱贫(回复0728可以获取到大厂面试题)2020.6.30面试总结郑州**公司一面:一个人事面的,不懂技术,爱问一些乱七八糟的东西,就是为了判断你是否工作经验造假(培训班的估计不好进).感觉这个公司很奇葩,小公司,公司主要就是承接小活,没有自己的项目,适合作为跳板公司.很锻炼自己的能力.人事:你好,先自我介绍一下吧我:*******人事:你第一份工作是在南方,你为啥要去那么远啊?我:一个表哥在那里做主管,毕竟让毕业,内部推荐好进去,没费劲就工作了,拿的实习薪.
2020-07-28 13:56:11 534
原创 RedisTemplate的五种基本用法(nosql数据库)
/** * StringRedisTemplate继承了RedisTemplate但两者的数据并不互通 * 一共五种数据结构 * 1.redisTemplate.opsForValue() 字符串 * 2.redisTemplate.opsForHash() hash * 3.redisTemplate.opsForList() list * 4.redisTemplate.opsForSet() 无序set * 5.redisTemplate.opsForZSet() ..
2020-07-20 10:14:56 393
原创 idea如何设置忽略文件不上传
如果没有找到.gitignore的文件设置就点击右边的绿色加号添加一个,并把下面的复制上去即可;*.classpath;*.hprof;*.idea;*.iml;*.myumldata;*.project;*.pyc;*.pyo;*.rbc;*.settings;*.yarb;*~;.DS_Store;.git;.hg;.myeclipse;.mymetadata;.svn;...
2020-04-11 21:30:31 1623
原创 数据库多表查询总结(常用的也就这几种情况)
1内连接用左边表的记录去匹配右边表的记录,如果符合条件的则显示。如:从表.外键=主表.主键(1)隐式内连接隐式内连接:看不到 JOIN 关键字,条件使用 WHERE 指定SELECT 字段名 FROM 左表, 右表 WHERE 条件(2)显式内连接显示内连接:使用 INNER JOIN ... ON 语句, 可以省略 INNERSELECT 字段名 FROM 左表 [I...
2020-04-06 10:04:32 624
原创 IDEA开发工具设置的VM options参数,项目上线后怎么在tomcat进行设置
我的项目由于使用了Spire.Doc for Java插件,进行word转pdf业务需求。其中有一个方法获取文档对象,会出现内存溢出的错误日志。方法如下:com.spire.doc.Document doc = new Document();解决方案就是在idea的VM options进行参数设置,让项目启动的时候获得固定的内存。配置如下:-Xms1000m -Xmx...
2020-03-14 16:33:35 1185
原创 idea工作中必须用到的几个快捷键,没有之一
(1)Ctrl+shift+R 全局字符串搜索(2)Ctrl+Alt+L 代码格式化(3)Ctrl+Alt+O 代码清除无用的jar包(4)Ctrl+Alt+T 快捷键
2020-03-12 08:49:04 246
原创 用idea新建项目一个maven项目简单教程
1第一步2第二步选择maven项目,选择webapp的结构,创建出来的maven会带有webapp的目录。3第三步。设置项目名称和路径4 配置maven路径信息56创建maven项目一定要联网,当打印台出现[INFO] Maven execution finished就说明成功了...
2020-02-29 18:25:57 1028
原创 关于用java将word转化为pdf(网上流行的方案,比较)
(下面的使用方法百度一搜一堆,我就不再重复造轮子了)一,Spire.Doc for Java插件网上比较推崇的就是这个,最为简单,引入jar包后,就三行代码,可以完美实现。优点:效率很高,格式基本原样转化。缺点:免费版只能转化最多3页的word文档Spire.Doc for Java插件使用的时候我的运行报了异常,关于jvm的,后来发现是内存问题,在idea启动添加参数完美解决...
2019-12-28 17:55:57 624
原创 郑州10kjava上机题(查找数组arr中第k大的奇数,如果不存在则返回0. (arr[i] > 0 (i>=0)))解题思路:冒泡排序
题目:查找数组arr中第k大的奇数,如果不存在则返回0. (arr[i] > 0 (i>=0))计算出时间复杂度(注意代码注释,不要使⽤库函数或脚本中已经实现好的排序算法和⼯具, 需要⾃⼰实现数据结构和所需要的算法)格式:public int findKth(int[] arr, int k){//代码}我的一种解题思路:public static int f...
2019-12-27 14:05:13 1632
原创 【比较实用的jaiva工具类】获取随机指定位数的流水号
第一个方法直接调用就可以生成num位的流水号(该流水号是以当前时间:年月日时分秒开始的),保证每一个都不会重复。注意,传入的参数num数字要大于13要不然生成的随机数没有什么意义。第二个方法直接调用就可以生成完全随机的流水号,根据当前时间戳生成的,可以保证唯一。/** * 可以获取num位数字不重复的id * * @param num 流水号位数 * @return 得...
2019-12-25 13:55:20 313
原创 mybatis中带下划线变量的映射问题
项目中一般都有这个配置<!-- 使用驼峰命名法转换字段。 --><setting name="mapUnderscoreToCamelCase" value="true"/>mybatis配置文件设置了这项后,查询出来的字段如果带下划线,那么就会去掉下划线,然后采用java驼峰规则。因为实体类中的变量加了下划线,所以查询出来的结果就没有对应的字段进行映射。...
2019-11-13 16:59:07 3923
原创 我发现我不会使用return和continue注意细节才能让bug无处藏身
scoket循环监听某一个端口,时刻准备接受客户端的请求,所有要使用where循环。但里面会遇到接受报文的异常,怎么处理?项目已经上线2个多月了,突然出现了一个异常,整个监听就结束了?很奇怪。最后发现问题就在return上。test1:return如果遇到异常,where循环就直接结束了,监听也就结束了。这个错误之前没发现,因为测试的时候发的测试报文仅仅是数据错误,并没有考虑其他因素...
2019-11-12 10:03:35 159
原创 scoket出现报文丢失怎么处理
这个是阿里的一道面试题,我看到后很感兴趣,因为最近我写了几个银行接口都是用的scoket技术进行的数据接收和返回。这个面试题我在网上也没找到具体的答案,所有我就根据我项目的实际情况和我的理解进行分析。为了防止scoket接收数据丢失,我们项目采取的做法是第一:循环接收数据 where(true){接收报文的代码}第二:接收的报文和银行约定,前6位报文体是所发送报文的总长度。先接收6字...
2019-10-27 17:13:14 1151
原创 scoket监听程序出现java.net.BindException: Address already in use: JVM_Bind异常
2019-10-18 16:46:08,281 INFO 12329短息接口关闭状态(未启用)! | AccessToken.updateAccessToken(110) - [ContainerBackgroundProcessor[StandardEngine[Catalina]]]2019-10-18 16:46:08,296 ERROR **xx***(**)***查询接口报错了!!!...
2019-10-21 09:18:11 197
原创 一篇文章就够了!jquery实现全选全不选
<c:forEach items="${zcList}" var="grxxVo"> <tr class="success" id="yc"> <td align="center"><input type="checkbox" value="${grxxVo.grzh }" name="grzh" class="xuanze"/></t...
2019-09-09 15:41:59 99
原创 Word OpenXML常用标签openxml标签
这个是openxml相关知识。<w:p> <!--表示一个段落--><w:val > <!--表示一个值--><w:r> <!--表示一个样式串,指明它包括的文本的显示样式,表示一个特定的文本格式--><w:t> <!--表示真正的文本内容--><w:rPr> <!--是&...
2019-08-31 15:29:15 1594
原创 js处理金额格式和java处理金额格式(亲测可用)
java处理金额格式public static String btos(BigDecimal amount) { try { String format = "#,###.00"; if (null == amount) { //amount = new BigDecimal(0.00); ...
2019-08-15 11:22:53 831
原创 js从入门到精通之基础篇(ECMAScript的基本语法)
一 、JavaScript基础: * 概念: 一门客户端脚本语言 * 运行在客户端浏览器中的。每一个浏览器都有JavaScript的解析引擎 * 脚本语言:不需要编译,直接就可以被浏览器解析执行了 * 功能: * 可以来增强用户和html页面的交互过程,可以来控制html元素,让页面有一些动态的效果,增强用户的体验。...
2019-08-10 18:10:35 302
原创 如何用js代码执行本地bat文件和执行cmd命令
1用js代码执行cmd命令,创建ActiveXObject对象,在cmd.exe /c 后面直接写你要执行的cmd命令try { var objShell = new ActiveXObject("WScript.Shell"); iReturnCode = objShell.Run("cmd.exe /c adb forward tcp:1...
2019-08-08 16:35:37 14524 3
原创 前端js中金额比较大小的坑~Number()、parseInt() 和 parseFloat() 的区别
js比较金额不能直接比较,可以用parseInt()和Number(),都可以,但是建议比较金额就用Number(),比较整数可以用parseInt()。下面是他们三者的区别。一:Number()如果是Boolean值,true和false值将分别被转换为1和0。 如果是数字值,只是简单的传入和返回。 如果是null值,返回0。 如果是undefined,返回NaN。 如果是字符...
2019-07-30 10:32:15 9736
原创 jsp页面中input输入框属性是disabled时,对应的值传递不到后台
$('#qzhdjtd').attr("disabled", true);上面id是qzhdjtd的input,因为设置了disabled属性,结果对应的数值没办法随着form表单的提交传递到后台,解决办法:$('#qzhdjje').attr("readonly","readonly");...
2019-07-29 18:26:51 971
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人