- 博客(181)
- 收藏
- 关注
原创 在linux下安装svn及使用
1、验证是否有安装svn[root@192 ~]# svnserve --version2、yum安装svn[root@192 ~]# yum install -y subversion3、创建一个svn的工作目录[root@192 ~]# mkdir /usr/local/svn4、创建一个测试用的资源仓库[root@192 svn]# svnadmin creat...
2019-02-23 21:46:35
388
原创 在linux下安装mysql
第一种方式安装mysql:yum安装1、whereis mysql:查找mysql的安装目录;2、rpm -qa|grep mysql:查看mysql安装了哪些包;3、yum remove mysql:卸载mysql;(如果卸不掉的话,就把mysql换成包名) 删除/var/lib/mysql/目录下的数据库文件:rm -rf mysql/ 删除所有与mysql相...
2019-02-23 21:43:16
542
原创 操作系统(一)—— 操作系统概论
一、操作系统的概念1、计算机系统 计算机系统是一种可以按照用户的要求接收和存储信息、自动进行数据处理并输出结果信息的系统。广义的计算机系统包含机械式系统和电子式系统两类。 计算机系统包括硬件系统和软件系统。硬件系统是计算机系统赖以工作的实体。软件系统保证计算机系统按用户指定的要求协调工作。计算机系统的资源包括两大类:硬件资源和软件资源。其中,计算机硬件系统包...
2019-02-23 19:34:31
7574
原创 第一次出国旅行的启示录 —— 关于旅行与人生的思考
什么是旅行?我们为什么需要旅行?从旅行中我们能获得什么? 这些问题是从我开始准备出国旅行时,就在不断思考的问题。它们伴随着我从2018一直到2019,我虽然老了一岁,但它们却在岁月的深淀中有了越来越清晰的答案。什么是旅行? 旅行和旅游,虽然只有一字之差,但很多人却分不清它们之间的差别,甚至以为它们应该指的是同一件事情。但在真正的旅行者眼...
2019-02-10 22:36:43
1520
原创 Maven学习笔记(五)—— 深入理解Maven的私服(Nexus)和仓库(Repository)以及settings中的mirror和mirrorOf
Maven给我们的开发工作带来了很大的便利,也增加了项目后期的可维护性,但它同样也很复杂,学习起来比较费劲,特别是一些配置可能很难搞明白。今天在这里主要是按照我们从学习到工作再到平台化开发等这样的需求升级顺序来详细分析一下,我们为什么需要Nexus,为什么需要Mirror,以及它们都应该如何配置。目录一、jar包是怎么下载下来的二、为什么需要Mirror以及Mirror...
2019-01-31 14:34:56
6827
1
原创 Maven学习笔记(四)—— 将本地项目打包发布到私服(nexus)上以及在私服上添加第三方Jar包(ojdbc)
如果还没有下载安装私服的请查看:学习笔记(四)—— 在linux下搭建neuxs私服(包含3.0以下和3.0以上两个版本)一、将本地项目打包发布到私服上1、pom.xml文件中的配置 在项目的根pom.xml文件中添加如下的配置内容 <!--发布配置--> <distributionManagement> <...
2019-01-30 22:45:45
2403
原创 在linux下搭建neuxs私服(包含3.0以下和3.0以上两个版本)
私服是架设在局域网内的一种特殊的远程仓库,通过它可以实现对远程中央仓库的代理或者添加第三方构件。通常情况下,我们添加一个Maven依赖之后,它会首先去本地仓库查找是否有我们所需要的jar包,如果有则直接使用;如果没有的话它就会去默认的远程中央仓库去下载到本地使用。但有些我们公司内部需要使用的公共jar包,远程的中央仓库是没有的,这时我们就可以将这些公司内部使用的公共jar包放到私服...
2019-01-29 16:57:19
1027
原创 将Centos7以上版本的虚拟机的动态IP修改为静态IP
虚拟机的IP如果是动态分配的,那么它在重启的时候就很可能会被分配新的IP地址。这样的话,我们的项目就很可能由于找不到网络主机而产生连接超时的状况。所以,当我们遇到这方面的问题时,我们可以将虚拟机的IP分配修改为静态的,也就是只使用某个我们指定的固定IP地址。一、查看要修改的信息内容1、查看可修改的IP地址范围2、查看默认网关3、查看当前虚拟机的IP地址使...
2019-01-28 22:25:59
3682
5
原创 Redis学习笔记(七)—— 在Spring框架中实现基于Redis的分布式锁(单机版)
目前很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们:“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足其中两项”。所以,很多系统在设计之初就要对这三者进行取舍。在互联网领域的绝大多数的场景中...
2019-01-22 17:41:38
297
原创 Java编程思想(九)—— 接口
一、抽象类和抽象方法 Java提供一种叫做抽象方法的机制,这种方法是不完整的,仅有方法声明而没有方法定义,如下:abstract void f(); 包含抽象方法的类叫做抽象类,建立抽象类的目的是希望提供一个通用接口,以此表示所有导出类的共同部分,不同的子类可以用不同的方式表示此接口 。如果一个类包含一个或多个抽象方法,该类必须被限定为抽象的,如下:...
2019-01-13 00:00:41
269
原创 使用WebSocket实现与客户的即时聊天功能
本项目的源代码地址:https://github.com/Alexshi5/learn-parent/tree/master/learn-javaweb/f1chapter10-websocket本项目的前导文章:JavaWeb高级编程(十)—— 在应用程序中使用WebSocket进行交互 通常聊天有两种实现方式: 聊天室 —— 它有超过两个参与者,通常最大...
2018-12-31 03:06:18
1894
原创 JavaWeb高级编程(十)—— 在应用程序中使用WebSocket进行交互
一、从Ajax到WebSocket的演变1、问题:从服务器获取新数据到浏览器 使用Ajax,游览器可以从服务器抓取新的数据,但浏览器并不知道新数据什么时候可用,而服务器知道。例如:当两个用户在Web应用程序中聊天时,只有服务器知道用户A给用户B发送了一条消息,而浏览器并不知道,只有当浏览器向服务器请求数据时才知道这条消息的存在。这对于Ajax来说,是一个难以解决的问题。2...
2018-12-24 00:28:24
961
原创 Java编程思想(八)—— 多态
在面向对象程序设计语言中,多态是继数据抽象和继承之后的第三种基本特征。多态通过分离做什么和怎么做,从另一角度将接口和实现分离开来。它的作用主要是消除类型之间的耦合关系。一、再论向上转型 对象既可以作为它自己本身的类型使用,也可以作为它的基类使用,而这种把对某个对象的引用视为对其基类型引用的做法被称作为向上转型。因为在继承类的画法中,基类是放置在上方的。如下...
2018-12-02 14:07:17
407
原创 使用Freemarker生成Word文档并在文档内添加Echarts图形报表或循环添加表格、图片数据
一、制作.ftl后缀的word模板文件1、新建一个word文档模板 使用其他文本编辑器编写表达式,如:Editplus 2、将word文档另存为xml并改名为.ftl后缀的文件另存完之后关闭word文档,将demo.xml的后缀修改为.ftl,然后使用文本编辑器打开demo.ftl文件3、修改.ftl文件并生成最终的模板文件① 修改图片的数据内容...
2018-11-24 15:28:18
5179
6
原创 Spring的byType、byName的自动装配逻辑以及@Autowired和@Resource的使用示例
一、Spring的依赖注入和控制反转 所谓依赖注入就是通过Spring的IOC容器来管理对象的创建、销毁以及对象之间的依赖关系。在编程中,我们经常会遇到A类依赖B类的情况,这时我们就需要在A类中声明一个B类的引用,然后在程序中new一个B类的对象,让B类引用指向B类对象的内存地址,而依赖注入的出现简化了这种维护依赖关系的频繁操作,改由Spring的IOC容器来进行维护,在IOC容...
2018-11-19 01:39:26
7104
原创 启航 —— 记 —— 第一次自考的启示:自考与自我改造
人类通过劳动实现对自然界的改造,而自考者通过自考实现对自我的改造。 我们每个人从孩童时期开始,就一直在源源不断的从家庭、学校和社会中汲取建设自我的营养,在我们毕业参加工作几年之后,这种自我建设的速度就逐步开始减缓甚至停滞。在这之前,自我建设的速度远远大于自我改造;而在这之后,自我改造的重要性则远远大于自我建设。有些人,用30岁、甚至25岁的自我活了一辈子而不...
2018-11-18 16:04:29
15852
15
原创 JavaWeb高级编程(九)—— 使用过滤器改进应用程序
一、了解过滤器 过滤器是可以拦截访问资源的请求、资源的响应或者同时拦截两者的应用组件,它们将以某种方式作用于这些请求或响应。过滤器可以检测和修改请求或响应,它们甚至可以拒绝、重定向或转发请求。如同Servlet一样,过滤器可以在部署描述符中以编程或者声明的方式进行声明,它们可以有初始化参数,并且可以访问ServletContext。二、创建、声明、映射过滤器 ...
2018-11-12 00:39:32
497
原创 图解HTTP(八)—— 确认用户身份的认证
一、何为认证 计算机本身无法判断坐在显示器前的使用者的身份,为了弄清楚究竟是谁在访问服务器,就得让对方的客户端自报家门。为确保使用者具有访问系统的权限,就需要核对使用者本人才知道的信息,这就是认证。1、认证信息 核对的信息通常包括以下这些:① 密码:只有本人才知道的字符串信息;② 动态令牌:仅限本人持有的设备内显示的一次性密码;③ 数字证书:仅限...
2018-10-30 00:45:00
1126
原创 JavaWeb高级编程(五)—— 使用会话来维持HTTP状态
一、需要会话的原因 从服务器的角度来说,当请求结束时,客户端与服务器之间就再有任何联系,如果有下一个请求开始时,就无法将新的请求与之前的请求关联起来。这是因为 HTTP请求自身是完全无状态的,会话就是用来维持请求和请求之间的状态的。 拿生活场景举例:你进入最喜欢的超市购物,找到一个购物车(从服务器获得会话),一边逛一边挑选喜爱的商品并将它们添加到购物车中(将商品添...
2018-10-28 22:55:44
737
原创 Java编程思想(五)—— 初始化与清理
一、用构造器确保初始化 C++引入了构造器的概念,这是一个在创建对象时被自动调用的特殊方法。Java中也采用了构造器,并额外提供了“垃圾回收器”,对于不再使用的内存资源,垃圾回收器会自动将其释放。 在Java中,通过提供构造器,类的设计者可确保每个对象都会得到初始化。创建对象时,如果其类具有构造器,Java就会在用户有能力操作对象之前自动调用相应的构造器,从而保...
2018-10-24 23:32:38
346
原创 数据库(七)—— 数据库管理技术的发展
一、数据库技术的发展 数据模型是数据库系统的核心和基础,以数据模型的发展为主线,数据库技术可以分为三个发展阶段,即第一代的网状、层次数据库系统,第二代的关系数据库系统,以及新一代的数据库系统。1、第一代数据库系统 层次数据库系统和网状数据库系统的数据模型虽然分别为层次模型和网状模型,但实质上层次模型是网状模型的特例,它们都是格式化模型,它们从体系结构、数据库...
2018-09-28 23:30:38
1756
原创 C++程序设计(十)—— 面向对象设计
一、过程抽象和数据抽象 抽象是形成概念的必要手段,它是从许多事物中舍弃个别的、非本质的特征,抽取共同及本质性的特征的过程。 抽象是面对对象方法中使用最为广泛的原则。类是对象的抽象;数据成员是事物静态特征的抽象;成员函数是事物动态特征的抽象。在软件开发领域,早在面向对象方法出现之前就已经开始运用抽象的原则,主要是过程抽象和数据抽象。⑴ 过程抽象 ...
2018-09-26 23:58:09
699
原创 C++程序设计(九)—— 运算符重载及流类库
一、运算符重载1、重载对象的赋值运算符 编译器在默认情况下为每个类生成一个默认的赋值操作,用于同类的两个对象之间赋值。默认的含义是逐个为成员赋值,即将一个对象成员的值赋给另一个对象相应的成员,这种赋值方式对于有些类可能是不正确的。假设类Str的数据成员char *st,则下面的语句经赋值后是有问题的:Str s1("hello"),s2("world");s2 = s...
2018-09-26 00:55:12
685
原创 C++程序设计(八)—— 多态性和虚函数
一、多态性 静态联编所支持的多态性称为编译时的多态性,当调用重载函数时,编译器可以根据调用时所使用的实参在编译时就确定应该调用哪个函数;动态联编所支持的多态性称为运行时的多态性,这由虚函数来支持。虚函数类似于重载函数,但与重载函数的实现策略不同,即对虚函数的调用使用动态联编。1、静态联编中的赋值兼容性及名字支配规律 派生一个类的原因并非总是为了添加新的数据成...
2018-09-24 00:17:41
615
原创 使用Java实现Mysql数据库的备份与恢复
废话不多说,直接上代码,如下示例:public class DatabaseUtil { //本实例支持Linux环境和Windows环境 public static void main(String[] args) throws Exception { //测试备份 String command1 = "mysqldump -hlocalho...
2018-09-21 01:50:03
5541
5
原创 Windows下进行域名映射并配置Nginx反向代理
前言 一个项目从开发到上线会有不同的环境,如开发环境、测试环境、预发布环境、生产环境等,不同环境的项目访问地址是不一样的,访问地址不同也可能会导致一些问题的产生,为了避免这些问题,可以使不同环境的访问地址相同,这可以通过配置域名来实现。一、在Windows开发环境中配置访问地址与域名的映射 1、找到windows下的hosts文件,windows10在C:\Windows\...
2018-09-21 00:56:17
14953
5
转载 什么是EJB?
文章转载自:https://www.cnblogs.com/strugglion/p/6027318.htmlEJB到底是什么?1. 我们不禁要问,什么是"服务集群"?什么是"企业级开发"? 既然说了EJB 是为了"服务集群"和"企业级开发",那么,总得说说什么是所谓的"服务集群"和"企业级开发"吧!这个问题其实挺关键的,因为J2EE 中并没有说明白,也没有具体的指标或者事例
2018-09-20 15:48:51
328
原创 数据库(六)—— 数据库安全与保护
一、数据库完整性 数据完整性约束是为了防止数据库中存在不符合语义的数据,为了维护数据的完整性,加在数据库数据之上的语义约束条件就是数据完整性约束,而DBMS检查是否满足完整性约束条件的机制就称为完整性检查。1、完整性约束条件的作用对象 完整性检查是围绕完整性约束条件进行的,因而完整性约束条件是完整性检查机制的核心。完整性约束条件的作用对象可以是列、元组和表。...
2018-09-20 01:56:40
2630
原创 C++程序设计(七)—— 类模板与向量
一、类模板 如果将类看作某些数据类型的框架,然后将这些数据类型从类中分离出来形成一个通用的数据类型T,为这个数据类型设计一个操作集,并且允许原来那些数据类型的类都能使用这个操作集,这将避免因为类的数据类型不同而产生的重复性设计。类型T通常被称为类模板,在编译时,由编译器将类模板与某种特定的数据类型联系起来,就产生一个特定的类(模板类)。1、类模板基础知识⑴ 类模板的成分和...
2018-09-15 19:15:57
1819
原创 数据库(五)—— 数据库编程(MYSQL存储过程与存储函数)
一、存储过程1、存储过程的基本概念 存储过程是一组为了完成某项特定功能的SQL语句集,它可以由声明式SQL语句和过程式SQL语句组成,这组语句经过编译后会存储在数据库中,用户只需要通过指定存储过程的名字并给定参数,即可随时调用并执行它,而不必重新编译。 使用存储过程的好处如下:① 可增强SQL语言的功能和灵活性;② 良好的封装性;③ 高性能;...
2018-09-11 01:04:42
2640
原创 C++程序设计(六)—— 继承和派生
一、继承和派生的基本概念 从一个或多个以前定义的类(基类)产生新类的过程称为派生,这个新类称为派生类。基类和派生类又可以分别叫做父类和子类。派生的新类可以增加或重新定义数据和操作,这就产生了类的层次性。 类的继承是指派生类继承基类的数据成员和成员函数。继承通常用来表示类属关系,不能将继承理解为构成关系。当从现有类中派生出新类时,派生类可以有以下几种变化:① ...
2018-09-09 17:21:37
1047
原创 C++程序设计(五)—— 特殊函数和成员
一、对象成员的初始化 一个类中说明具有某个类的类型的数据成员,这些成员称为对象成员。对象成员的构造函数调用顺序取决于这些对象成员在类中的说明顺序,跟它们在成员初始化列表中给出的顺序无关。如下示例:class Num{private: int num1;public: Num():num1(0){ cout << "使用Num类的无参构造方法进行对象初...
2018-08-26 14:56:28
546
转载 MySQL表为什么必须有主键 -- 聚集索引的简单介绍
原文:https://blog.csdn.net/jhgdike/article/details/60579883注意:下面讨论的都是MySQL5.6版本中的innodb引擎。比较规范的数据库表设计(包括我们公司)都会有一条不成文的规定,那就是给每张表一个自增主键。那么自增主键除了有数据的唯一性外,还有什么所用呢?为什么要有自增主键?之前我转发的《58到家数据库30条军规解读》中解释道...
2018-08-19 02:08:31
3783
原创 C++程序设计(四)—— 类和对象
一、类及其实例化1、定义类 类要先声明后使用;不能声明两个名字相同的类,类是具有唯一标识符的实体;在类中声明的任何成员不能使用extern、auto、register关键字进行修饰;类中声明的变量属于该类,在某些情况下,变量也可以被该类的不同实例所共享;类中有数据成员和成员函数,不有在类声明中对数据成员使用表达式进行初始化。⑴ 声明类 声明类以class...
2018-08-18 15:19:09
7321
原创 使用Maven Deploy项目到Nexus时报错: Return code is: 400, ReasonPhrase: Bad Request
一、问题描述今天在使用Maven命令:mvn deploy将项目部署到nexus中时报错如下:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on project maibao-parent: Failed to deplo...
2018-08-13 18:20:22
23496
5
原创 使用Maven Deploy项目到Nexus时报错:Return code is: 401, ReasonPhrase: Unauthorized
一、问题描述今天在使用Maven命令:mvn deploy将项目部署到nexus中时报错如下:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on project maibao-parent: Failed to deplo...
2018-08-13 17:53:39
4597
转载 C++的成员函数声明与定义 —— 类外定义成员函数以及inline函数
作者原文:https://www.cnblogs.com/wuchanming/p/4061654.html类的成员函数(简称类函数)是函数的一种,它的用法和作用和前面介绍过的函数基本上是一样的,它也有返回值和函数类型,它与一般函数的区别只是:它是属于一个类的成员,出现在类体中。它可以被指定为private(私有的)、public (公用的)或protected(受保护的)。在使用类函数时,...
2018-08-08 01:04:51
11867
原创 数据库(四)—— 数据库设计
一、数据库设计概述1、数据库的生命周期数据库的生命周期可分为两个阶段,分别是数据库分析与设计阶段、数据库实现与操作阶段。⑴ 数据库分析与设计阶段:需求分析、概念设计、逻辑设计、物理设计;⑵ 数据库实现与操作阶段:实现、操作与监督、修改与调整;2、数据库设计的目标数据库设计的两个重要目标,分别是满足应用功能需求和良好的数据库性能。⑴ 应用功能需求:是指用户当前与可预知的将...
2018-08-06 00:50:31
2262
原创 Java编程思想(四)—— 控制执行流程
一、true和false java不允许拿一个数字来作为布尔值使用,但在C/C++中是允许的,如下:void example15(){ if(1){//在C语言中,1代表的是真,0代表的是假,C++也是一样 printf("true"); }else{ printf("false"); }} java中必须使用一个条件表达式将其转换成布尔类...
2018-08-04 17:08:44
593
原创 C++程序设计(三)—— 函数和函数模板
一、函数的参数及其传递方式 C++的函数传递有两种传递方式:传值和伟引用。传值分为传“对象值”和“对象地址值”,“对象值”是指对象的数据成员值,“对象地址值”是指对象的首地址值。伟引用其实是传对象的地址。 注意:传地址值传递的是值,不是地址;传地址传的是地址,不是地址值。传递对象地址值是使用对象指针作为参数,传递对象地址是使用对象引用作为参数。1、对象作为函...
2018-08-04 12:38:50
584
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅