自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

菜小白的博客

如果博客有错误,希望各位看官可以指出。

  • 博客(40)
  • 资源 (4)
  • 问答 (6)
  • 收藏
  • 关注

原创 java学到什么程度才算是精通?

请一定相信,在这个媒体信息这么发达的现在,所有的资源都已经是低费用甚至零费用的了。不要再傻傻的花钱报班、买课程了。熊叔的java交流群已经超过5千人,欢迎您的加入!添加微信:dalaoshi_08加好友的时候备注“技术群”,会拉您进群。java的学习,是有这么三个阶段的。第一阶段-入门会怀疑自己能不能学会,看到那么多的关键字都是英语,一行又一行的跟天书似的。这个阶段叫做小白第二阶段-入门原来java开发无非就是变量和方法,如果能把面向对象理解透了那就是程序员了。如果学的好一点可以了解多线程

2022-06-29 10:21:19 1692 2

原创 并发问题杂记——信号量

1、释放20个信号Semaphore semaphore = new Semaphore(20);2、获取信号semaphore.acquire();3、释放信号semaphore.release();4、还有信号没有释放,线程休眠1秒钟 //查看当前可用许可数,等于concurrency结束 while (semaphore.availablePermits() != concurrency){ Thread..

2020-09-16 17:08:29 169

原创 sql优化杂记——回表

String end = DateUtil.getDate(DateUtil.YYYY_MM_DD_HH_MM_SS); String begin = DateUtil.getBeforeDay(new Date(),DateUtil.YYYY_MM_DD_HH_MM_SS); log.info("存管回调报文重试任务开始begin:{},end:{}",begin,end); BatchCallbackRetryRecord f...

2020-09-16 16:54:15 430

原创 菜鸟的成长之路——pageHelper分页插件

1.pageHelper插件在分页上有哪些优势?分页插件给我们封装了很多参数,不用我们再去硬性编码获取各种参数。pageHelper封装参数如下,这个参数封装在com.github.pagehelper.page中: count:是否进行count查询,也就是是否进行总条数查询 pageNum:当前页码 pageSize:每页显示的数量 startRow...

2019-09-03 11:38:21 1037

原创 菜鸟的成长之路——mysql对于并发的影响

1.mysql的索引有哪些?从数据结构角度: B+树索引:底层结构是B+树结构 hash索引:不能使用范围查询,由于底层是哈希结构,所以检索效率要比B+树高,但是此类索引只存在Memory存储引擎中。 FULLTEXT索引:全文索引,条件格式:MATCH (columnName) AGAINST ('string'),分词查找。结果与期望值往往相差较大,不常使用。 ...

2019-09-03 11:33:06 176

原创 菜鸟的成长之路——springboot整合redis

redis是一个key-value的存储形式,他存储在计算机的内存中,所以存储和读取的速度比较快。但是内存毕竟有局限,不如数据库安全,所以我们经常将redis和mysql配合使用,来提高一些常用数据的读取速度。今天我们使用springboot来整合一下redis。使用MySQL存储主页数据springboot整合redis使用redis的集群使用MySQL存储主页数据我们拿首页...

2018-08-20 14:50:30 522

原创 菜鸟的成长之路——springboot部署威客项目

今天我们使用springboot技术来搭建一下威客的项目,springboot出现的目的就是简化spring的搭建和配置,他避免了各种各样的配置文件。springboot使用内置tomcat,而不需要我们安装tomcat,而且打成的jar包可以直接运行在java环境里。我们看一下今天要做哪些步骤吧:创建一个springboot项目将静态页面加入springboot项目中热加载spring...

2018-08-16 09:31:46 483

原创 菜鸟的成长之路——计算机网络安全

  我们在项目的开发过程中,很多内容是非常机密的,但是这些机密的模块又要完整,还要具备可用的特性。也有很多时候我们项目中需要一些不可抵赖的内容,比如支付宝的余额和支付密码等,但是也要是可控的,不能因为保密就不让修改。这些内容都是计算机网络安全的内容,这个月我们就来看一下网络安全的内容。1、信息加密技术  回想看日战争时期,日本捕获中国的电台信息非常简单,就是我国的设备落后、信息加密技术落后...

2018-03-26 09:36:14 667 1

原创 菜鸟的成长之路——docker部署web项目

上节课我们已经将静态项目上传到ubuntu的nginx根目录下了,但是如果是动态站项目,那部署无疑是非常麻烦的问题,各种环境的配合与jar包的导入都是容易致命的因素。我们使用docker将动态站项目部署到服务器上就非常简单了。

2018-03-23 11:24:21 5189 1

原创 菜鸟的成长之路——ubuntu部署静态网页

在ubuntu上部署静态页面html,不需要java环境,所以只需要将本地的html复制到ubuntu的nginx根目录下就可以正常访问了。但是从本地拷贝文件到服务器,我们需要用到ssh连接,今天我们从windows和mac两个系统来分析如何部署静态文件。

2018-03-21 16:59:18 5911

原创 uml类图(Class Diagram)中类与类之间的关系及表示方式

UML对于程序员的代码梳理,最重要的就是类图。没有谁可以一下将类图做的的特别好,但是如果最后再创建类图,那意义也不大,那我应该在这两者之间互相前进,迭代盘旋。

2018-03-21 11:40:28 1530

原创 菜鸟的成长之路——ubuntu的nginx

nginx是一个高性能的http和反向代理服务器,它占用内存少,并发能力强,所以中国的百度、京东、新浪、网易、腾讯、淘宝等项目都在使用nginx。除此之外,nginx的配置也让人叹为观止,他可以作为负载均衡服务器,可以作为邮件代理服务器,也可以扩展成ftp服务器等。今天我们来安装一下nginx吧!

2018-03-21 10:05:36 380

原创 菜鸟的成长之路——ftp的上传和下载

FTP是一种文件传输协议,用户internet中文件的双向传输,也就是我们经常提到的两个概念:上传和下载。上传就是将文件从自己本地计算机上拷贝至远程主机,下载就是从远程主机上拷贝文件到自己的本地计算机。今天我们看一下vsftpd服务器的搭建,以及使用springmvc上传和下载。

2018-03-20 18:57:08 597

原创 菜鸟的成长之路——ubuntu的mysql

我们只是演示在ubuntu上安装mysql,然后再局域网上连接这个mysql。这些都是在桥接模式下进行的,不然局域网内是连接不到虚拟机的。我们来看一下如何安装和配置吧!

2018-03-20 10:11:45 460

原创 菜鸟的成长之路——ubuntu的联网

我们现在开始学习linux系统中的ubuntu系统,在这节课开始前,我们需要做这个几个事情。首先,现在合适版本的VMware,然后再下载最新版本的ubuntu镜像文件,然后就在VMware中安装ubuntu系统,然后开始本月课程的学习。

2018-03-14 20:20:51 12615

原创 菜鸟的成长之路——让ssm更优雅

话不多说,我们讨论一下下面几个话题!

2018-03-12 13:25:49 527 3

原创 菜鸟的成长之路——ssm整合

ssm开发架构指的是spring+springmvc+mybatis三个架构合作开发系统或者网站。曾经我说过,spring非常优雅,他可以接纳任何框架,这节课我们来看看spring如何整合这两个框架并成为行业内目前最火的架构组合吧!

2018-03-08 12:13:35 1054 2

原创 菜鸟的成长之路——mybatis的注解

spring的IOC有注解来协助完成,spring的AOP有注解来协助完成,springmvc也有注解来协助完成,自从java支持 注解以来,注解一直是所有开发者比较喜欢的选择。mybatis也有注解来代替冗杂的xml配置来达到简化开发的目的,今天我们一起来学习一下mybatis的注解吧!

2018-03-06 11:05:09 439

原创 菜鸟的成长之路——动态sql

在我们传统JDBC中查询数据,有时候需要一个条件,有时候需要两个条件,也有时候并不需要条件,因此我们不仅要注意sql的拼接错误,还要注意多个条件之间的and和or的连接,这些事情对于我们来说都是非常痛苦的。mybatis给我们提供了动态sql,这个强大的特性帮我们解决了上面恼人的问题。

2018-03-05 18:46:45 530

原创 菜鸟的成长之路——映射文件

mybatis和ORM框架相比最大的一个优点就是可以自己编写sql,并且引入了动态sql的概念。上节课我们研究了一下mybatis的环境,他们通过映射文件mapper.xml来执行sql,那么mapper映射文件里面还有很多内容需要我们研究,这节课我们就来研究一下mapper映射文件的内容和动态sql。

2018-03-05 17:12:55 626

原创 菜鸟的成长之路——体系结构

java是当前比较流行的编程语言,是一个面向对象的编程语言。而目前主流的数据库产品比如Oracle、DB2等,依然是关系型数据库。由于编程语言和数据库的发展不协调,于是催生出了ORM框架,也就是“对象关系数据库”,ORM是一种框架的规范,完成面向对象编程语言到关系数据库的映射。Mybatis并不完全是一种ORM框架,但是他的设计思想和ORM相似,我们接下来研究一下Mybaits框架。

2018-03-04 15:31:02 909

原创 菜鸟的成长之路——springmvc的数据

现在企业基本都在使用html5+js+css作为前端开发,发送过来的数据往往需要我们做各种处理,来满足数据的一致,哪怕使用jsp开发页面也会存在这些问题。或者我们的数据不能以程序的形式展示给用户浏览,不然没有编程基础的用户看的很难甚至看不懂,也有时候同一个页面在不同的国家显示不同的语言等等问题,这些问题我们这节课来研究一下。

2018-03-02 16:45:23 594

原创 菜鸟的成长之路——springmvc的注解

spring从2.5的版本开始引入了注解,我们前面讲过ioc和app的注解,springmvc也提供了相关的注解,让开发更加简洁。spring的版本一直在升级,但是注解却一直保留下来,并一直扩展,让广大开发者的工作变得更加的轻松。

2018-02-27 12:12:31 533

原创 菜鸟的成长之路——spring和springmvc的整合

往往在项目开发中,我们不会单纯的使用springmvc开发,因为我们一方面需要处理器处理用户的http请求,还要去处理各个bean之间的依赖以及各种逻辑关系。于是,spring和springmvc的整合迫在眉睫。1、spring的ion容器和springmvc的配置文件是一回事吗?  很多同学都说,springmvc是基于spring的框架,没有必要整合,关于spring的ioc和app在sprin

2018-02-26 16:44:48 5465

原创 菜鸟的成长之路——springmvc的实现

今天我们开始新的课程,看一下spring对于MVC模式是如何使用的。我先简单介绍一下MVC模式吧,MVC三层分别是Model、View、Controller三个层次,代表数据层、视图层、控制层。视图层先获取用户的输入,通过Controller层修改了Model层次的数据,Model层数据的改变,通过Controller层触发了View层的视图。

2018-02-26 13:00:13 1298 1

原创 菜鸟的成长之路——基于Aspectj的AOP

对于jdk5.0以后,java提供了注解技术,而Aspectj就是基于注解的AOP技术。那有人可能会问,那基于Aspectj和基于Schema两种谁更好一些呢?那我会说,没有谁好谁不好,这两种形式都比较简洁,就好像用中文写了一个伊索寓言和用英文写了一个伊索寓言一样。

2018-02-24 12:27:33 561 1

原创 菜鸟的成长之路——基于Schema的aop

  前面对于AOP的配置太令人抓狂,代码量实在是太大,反而失去了spring一直追求的简洁。但是spring给我们敞开了新的大门,他给我们提供了基于Schema配置的方法,现在将增强和切点的配置完全放在了Schema的xml文件中,切点和增强从xml中提取出来,那切面变成了真正的POJO了。  因为Schema配置方式,让然脱离不了Aspectj,所以我们需要先导入Aspect Weaver ...

2018-02-24 11:09:58 538

原创 菜鸟的成长之路——切面篇

我们再来回忆一下切面是什么,切面就是将增强织入到某个切点。上节课我们知道,增强一方面包含了横切逻辑,另一方面包含了连接点(也就是方法的前面、后面、环绕等等),但是增强不能决定给哪个类的哪个方法横切(也就是不能决定切点),这节课我们就能找到这个切点,然后增强和切点共同组成切面。

2018-02-23 15:46:35 684

原创 菜鸟的成长之路——增强篇

  对于spring的aop,我们也通过上面几节课进行了了解,也学习了aop的两种动态代理,但是我们并没有进入springAOP的切面编程,这节课我们就讲一下spring中AOP的增强。Spring中使用增强类来进行横切的逻辑,同时增强类还包括横切逻辑在方法的方位信息。1、增强有哪些种类,他们的接口有什么关系?  增强可以分为以下五种:前置增强:实现MethodBeforeAdvic...

2018-02-23 12:46:52 695

原创 菜鸟的成长之路——AOP的两种代理方式

spring中使用了两种动态代理方式JDK动态代理和CGLib动态代理。   代理的英文称呼是Proxy,顾名思义就是一个人代表另个人,或者一个机构代表另个机构去做某个事情。动态代理的动态意思就是,在程序运行时利用反射机制动态创建而成。

2018-02-05 16:34:02 939

原创 菜鸟的成长之路——AOP术语解释

spring有两大核心,IOC和AOP。   总算可以喘口气,前面几节课我们把IOC的知识探讨完成。现在我们可以来聊一聊spring的另外一大核心——AOP。

2018-02-05 15:01:27 838 1

原创 菜鸟的成长之路——spring的注解使用

我们前面用了很多节课来说注入依赖的事情,注入依赖无非就是两个要素——谁是bean、谁注入了这个bean。   对于前者,我们采用bean标签进行配置,对于后者,我们有三种注入方式。今天我们从这两个角度来分析spring框架中另个让人眼前一亮的优势:注解。

2018-02-05 14:03:16 763

原创 菜鸟的成长之路——bean的配置

对于大型网站来说,bean的配置是非常复杂的。bean与bean之间也会有继承关系,他们也要有创建的先后顺序,他们还要互相引用产生联系,哪怕是单个bean,也要分是否单例等,这里面还需要涉及到许多的配置,今天我们来研究一下bean的配置。

2018-02-04 16:56:14 867

原创 菜鸟的成长之路——bean的生命周期

所有的事物,都会有自己的生老病死,包括我们的程序的组件也有自己的生命周期,比如web中的servlet,spring的bean也不例外。bean生命周期由多个特定的生命阶段组成,每个生命阶段都留出了一扇门,来供外界对bean施加控制。这节课我们分别对BeanFactory和ApplicationContext中的bean的生命周期来进行解析。

2018-02-04 15:07:59 954 4

原创 菜鸟的成长之路——三种依赖注入方式

同学们看到题目,就有疑惑了,上节课我们不是讲过属性的注入了吗?这节课的注入方式又是什么意思?   上节课呢,我们对于不同类型的注入深入探讨了,针对的是不同类型。这节课我们主要来聊一聊有哪些方法可以注入。举个例子,今天晚上你们吃五花肉、羊肉还是牛肉,这是我们上节课探讨的问题,这节课我们探讨的是针对某种肉,你是炸着吃、蒸着吃、还是炒着吃。1、题目中的注入方式为什么还要加上“依赖”两个字?

2018-02-04 10:21:40 886 3

原创 菜鸟的成长之路——向bean中注入属性

我们到现在为止,已经可以“控制反转”了,并且深入探讨了一下容器和应用上下文,利用容器或者应用上下文获取到bean了,那么bean是怎么进行配置的呢?这节课我们就来学习一下bean的属性注入。

2018-02-04 08:40:02 789 2

原创 菜鸟的成长之路——应用上下文(ApplicationContext)

如果说BeanFactory是spring的心脏,那么ApplicationContext就是spring的身躯了。ApplicationContext由BeanFactory派生而来,提供了更多面向实际应用的的功能。还记得上节课我们提到XmlBeanFactory过期的api吗?他的代替方法就是ApplicationContext。

2018-02-03 15:39:16 4319 1

原创 菜鸟的成长之路——BeanFactory容器

我们上节课,已经实现了spring的一个hello world,这节课,我们主要来学习一下spring的容器(BeanFactory)。BeanFactory是spring的最核心的一个接口,它的职责包括:实例化、定位、配置应用程序的对象、建立这些对象的依赖。

2018-02-03 14:30:13 1323 6

原创 菜鸟的成长之路——spring的HelloWorld

我们上节课提到,spring会把对象控制权交给容器,容器创建了一个又一个的对象,通过DI呢,又确定了各个对象之间的关系。但是你们会不会好奇,spring是怎么把容器里的对象给到我们的呢?今天我们就来聊一聊spring的应用上下文。

2018-02-03 09:24:26 1193 6

原创 菜鸟的成长之路——控制反转和注入依赖

今天我们开始接触spring框架,学习这个框架前,我们首先要了解一下什么是IOC(控制反转)和DI(注入依赖)这两个概念,对于很多初学者来说,这两个概念总是模糊不清的,也是非常难理解的,我们这节课就来聊聊控制反转和注入依赖的区别,也就是IOC和DI的区别!1、IOC是什么?  ioc就是控制反转,不是什么技术,而是spring中的一种思想。在spring中,ioc意味着将你设计好的对象交给

2018-02-03 08:26:05 1104 3

威客网站前端静态页面

本资源是威客项目的静态页面,配合本人博客使用,如果没有看到博客请斟酌后下载,避免浪费您的积分。

2018-08-14

sax解析xml

使用sax解析xml的源代码

2017-06-07

spring3.0教程

spring框架学习教程,适合有java基础的朋友使用

2017-06-06

sql基础教程

数据库入门教程,适合初学者

2017-06-06

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

TA关注的人

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