自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

双非二本自学到互联网公司的成长经历,有故事,有干货。

双非二本程序猿的成长之路,深知野生程序员,转行程序员的不容易,在这里分享知识,希望我的文字可以帮助,成就一些人吧。

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

原创 初学SSM框架感觉一团糟,希望这篇文章能帮到你!(Spring)

阅读建议耐心,可能你收获不会很多,但是会让你对spring不是那么恐惧。如题,很多小伙伴在初学三大框架时都会各种各样的问题,本文先将问题抛出再谈如何解决。旨在为小伙伴们学习框架做个铺垫。工作后回首,发现一路走来真的太不容易了,所以回来认真修正一下这个文章,希望能够帮助正在学习框架的朋友们,既然已经走到这一步,我希望大家不要放弃,**羡慕每一个有梦的人,加油!**我觉得导致这种问题的原因有以下几点:基础不牢,导致学习过程中一个点不懂,造成疑问的无限递归,从而厌学觉得自己不行了,不适合学Java了!.

2020-12-28 21:05:13 1183 3

原创 (sql语句错误解决方法)处理百万订单遇到的问题:Every derived table must have its own alias

  这个问题涉及到MySQL中的派生表,涉及到派生表就必须给这个派生表一个别名。如果没有别名就会出现如标题所示的错误。如果读者理解select查询模型的话,对这个问题应该就会好理解一点。  下面用一个实际案例来说明:  原始需求是补订单,那么补完订单你怎么验证补进去的单是没问题的呢?其中一个就是查看是否有脏数据。我的做法就是先把补进去的单的订单号都查出来,然后通过order by 分组,通过having与count函数来找出是否有重复数据(重复数据就是脏数据)。很多人第一次写,思路都是正确的,就像下面这

2020-12-15 08:31:03 484

原创 解决Navicat 导出Excel数字变为科学计数法,并且补零问题

问题描述  这个问题不止是Navicat导出查询数据有问题,问题出现的原因是Excel中的单元格,如果是纯数字且数字大于12位,会自动转化为科学计数法;如果数字大于15位,不仅用于科学技术法表示,还会只保留高15位,其他位都变0。所以涉及Excel都需要注意这个问题,比如你在txt文件输入一个大于15位的纯数字,然后粘到Excel表格中,这时你会发现数字变了,需要注意的是,这种情况是不可逆的,因为只保留15位数字,其他都变成0了,你不知道变成0的是什么数字。解决方案  在字符串结尾加上制表符"\t"

2020-12-14 19:11:29 2278

原创 学不好Java Web?因为你不懂这些!

首先,需要说点题外话。本人刚开始学习Java时,是看刘意老师2015版的视频。由于体会过初学者学习编程时的无助,所以文章会尽我最大的努力让基础稍微差的读者看懂。有什么问题,欢迎骚扰。本文主要内容:http协议,请求协议,响应协议,状态码,以及OSI相关知识。1 何为服务器?何为Web资源?  刚接触这些知识时,很多初学者耳中听的最多的就是浏览器请求,服务器响应这一类的话语。但是只知道这些是不够的,在我看来如果能够理解我们请求的是什么,服务器是怎么响应的,甚至能知道一些常见的状态码以及能从这些.

2020-12-14 16:21:28 531

原创 JDK5新特性系列:可变参数

  在进入正题之前我们先来看一个简单的案例,它的需求是这样的:我们有一个Shoes类,在该类中有鞋子的名字name,鞋子的价钱price,以及要购买的鞋子的数量num。@SuppressWarnings("all")public class Shoes { private String name; private Integer price; private Integer num; public Integer getPrice() { return price; } pub

2020-12-14 15:45:38 139 1

原创 字节跳动一面,面试官问我集合和数组有什么区别?我回答了3点,面试官给我竖起了大拇指...

23年字节跳动真实一面,面试官问我集合和数组有什么区别?我用了一个比喻,面试官给我竖起了大拇指!

2020-12-14 15:21:31 2669 4

原创 JavaSE阶段练手小项目:斗地主发牌!我的编程思维就是从这里开始的!

需求:组装54张扑克牌将54张牌顺序打乱三个玩家参与游戏,三人交替摸牌,每人17张牌,后三张留作底牌。查看三人各自手中的牌、底牌需求是不是看着很简单,就几行字。建议先对着需求自己想想该如何去实现。分析:1.java是面向对象编程,当然离不开对象了。如果了没有对象怎么办?new啊。没有类怎么new? 好了问题来了:我们需要从具体的需求中抽象出一个个类。因为扑克牌不但有数字,而且有花色,那么一个变量是否同时表示花色和数字,显然不能吧,所以要有个扑克类。斗地主有三个玩家,是不是应该

2020-12-14 15:09:27 458

原创 小镇做题家四年大学生活总结

  人生没有不散的宴席,我们的青春也终将散场,面对新的人生挑战,你准备好了吗?答应我,走出这个校园的时候,一定要笑着出去!                                               ----导语  初夏的风伴着离别,走到毕业季节。感慨时间过得快的同时,我就要毕业了,回想这四年的生活我也懂事了很多。在疫情期间或许我喜欢上了码字,所以写下这篇文章给多年后的自己一个交代。  2016年高考后,成绩不是很理想,填报了六个志愿。也许真的有命中注定,河南城建学院是我第五个志愿,我

2020-12-14 14:59:14 182 1

原创 同事问我MySQL子查询为什么失败,我告诉他子查询结果当成派生表千万记得加别名...

子查询没有生效,告诉你SQL语句错误,来看看我怎么学的。

2020-12-14 14:45:02 3033

原创 MySQL多表查询及原理分析

多表查询what是多表查询先建好两张表供等下学习使用:  多表查询的作用:查询多个表的不同列,组成我们想要的数据。多表查询的分类:笛卡尔积现象  如图,如果不设置条件的话,dept的每条数据和emp的每条数据组合,这样就形成了笛卡尔积现象,这样的查询结果不是我们想要的。  如何清除笛卡尔积现象的影响 我们发现不是所有的数据组合都是有用的,只有员工表.dept_id = 部门表.id 的数据才是有用的。所以需要 通过条件过滤掉没用的数据。内连接  用左边表的记录去匹配右边表的记

2020-12-14 12:06:23 1758

原创 JDBC连接池(下)

第三个版本  第一个改变的地方就是在util中新定义了三个需要关闭的变量,这里框中设成私有为了安全,静态为了类名能直接调用,但是别加final,用了final成自定义常量了,下面就用不了刚开始置为空,在封装的close方法中只要不是null说明用过了就可以关闭。  第二个改变的是我们发现增删改的代码是差不多的可以封装成一个方法,差距就在于增删改根据条件的不同,问号的数量不同罢了。所以我们引入了可变参数可变参数也叫可变数组,所以我们遍历数组查看是否有参数,有参数就进行替换。替换时需要注意的是遍历的是个数组

2020-12-14 11:31:29 99

原创 JDBC连接池(上)

1.1概念JDBC连接池其实就是一个容器(集合),存放数据库连接的容器。当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。1.2数据库连接池的好处节约资源(不是关闭连接而是归还)用户访问高效(直接获取连接对象,不用创建)1.3实现:标准接口:DataSource javax.sql包下的。方法:获取连接:getConnection()归还连接:Connection.close()。如果连接

2020-12-14 11:25:41 183

原创 学会select查询模型,从此写sql思路清奇!

  在实际开发中,增删改其实用的不是很多,主要是查。根据需求操作数据库取到自己想要的结果。sql语句与java代码是不一样的,在使用sql命令时,是没有快捷输入的方式的,所以我觉得出现问题更多在于使用中文输入,而不在于条件繁琐。所以在有输入引号时建议用单引号,忘了双引号,虽然这两个都行,但是双引号需要用到shift键,一不注意你就切到中文输入了。  数据库查询的大概思路:其实查询语句l流程是固定的,称为select模型,变的是条件,只要多实践几次就能熟练掌握了。下面上干货了!查询固定套路:sele

2020-12-13 22:19:38 222

原创 MySQL基础语法,适合初学者看

1.数据库概述1.1数据的存储方式第一种存储方式是创建对象(实际上new出来的对象不就是用来存数据的嘛),创建对象就是在堆内存中为对象请求了一个空间,相当于是将对象存入堆内存。第二种方式存文件中,这个在IO流部分我们就是这么处理的,但是缺点确很致命,每次增删改都需要获得文件中所有的信息,改完后在全部放入文件。第三种方式数据库看下面,你懂得。1.2what是数据库按照数据结构来组织、存储和管理数据的仓库。本质上是一个文件系统,还是以文件的方式存在服务器的电脑上的。所有的关系型数据库都可.

2020-12-13 22:10:00 241

原创 网络编程基础入门及TCP,UDP

1.网络编程入门1.1 网络编程概述计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。网络编程是在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据交换 。1.2 网络编程三要素IP地址 要想让网络中的计算机能够互相通信,必须为每台计算机指定一个标识号,通过这个标识号来指定要接收数 据的计算机和识别发送的计算机,而IP地址就是这个标识号。也就是

2020-12-13 21:56:10 163

原创 fastjson解析json原理初体验

  我们知道JavaEE后台处理数据是根据一定的文本规则来处理的,通常有xml格式和Json格式。而具体使用哪种格式是根据前后端协调决定的。通过工作的情况来看,使用Json会更多一点。下面是相关的知识点:1 Json是什么?  Json(JavaScript Object Notation)是一种轻量级的数据交换格式。Json有以下特点:Json 比 XML 数据传输的有效性要高出很多。Json完全独立于编程语言。本质就是具有**特定格式(key-value)**的字符串。(面试官问的时候一定

2020-12-13 21:42:27 465

原创 dom4j解析xml教程

dom4j是一个Java的XML API,是微软公司提供的用于解析xml的工具包,用来读写XML文件的。它是一个开放源代码的软件,可以在SourceForge上找到它,想看源码的朋友可以去看看。  我们在解析.xml格式的数据时,需要引入dom4j.jar,并且添加到构建路径。它的解析过程是将整个xml文档读入内存,读成树状结构!我们通过获取根节点,以及根节点的子节点,的子节点…这种方式去获取数据。232)]...

2020-12-13 21:22:55 476 1

原创 你是不是对Java异常一无所知

  异常这部分很多人会蒙圈,原因或许在于没去了解异常是什么,它跟我们写程序过程中出现的bug是否是一个概念。不是话它是一个啥玩意?究其因果就是不知道他是什么。那么异常的定义到底是什么?在这篇文章中我认为异常这个概念对初学者来说是个比较模棱两可的点。处理异常的两种方式有什么不同?1 异常  异常的概述:异常就是程序出现了不正常的情况 。异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。Java编译器要求方法必须声明抛出可能发生的非运行时异常,但

2020-12-13 21:16:03 101

原创 初学log4j该看的文章(工作后的同鞋慎入!)

文章是初学时写的,是往lib文件夹中添加jar包的写法,所以选看。但是这是青春,所以不删,望理解!   Log4j是Apache的一个开源项目。日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录。它由三个部分组成:日志信息的优先级(由日志记录器设置优先级): 控制日志的输出级别,日志信息的优先级从高到低有ERROR、WARN、 INFO、DEBUG,分别用来指定这条日志信息的重要程度。日志信息的输出目的地,理解为输出端(Appender.

2020-12-13 20:59:44 142

原创 初学者练手案例(一) 多线程练习:龟兔赛跑

需求用两个线程分别模拟乌龟和兔子奔跑。兔子和乌龟的速度不同。两个线程共同跑完总长1000米。同一时间只能有一个在跑,另一个处于休息状态。(兔子和乌龟严格轮流交替跑)当总长度跑完以后,两个线程结束。当两个线程都结束后,打印"到达终点"。分别输出乌龟和兔子奔跑的距离。分析 1.首先需要确定使用什么方式创建线程,这里我们选用实现Runnable接口方式进行创建线程,因为这种方式的好处很多。具体的可以参考这篇文章,可以让你对创建线程的三种方式有一定认识。也有助于了解这次代码的写法。(htt

2020-12-12 07:44:21 883

原创 HTML与CSS结合的三种方式:优先级比较

所谓实践出真知,只有自己动手去做了,才能得到正确的结论。首先我们看看三种结合方式:通过link标签引入外部css文件通过style标签通过style属性  很长一段时间我受这个一段话影响:在html文件中,代码的执行顺序是从外到内,由上到下执行的。所以一直认为的优先级是这样的:3>2>1。这是当初看视频时理解不到位。发现这个细节还是自己偶然间的测试。不是什么很重要的东西,所以先把结论摆出来。由于我也是个初学者,所以站在初学者的角度,我认为能用视频解决的就不用图片,能用图片解释的.

2020-12-12 07:21:35 817

原创 notepad++批量在行头,行尾添加文本内容

notepad ++在行头,行尾添加文本内容

2020-12-11 15:10:35 4947

原创 探讨为什么实现Serializable接口就可以序列化

  在探讨这个问题之前先上个概念。什么是序列化和反序列化呢?序列化就是指把Java对象转换为字节流写入硬盘的过程。public static void writeObject(Object obj, String dstFilePath) throws IOException { ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(dstFilePath)); out.writeObject(obj);

2020-12-10 08:48:13 748

原创 解决MySQL报错:the service mysql57 failed the most the most recent status...

勤奋的人,替自己开路;懒惰的人,等别人开路。学会自己解决问题,你会得到很多!  由于文章题目字数限制,所以错误信息不全,这边放上完整的错误信息:the service mysql57 failed the most the most recent status change request with the messagetime out has expired and the opertion has not been completedif problem persists .

2020-12-10 08:34:27 1157 1

原创 非常一个有意思的设计模式--装饰模式

  本文的主体是装饰模式,那么什么是装饰模式呢?在谈这个概念之前先给广大女朋友(理论上来说,所有未婚女性都有可能是我女朋友)送波礼物:  收礼物应该是女同胞的最爱了,作为一个女孩子,肯定希望自己的男朋友可以给足惊喜。我知道很多男人是没有办法创造这种浪漫的氛围的,好吧,小林代劳了,送女孩子们一个礼物,大大的爱心!  通过图我们可以很清晰的看到,红色盒子装着蓝色盒子,蓝色盒子又装着绿色盒子。绿色的盒子里装着我们的小心心。那么我们的小心心是不是就被装饰起来了呢?用绿色盒子装饰小心心,用蓝色盒子装饰绿色盒子,

2020-12-04 08:15:13 222

空空如也

空空如也

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

TA关注的人

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