- 博客(40)
- 资源 (4)
- 问答 (6)
- 收藏
- 关注
原创 java学到什么程度才算是精通?
请一定相信,在这个媒体信息这么发达的现在,所有的资源都已经是低费用甚至零费用的了。不要再傻傻的花钱报班、买课程了。熊叔的java交流群已经超过5千人,欢迎您的加入!添加微信:dalaoshi_08加好友的时候备注“技术群”,会拉您进群。java的学习,是有这么三个阶段的。第一阶段-入门会怀疑自己能不能学会,看到那么多的关键字都是英语,一行又一行的跟天书似的。这个阶段叫做小白第二阶段-入门原来java开发无非就是变量和方法,如果能把面向对象理解透了那就是程序员了。如果学的好一点可以了解多线程
2022-06-29 10:21:19
1784
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
197
原创 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
445
原创 菜鸟的成长之路——pageHelper分页插件
1.pageHelper插件在分页上有哪些优势?分页插件给我们封装了很多参数,不用我们再去硬性编码获取各种参数。pageHelper封装参数如下,这个参数封装在com.github.pagehelper.page中: count:是否进行count查询,也就是是否进行总条数查询 pageNum:当前页码 pageSize:每页显示的数量 startRow...
2019-09-03 11:38:21
1124
原创 菜鸟的成长之路——mysql对于并发的影响
1.mysql的索引有哪些?从数据结构角度: B+树索引:底层结构是B+树结构 hash索引:不能使用范围查询,由于底层是哈希结构,所以检索效率要比B+树高,但是此类索引只存在Memory存储引擎中。 FULLTEXT索引:全文索引,条件格式:MATCH (columnName) AGAINST ('string'),分词查找。结果与期望值往往相差较大,不常使用。 ...
2019-09-03 11:33:06
188
原创 菜鸟的成长之路——springboot整合redis
redis是一个key-value的存储形式,他存储在计算机的内存中,所以存储和读取的速度比较快。但是内存毕竟有局限,不如数据库安全,所以我们经常将redis和mysql配合使用,来提高一些常用数据的读取速度。今天我们使用springboot来整合一下redis。使用MySQL存储主页数据springboot整合redis使用redis的集群使用MySQL存储主页数据我们拿首页...
2018-08-20 14:50:30
532
原创 菜鸟的成长之路——springboot部署威客项目
今天我们使用springboot技术来搭建一下威客的项目,springboot出现的目的就是简化spring的搭建和配置,他避免了各种各样的配置文件。springboot使用内置tomcat,而不需要我们安装tomcat,而且打成的jar包可以直接运行在java环境里。我们看一下今天要做哪些步骤吧:创建一个springboot项目将静态页面加入springboot项目中热加载spring...
2018-08-16 09:31:46
507
原创 菜鸟的成长之路——计算机网络安全
我们在项目的开发过程中,很多内容是非常机密的,但是这些机密的模块又要完整,还要具备可用的特性。也有很多时候我们项目中需要一些不可抵赖的内容,比如支付宝的余额和支付密码等,但是也要是可控的,不能因为保密就不让修改。这些内容都是计算机网络安全的内容,这个月我们就来看一下网络安全的内容。1、信息加密技术 回想看日战争时期,日本捕获中国的电台信息非常简单,就是我国的设备落后、信息加密技术落后...
2018-03-26 09:36:14
674
1
原创 菜鸟的成长之路——docker部署web项目
上节课我们已经将静态项目上传到ubuntu的nginx根目录下了,但是如果是动态站项目,那部署无疑是非常麻烦的问题,各种环境的配合与jar包的导入都是容易致命的因素。我们使用docker将动态站项目部署到服务器上就非常简单了。
2018-03-23 11:24:21
5216
1
原创 菜鸟的成长之路——ubuntu部署静态网页
在ubuntu上部署静态页面html,不需要java环境,所以只需要将本地的html复制到ubuntu的nginx根目录下就可以正常访问了。但是从本地拷贝文件到服务器,我们需要用到ssh连接,今天我们从windows和mac两个系统来分析如何部署静态文件。
2018-03-21 16:59:18
5985
原创 uml类图(Class Diagram)中类与类之间的关系及表示方式
UML对于程序员的代码梳理,最重要的就是类图。没有谁可以一下将类图做的的特别好,但是如果最后再创建类图,那意义也不大,那我应该在这两者之间互相前进,迭代盘旋。
2018-03-21 11:40:28
1549
原创 菜鸟的成长之路——ubuntu的nginx
nginx是一个高性能的http和反向代理服务器,它占用内存少,并发能力强,所以中国的百度、京东、新浪、网易、腾讯、淘宝等项目都在使用nginx。除此之外,nginx的配置也让人叹为观止,他可以作为负载均衡服务器,可以作为邮件代理服务器,也可以扩展成ftp服务器等。今天我们来安装一下nginx吧!
2018-03-21 10:05:36
391
原创 菜鸟的成长之路——ftp的上传和下载
FTP是一种文件传输协议,用户internet中文件的双向传输,也就是我们经常提到的两个概念:上传和下载。上传就是将文件从自己本地计算机上拷贝至远程主机,下载就是从远程主机上拷贝文件到自己的本地计算机。今天我们看一下vsftpd服务器的搭建,以及使用springmvc上传和下载。
2018-03-20 18:57:08
607
原创 菜鸟的成长之路——ubuntu的mysql
我们只是演示在ubuntu上安装mysql,然后再局域网上连接这个mysql。这些都是在桥接模式下进行的,不然局域网内是连接不到虚拟机的。我们来看一下如何安装和配置吧!
2018-03-20 10:11:45
474
原创 菜鸟的成长之路——ubuntu的联网
我们现在开始学习linux系统中的ubuntu系统,在这节课开始前,我们需要做这个几个事情。首先,现在合适版本的VMware,然后再下载最新版本的ubuntu镜像文件,然后就在VMware中安装ubuntu系统,然后开始本月课程的学习。
2018-03-14 20:20:51
12670
原创 菜鸟的成长之路——ssm整合
ssm开发架构指的是spring+springmvc+mybatis三个架构合作开发系统或者网站。曾经我说过,spring非常优雅,他可以接纳任何框架,这节课我们来看看spring如何整合这两个框架并成为行业内目前最火的架构组合吧!
2018-03-08 12:13:35
1077
2
原创 菜鸟的成长之路——mybatis的注解
spring的IOC有注解来协助完成,spring的AOP有注解来协助完成,springmvc也有注解来协助完成,自从java支持 注解以来,注解一直是所有开发者比较喜欢的选择。mybatis也有注解来代替冗杂的xml配置来达到简化开发的目的,今天我们一起来学习一下mybatis的注解吧!
2018-03-06 11:05:09
450
原创 菜鸟的成长之路——动态sql
在我们传统JDBC中查询数据,有时候需要一个条件,有时候需要两个条件,也有时候并不需要条件,因此我们不仅要注意sql的拼接错误,还要注意多个条件之间的and和or的连接,这些事情对于我们来说都是非常痛苦的。mybatis给我们提供了动态sql,这个强大的特性帮我们解决了上面恼人的问题。
2018-03-05 18:46:45
537
原创 菜鸟的成长之路——映射文件
mybatis和ORM框架相比最大的一个优点就是可以自己编写sql,并且引入了动态sql的概念。上节课我们研究了一下mybatis的环境,他们通过映射文件mapper.xml来执行sql,那么mapper映射文件里面还有很多内容需要我们研究,这节课我们就来研究一下mapper映射文件的内容和动态sql。
2018-03-05 17:12:55
638
原创 菜鸟的成长之路——体系结构
java是当前比较流行的编程语言,是一个面向对象的编程语言。而目前主流的数据库产品比如Oracle、DB2等,依然是关系型数据库。由于编程语言和数据库的发展不协调,于是催生出了ORM框架,也就是“对象关系数据库”,ORM是一种框架的规范,完成面向对象编程语言到关系数据库的映射。Mybatis并不完全是一种ORM框架,但是他的设计思想和ORM相似,我们接下来研究一下Mybaits框架。
2018-03-04 15:31:02
917
原创 菜鸟的成长之路——springmvc的数据
现在企业基本都在使用html5+js+css作为前端开发,发送过来的数据往往需要我们做各种处理,来满足数据的一致,哪怕使用jsp开发页面也会存在这些问题。或者我们的数据不能以程序的形式展示给用户浏览,不然没有编程基础的用户看的很难甚至看不懂,也有时候同一个页面在不同的国家显示不同的语言等等问题,这些问题我们这节课来研究一下。
2018-03-02 16:45:23
606
原创 菜鸟的成长之路——springmvc的注解
spring从2.5的版本开始引入了注解,我们前面讲过ioc和app的注解,springmvc也提供了相关的注解,让开发更加简洁。spring的版本一直在升级,但是注解却一直保留下来,并一直扩展,让广大开发者的工作变得更加的轻松。
2018-02-27 12:12:31
541
原创 菜鸟的成长之路——spring和springmvc的整合
往往在项目开发中,我们不会单纯的使用springmvc开发,因为我们一方面需要处理器处理用户的http请求,还要去处理各个bean之间的依赖以及各种逻辑关系。于是,spring和springmvc的整合迫在眉睫。1、spring的ion容器和springmvc的配置文件是一回事吗? 很多同学都说,springmvc是基于spring的框架,没有必要整合,关于spring的ioc和app在sprin
2018-02-26 16:44:48
5504
原创 菜鸟的成长之路——springmvc的实现
今天我们开始新的课程,看一下spring对于MVC模式是如何使用的。我先简单介绍一下MVC模式吧,MVC三层分别是Model、View、Controller三个层次,代表数据层、视图层、控制层。视图层先获取用户的输入,通过Controller层修改了Model层次的数据,Model层数据的改变,通过Controller层触发了View层的视图。
2018-02-26 13:00:13
1313
1
原创 菜鸟的成长之路——基于Aspectj的AOP
对于jdk5.0以后,java提供了注解技术,而Aspectj就是基于注解的AOP技术。那有人可能会问,那基于Aspectj和基于Schema两种谁更好一些呢?那我会说,没有谁好谁不好,这两种形式都比较简洁,就好像用中文写了一个伊索寓言和用英文写了一个伊索寓言一样。
2018-02-24 12:27:33
634
1
原创 菜鸟的成长之路——基于Schema的aop
前面对于AOP的配置太令人抓狂,代码量实在是太大,反而失去了spring一直追求的简洁。但是spring给我们敞开了新的大门,他给我们提供了基于Schema配置的方法,现在将增强和切点的配置完全放在了Schema的xml文件中,切点和增强从xml中提取出来,那切面变成了真正的POJO了。 因为Schema配置方式,让然脱离不了Aspectj,所以我们需要先导入Aspect Weaver ...
2018-02-24 11:09:58
552
原创 菜鸟的成长之路——切面篇
我们再来回忆一下切面是什么,切面就是将增强织入到某个切点。上节课我们知道,增强一方面包含了横切逻辑,另一方面包含了连接点(也就是方法的前面、后面、环绕等等),但是增强不能决定给哪个类的哪个方法横切(也就是不能决定切点),这节课我们就能找到这个切点,然后增强和切点共同组成切面。
2018-02-23 15:46:35
698
原创 菜鸟的成长之路——增强篇
对于spring的aop,我们也通过上面几节课进行了了解,也学习了aop的两种动态代理,但是我们并没有进入springAOP的切面编程,这节课我们就讲一下spring中AOP的增强。Spring中使用增强类来进行横切的逻辑,同时增强类还包括横切逻辑在方法的方位信息。1、增强有哪些种类,他们的接口有什么关系? 增强可以分为以下五种:前置增强:实现MethodBeforeAdvic...
2018-02-23 12:46:52
713
原创 菜鸟的成长之路——AOP的两种代理方式
spring中使用了两种动态代理方式JDK动态代理和CGLib动态代理。 代理的英文称呼是Proxy,顾名思义就是一个人代表另个人,或者一个机构代表另个机构去做某个事情。动态代理的动态意思就是,在程序运行时利用反射机制动态创建而成。
2018-02-05 16:34:02
954
原创 菜鸟的成长之路——AOP术语解释
spring有两大核心,IOC和AOP。 总算可以喘口气,前面几节课我们把IOC的知识探讨完成。现在我们可以来聊一聊spring的另外一大核心——AOP。
2018-02-05 15:01:27
850
1
原创 菜鸟的成长之路——spring的注解使用
我们前面用了很多节课来说注入依赖的事情,注入依赖无非就是两个要素——谁是bean、谁注入了这个bean。 对于前者,我们采用bean标签进行配置,对于后者,我们有三种注入方式。今天我们从这两个角度来分析spring框架中另个让人眼前一亮的优势:注解。
2018-02-05 14:03:16
777
原创 菜鸟的成长之路——bean的配置
对于大型网站来说,bean的配置是非常复杂的。bean与bean之间也会有继承关系,他们也要有创建的先后顺序,他们还要互相引用产生联系,哪怕是单个bean,也要分是否单例等,这里面还需要涉及到许多的配置,今天我们来研究一下bean的配置。
2018-02-04 16:56:14
881
原创 菜鸟的成长之路——bean的生命周期
所有的事物,都会有自己的生老病死,包括我们的程序的组件也有自己的生命周期,比如web中的servlet,spring的bean也不例外。bean生命周期由多个特定的生命阶段组成,每个生命阶段都留出了一扇门,来供外界对bean施加控制。这节课我们分别对BeanFactory和ApplicationContext中的bean的生命周期来进行解析。
2018-02-04 15:07:59
985
4
原创 菜鸟的成长之路——三种依赖注入方式
同学们看到题目,就有疑惑了,上节课我们不是讲过属性的注入了吗?这节课的注入方式又是什么意思? 上节课呢,我们对于不同类型的注入深入探讨了,针对的是不同类型。这节课我们主要来聊一聊有哪些方法可以注入。举个例子,今天晚上你们吃五花肉、羊肉还是牛肉,这是我们上节课探讨的问题,这节课我们探讨的是针对某种肉,你是炸着吃、蒸着吃、还是炒着吃。1、题目中的注入方式为什么还要加上“依赖”两个字?
2018-02-04 10:21:40
941
3
原创 菜鸟的成长之路——向bean中注入属性
我们到现在为止,已经可以“控制反转”了,并且深入探讨了一下容器和应用上下文,利用容器或者应用上下文获取到bean了,那么bean是怎么进行配置的呢?这节课我们就来学习一下bean的属性注入。
2018-02-04 08:40:02
805
2
原创 菜鸟的成长之路——应用上下文(ApplicationContext)
如果说BeanFactory是spring的心脏,那么ApplicationContext就是spring的身躯了。ApplicationContext由BeanFactory派生而来,提供了更多面向实际应用的的功能。还记得上节课我们提到XmlBeanFactory过期的api吗?他的代替方法就是ApplicationContext。
2018-02-03 15:39:16
4464
1
原创 菜鸟的成长之路——BeanFactory容器
我们上节课,已经实现了spring的一个hello world,这节课,我们主要来学习一下spring的容器(BeanFactory)。BeanFactory是spring的最核心的一个接口,它的职责包括:实例化、定位、配置应用程序的对象、建立这些对象的依赖。
2018-02-03 14:30:13
1365
6
原创 菜鸟的成长之路——spring的HelloWorld
我们上节课提到,spring会把对象控制权交给容器,容器创建了一个又一个的对象,通过DI呢,又确定了各个对象之间的关系。但是你们会不会好奇,spring是怎么把容器里的对象给到我们的呢?今天我们就来聊一聊spring的应用上下文。
2018-02-03 09:24:26
1223
6
原创 菜鸟的成长之路——控制反转和注入依赖
今天我们开始接触spring框架,学习这个框架前,我们首先要了解一下什么是IOC(控制反转)和DI(注入依赖)这两个概念,对于很多初学者来说,这两个概念总是模糊不清的,也是非常难理解的,我们这节课就来聊聊控制反转和注入依赖的区别,也就是IOC和DI的区别!1、IOC是什么? ioc就是控制反转,不是什么技术,而是spring中的一种思想。在spring中,ioc意味着将你设计好的对象交给
2018-02-03 08:26:05
1122
3
执行sql的时候不报错也不继续执行
2016-08-11
数字签名公钥和私钥编码问题
2016-06-20
flash流媒体两个视频互相影响问题
2016-05-19
操作系统的不确定性,指的是哪些不确定性?
2016-04-29
微信开发里面video的控件怎么解决?
2016-04-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人