自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 RocketMQ基本知识

一、概述1、阿里设计的分布式、队列模型的消息中间件特点:(1)支持严格的消息顺序;(2)支持topic与Queue两种模式;(3)亿级消息堆积能力;(4)友好的分布式特性;(5)同时支持Pul和Push方式消费;(6)历经多次双十一考验;(7)纯java编写,基于通信框架Netty;2、高可靠、高并发、低延迟二、消息消费1、重复消费:幂等处理,解决重复消费2、顺序消费:...

2020-01-09 11:55:34 407

原创 同一项目中zk地址不同的问题

1、背景:同一个项目中,自己偶dubbo服务的注册中心,zk地址为x同时使用了第三方提供的dubbo接口,第三方zk地址为y2、问题:在配置文件import两个dubbo的配置:发现先引入的zk地址生效,后引入的无效,导致第三方服务调用失败。3、解决方案:在每一个dubbo:reference 和 dubbo:consumer 中都单独配置registry4、zk的作用:dubbo...

2019-09-11 11:44:04 1014

原创 Redis哨兵模式

主从切换技术:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,需要人工干预。一、哨兵模式概述1、哨兵介绍:Redis提供了哨兵命令;哨兵是一个独立的进程,独立运行;原理:通过哨兵发送命令,等待服务器响应,从而监控多个Redis实例;2、哨兵作用:通过发送命令,让Redis返回监测其运行状态,包括主服务器和从服务器;当哨兵监测到master宕机,会自动将salve切换成ma...

2019-08-12 15:13:30 323

原创 Redis主从同步机制

一、主从同步基础概念多台数据服务器,只有一台主服务器,主服务器只负责写入数据,不负责让外部程序读取数据;有多台数据从服务器,从服务器不写入数据,只负责同步主服务器的数据,并让外部程序读取数据;主服务器在写入数据后,即刻将写入命令发送给从服务器,保证主从数据同步;应用程序可以随机读取任何一台从服务器的数据,分摊压力;从服务器不能工作时,对应用没有影响;主服务器不能工作时,选举一台从服务器为...

2019-08-12 11:08:34 217

原创 Redis事务初识

一、Redis的基础事务和回滚机制1、跟大部分NoSQL不同,Redis存在事务,某些场合使用Redis代替数据库,保证了数据的一致性,又大幅度提高了读写响应速度;2、Redis事务命令:nulti 开启事务watch key1[key2] 监听某些键(被监听的键在植物执行前被修改,事务会被回滚)unwatch key1[key2] 取消监听某些键exec 执行事务(如...

2019-08-12 10:24:33 173

原创 Redis基本介绍

一、什么是Redis?1、基于内存的NoSQL数据库,性能远超数据库,能达到每秒十几万次的读写操作;2、支持集群、分布式、主从同步,支持一定的事务;3、Redis性能优越的原因:(1)基于ANSIC语言编写,接近于汇编的机器语言,运行快速;(2)基于内存的读写,速度快于基于磁盘的读写;(3)只有6种数据结构,规则较少。二、Redis能做什么?1、缓存(1)现实应用中,读操作比写操...

2019-08-12 10:21:01 184

原创 The valid characters are defined in RFC 7230 and RFC 3986问题

最近在ssm实践项目中遇到了The valid characters are defined in RFC 7230 and RFC 3986这个问题,折腾了两天实践终于搞定了,记录一下心得。1、首先贴出报错日志:09-Apr-2019 14:55:11.427 信息 [http-nio-8089-exec-8] org.apache.coyote.http11.Http11Processor...

2019-04-09 15:31:51 122930 15

原创 Java的Volatile和Synchronized

在多线程和并发编程中,免不了要使用到Volatile和Synchronized关键字,但是之前对这2个关键字的理解总是很模糊,在看完了《Java多线程编程核心技术》这本书后对多线程有了比较清晰地认识。最近在看《Java并发编程实战》这本书,书中对Java的Volatile和Synchronized有很详细的介绍和剖析,让我进一步有了新的认识,在博客做个总结,记录自己的学习心得。一、java的加锁...

2019-01-29 11:52:43 324

转载 常用Linux命令

常用的linux命令:1.查找文件find / -name filename.txt 根据名称查找/目录下的filename.txt文件。find . -name “.xml" 递归查找所有的xml文件find . -name ".xml” |xargs grep “hello world” 递归查找所有文件内容中包含hello world的xml文件grep -H ‘spring...

2019-01-23 14:03:22 125

原创 DCL双重检测实现线程安全的单例模式

一、前言单例模式在设计模式中使用的较多,也是我学习设计模式最先接触的一个设计模式,虽然容易理解,但是能将其运用于实际应用中却很难。最近也在学习《Java多线程编程核心技术》这本书,如何将多线程与单例模式结合起来是个值得探讨的问题。二、我对单例模式的理解单例模式,字面理解就是一个程序中对于一个类,只能有一个类的实例。比如在一个应用程序中用来检测当前登录的用户个数(LoginUser类),产生一...

2019-01-13 17:56:14 401

原创 com.alibaba.rocketmq.client.exception.MQClientException: No route info of this topic, topic_orderCre

相信大家在学习使用RocketMQ的时候遇到了跟我一样的坑,网上找到的很多教程都是基于linux环境下的,而在Windows环境下的RocketMQ的java代码实现demo,让我折腾了很久:首先贴出报错日志:com.alibaba.rocketmq.client.exception.MQClientException: No route info of this topic, topic_o...

2019-01-11 14:47:10 4501

转载 Session和Cookie

转载自: https://blog.csdn.net/IT_zhang81/article/details/817769561.为什么要有cookie/session?在客户端浏览器向服务器发送请求,服务器做出响应之后,二者便会断开连接(一次会话结束)。那么下次用户再来请求服务器,服务器没有任何办法去识别此用户是谁。比如web系统常用的用户登录功能,如果没有cookie机制支持,那么只能通过查...

2018-12-31 18:44:49 397

原创 There is no getter for property named 'user' in 'class**问题

首先,贴出报错日志:rg.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'user' in 'class com.sprucetec.gws.scu....

2018-12-30 18:01:22 87143 22

原创 Dubbo+Zookeeper使用实例

一直以来,对于Dubbo的了解限于原理和大概的功能层面,之前在实习过程中也遇到公司在使用Dubbo,但是自己并没有实现一个自己的完整实例,所以对Dubbo的理解存在很深的偏差。直到今天,在实习过程中发现只有真的理解了dubbo的原理以及使用方法,才能使用起来得心应手。下面我将结合原理展示一个dubbo+zookeeper的实例。一、Dubbo原理Dubbo是阿里巴巴的分布式开源框架,主要思想...

2018-12-12 15:24:35 487

原创 Java管道通信

在学习并发编程的时候,对于任务间的通信有了一些新的认识,由于之前把那个没有接触过管道通信,在《Thinking in Java》这本书中得到了很好的补充学习。接下来我将结合一个IO实例来演示任务间使用管道进行输入输出的通信,相信你会跟我一样对管道有一个新的认识。一、管道的认识在java的类库中有2个管道类:PipedWriter(允许任务向管道写),和PipedReader(允许不同任务从同一...

2018-11-21 17:57:20 3544

原创 Java的transient关键字

序列化在java中是一个很重要的机制,一般来说,当我们创建一个对象之后,只要不终止程序,这个对象会一直存在。但是如果,我们需要在程序终止又重新启动之后,想要继续获取刚才所说对象对象的信息,就不得不依赖序列化机制。(参考Thinking in Java. pageId:572)Java的对象序列化将那些实现了Serializable接口的对象转换成一个字节序列,并能够在以后将这个字节序列完全...

2018-11-20 15:06:54 235

原创 初识Java中的Generator

说到在java中创建类的对象,一般都会想到用new关键字来实现。但是在某些特定情况下使用new来创建对象会显得更加麻烦,尤其在给容器初始化赋值的时候。最近在看《Thinking in Java》这本书时,对容器类有了更加深入的理解,而在使用对象填充容器时遇到了Generator这个知识点, 通过使用Generator,可以很方便地为任何类提供类的对象,而不是通过new的方式。下面通过一个实例演...

2018-11-19 14:42:43 8136 2

原创 计算50的阶乘

阶乘的计算在学习过程中很常见,但是对于编程来说,由于涉及到基本数据类型的长度有限,当要计算50的阶乘时,不管是int,还是long,都不能有效来存储这个庞大的结果。为了解决这个问题,可以引入数组,用数组存储大数据,通过数组的每一位模拟数字的个十百千位来实现大数据运算。一、基本算法思想如下:1、假设要计算512*34(512代表了大数据),可以用一个数组int[] ints存储512:数组从后...

2018-11-13 00:35:37 18776

原创 构造器的调用顺序

最近在看《Java编程思想》这本书时,通过书中许多简单又透彻的例子对java的抽象、继承、封装和多态几大特性有了新的更深刻的认识。下面结合书中实例对构造器的调用顺序做一总结:1、规律:(1)调用基类构造。不断递归反复,从继承层次的父类到子类一次调用。(2)按照申明顺序调用成员的初始化方法。(3)调用导出类(子类)构造器的主体。2、实例演示:package packing;/** ...

2018-11-12 16:24:19 950

原创 自定义实现数据库的分页查询

我们都知道,数据库的分页查询在实际项目中广泛应用,二且能够实现分页查询的插件有很多(像Mybatis自带的PageHelper),最近在项目中自定义了一个分页功能,在不适用插件的情况下也很方便。MySql数据库实现分页的核心是:limit函数:LIMIT子句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两个参数, 第一个参数指定返回的第一行在所有数据中的位置,从...

2018-11-10 16:26:22 981

原创 SpringBoot启动热部署

springboot中启动热部署,在修改数据库,修改类方法时不需要重新启动项目,达到提高了项目的效率,亲测步骤如下:(IDEA环境)1、在pom.xml中添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtoo...

2018-11-10 00:39:23 113

原创 手写一个Tomcat

(参考了公众号:java架构沉思录中的文章:教你写一个迷你版的toncat原文:https://www.jianshu.com/p/dcelee01fb90)作为一个java学习的起步者,对tomcat的认识还是有很多的欠缺,在无意中发现了这篇文章,便在自己的环境下尝试搭建,收获良多:分以下几个步骤:(1)提供Socket服务(2)进行请求的转发(3)把请求和响应封装成request/...

2018-11-09 18:14:36 10945 7

原创 Windows下安装Nginx(亲测)

最近在公司实习的项目中用到了nginx,余友之前我并没有接触过nginx,在了解原理和安装使用的过程中遇到了一些问题。今天花时间在自己的笔记本上专门下载安装配置了nginx,具体步骤如下:先在官网上下载windows版本的nginx:(我下载了nginx/Windows-1.15.5版本)解压到自己的目录后,打开如下:打开cmd,进入到nginx所在目录:(我用了Windows ...

2018-11-04 21:32:54 238

原创 Windows下安装ScureCRT步骤(亲测)

今天进到公司实习,第一次接触到ScureCRT这个软件,在了解了之后开始安装,废了很大功夫,总结具体步骤如下:首先下载注册器keygen.exe和ScureCRT的安装文件scrt814-x64.exe:点击运行scrt814-x64.exe,傻瓜安装法一路next:(截图略)安装完成之后,先不要打开ScureCrt,将keygen.exe拷贝到安装目录(默认在c盘:C:\Program ...

2018-11-01 17:28:53 2353 1

原创 Java面试总结

从月份开始准备系统学习java相关的知识,到6月份找实习,再到9月份参加秋招,将近半年的时间里,真正体会了学习的意义之所在。面试的过程中遇到了很大的挫败,也感到了很深的自卑,但是也让我看清了自己的欠缺,所以在这些时间里不断在尝试、不断在进步、不断在寻找着充实。 到今天也拿到了三家互联网公司的offer,将面试过程中的一些问题做个总结:一、java相关1、面向对象是什么?面向对象的几个特征?2...

2018-10-31 20:22:52 151

原创 Failed to configure a DataSource: 'url' attribute is not specified and no embedded datas问题

新建springboot项目,启动时出现Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could问题:Error starting ApplicationContext. To display the conditions report re-run...

2018-08-22 11:24:43 2774

原创 java 指定文件和文件夹的相关操作问题

继上一篇博客所讲,为了实现教师上传课件到本课程专门的文件夹,以及学生查询某已选课程的课件时只能查看该课程的课件,原本规划可否在数据库中新建一张表,专门存放课件名称以及对应的课程id,每个都可以教师上传所有课件到指定的文件夹(昨天已经实现),但是某个教师在查询自己课程所对应的课件时,应该先根据courseId去数据库查询课件名称(注意:一个courseId可能对应多个课件名称!),然后该教师根据查询...

2018-08-17 16:12:07 211

原创 基于SpringMVC的文件上传下载及显示问题

首先,不得不感慨spring框架的强大,学习了很久还是发现很多东西都只是理解了皮毛,但是往往你所能想到的功能,都可以用编码来实现,只不过效率高低取决于采取什么方法。 今天在完善我的《教务信息管理系统》项目时,构想如下: 教师登录自己的教师系统,可以查看到自己所教授的课程,同时可以进行给学生打分、上传课件等操作; 学生登录自己的学生系统,在已选课程列表可以...

2018-08-16 15:25:09 1960 1

原创 mysql的时区错误问题: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one

最近很多次遇到 The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone这个问题, 报错为:org.springframework.web.util.NestedServletException: Request processing failed; ne...

2018-08-15 21:17:31 75099 46

原创 《教务信息管理系统》项目总结

从2018.7.4入职公司实习到现在已经一个多月的时间,这段时间过得很快,每天都很充实,在师父的带领下学习到了很多以前未曾接触过的JAVA框架、编程思想以及编码技巧,更重要的是我在这段时间的学习和尝试过程中找到了自己的定位,明确了以后的就业方向:java开发。这也是我从今年3月份开始准备实习阶段到目前最为忧心的问题,因为没有在学校参与过大创等实际项目,自己动手写代码的能力也很欠缺,所以一直担忧着自...

2018-08-14 13:46:23 8115 9

原创 java后端判断结果在前端页面提示

今天在ssm+shiro的教务系统项目完善的过程中,管理员登录到教务系统后,可以管理所有的课程(CRUD),但是如果要删除一门课程,需要提前判断该课程有无学生选择,如果某门课程已经有学生选择则不能删除此课程。 逻辑想法实现为:在课程表中删除该课程信息之前,在service方法中调用选课表的mapper方法查询,如果选课表中该课程的查询结果为null或者false,表明无人选此课,执行删除...

2018-08-13 14:11:17 11803 1

原创 mapper映射文件,sql 语句中用到两个实体类参数问题

最近在写ssm+shiro的教务管理系统学习过程中,查询某个学生的选课信息,在mapper中同时传入了两个形参: List<SelectCourse > selectCourseByStudentId(PagingVO pagingVO,SelectCourse selectCourse); mapper对应的xml为: <!--分页查询已选课表--> ...

2018-08-10 13:49:24 7752 1

原创 nested exception is org.springframework.jdbc.BadSqlGram 问题

type Exception reportmessage Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException:description The server encountered an internal error that prevented it f...

2018-08-07 09:46:30 7321

原创 Could not find result map java.lang.Integer问题

HTTP Status 500 - Request processing failed; nested exception is org.apache.ibatis.builder.IncompleteElementException: Could not find result map java.lang.Integerorg.springframework.web.util.Nes...

2018-08-02 11:59:14 4132

原创 No converter found for return value of type: class java.util.ArrayList问题

配置文件中没有Json转换, (1)原因:这是因为springmvc默认是没有对象转换成json的转换器的,需要手动添加jackson依赖。 (2)解决步骤: 手动添加jackson依赖到pom.xml文件中: ` <mvc:annotation-driven> <mvc:message-converters> ...

2018-08-02 10:59:31 573

原创 **There is no getter for property named '**' in 'class ***'?问题:**

*在mapper.xml中写sql语句错误:更新多个字段时需要判断,加入语句: course_id=#{courseId} ,这样来用java语法拼接到sql语句中;要注意sql语句中不能用!=null来判断非空,要用is not null; test=”courseId 1=null” 为java语法,不要写成了test=...

2018-08-02 10:50:47 2412

原创 JSP相关知识点

一、JSP简介:Java Server Pages 即Java服务器端页面,简化的servlet设计二、JSP基础语法:     元素构成:指令、表达式、小脚本、声明、注释、静态内容  1、JSP指令:        Page指令:位于jsp页面顶端   < %@page 属性1=“属性值”...%>        include指令:将一个外部文件嵌入到当前jsp文件中,同...

2018-07-30 20:59:50 1281

空空如也

空空如也

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

TA关注的人

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