Code 【心态爆炸】Springboot打包后运行错误的可能原因 Springboot 部署 7次访问 10-30 22:59 ###起因 最近重新拾起springboot写几个api接口,于是从旧的项目里拷贝了一份文件,稍加修改作为后端接口用。 本来在开发环境中运行没有问题,但是一旦打包成jar包运行,无论是在cmd窗口还是linux都会报错。而且非常长,难以找到问题所在。  ###解决 从报错中可以窥见springboot无法找到Bean,以及相关service无法装载。即使如此,也是几经周折,最后才无意间发现springboot中的application.yml文件里关于mybatis的包路径中有大写,而我本身的包是小写的。  将type-aliases-packpage:改为小写包名即可成功运行了!  Read More→
Code 【破解】用Js注入跳转到青年大学习完成界面&&获取完成界面截图 html小技巧 分享 青年大学习 Js注入 小技巧 9次访问 05-02 23:09 ### 前言 这里我提供了两个方法,请根据自身环境需求和方法侧重点选择: - **方法一**:相较方法二,多一个步骤,稍微**复杂**一些;但是**效果非常好**,和正常完成学习效果一样。可以**直接截图**  - **方法二**:**简单**,但是仅仅是获得完成的图片,效果上网页会有**黑边**,**只适合保存为图片**。  Read More→
Code 服务器数据库被黑的反思 吐槽 心情 分享 10次访问 02-24 02:04 这篇博文前的数据都是来源于21年11月服务器迁移时保存的备份数据,也就是说在这期间的数据包括博文、访问量、点赞、留言等都已经不可挽回的丢失了。 导致这种情况的直接原因就是服务器搭载的数据库被黑了。 我稍微查了一下后台的日志,发现黑客应该是暴力破解了我的数据库连接。所以说提前打好预防针还是很容易防范这种程度的攻击的,对此我做出如下反思。 - 首先,数据库的密码实在是太简单了,直白的说就是"123456",估计暴力破解第一次尝试就破解掉了,建议使用复杂或强密码保证数据库安全。 - 其二,没有做数据备份。宝塔等面板软件都提供了备份功能。如果有备份,我也不至于如此的窘迫o(╯□╰)o。 - 其三,吃一堑长一智;今后一定要注意网络安全问题!  > 放一个猫猫平复一下我的心态~ Read More→
Code 【Bug】JavaBean规范中构造方法的注意事项 bug 编程 分享 78次访问 09-23 22:42 ### 什么是JavaBean JavaBean是Java开发语言中一个可以重复使用的软件组件,它本质上就是一个Java类。为了规范JavaBean的开发,Sun公司发布了JavaBean的规范,他要求一个标准的JavaBean组件需要遵循一定的编码规范: 1. 他必须具有一个公共的、无参的构造方法,这个方法可以是编译器自动产生的默认构造方法。 2. 它提供公共的setter方法和getter方法,让外部程序设置和获取JavaBean的属性。 ### 事情经过 今天我在项目中需要往数据库插入一个JavaBean,为了简化代码,我没有使用该JavaBean的setter方法赋值,而是添加了一个多参的构造方法,方便我赋值(注意原来的JavaBean中是没有构造方法的)。因此,编译器就报错了。  ### 问题所在 问题就出在我添加了一个**多参的构造方法**。 在Java中如果没有构造方法,虚拟机会默认一个无参构造方法。 如果有构造方法,无论是有参的还是无参的,就不会有默认的无参构造方法 在这里我添加了有参构造方法,覆盖了原来的无参构造方法。一是违反了JavaBean的规范,二是因为没有了无参构造方法,框架无法反射生成该对象。 Read More→
Code File.mkdir()的坑 编程 分享 53次访问 09-22 11:11 mkdir()方法是File类的一部分。 mkdir()函数用于创建由抽象路径名表示的新目录。如果创建目录,则该函数返回true,否则返回false。 如果我的目录里暂时没有/upload/temp/这个路径时, ```java String storePath = request.getSession().getServletContext().getRealPath("/") + "upload/temp/" File parentDirBefor=new File(storePath); if (!parentDirBefor.exists()){ parentDirBefor.mkdir(); } ``` 这时我是无法成功创建的,原因在于路径“upload/temp”,java在mkdir时会创建temp,但是无法找到upload,因为upload还未创建。所以正确的顺序应该是 ```java String storePath = request.getSession().getServletContext().getRealPath("/") + "upload"; File parentDirBefor=new File(storePath); if (!parentDirBefor.exists()){ parentDirBefor.mkdir(); } parentDirBefor=new File(storePath+"/temp"); if (!parentDirBefor.exists()){ parentDirBefor.mkdir(); } ``` Read More→