自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海向的博客

干净的圈子 规律的生活 中意的人

  • 博客(109)
  • 资源 (3)
  • 收藏
  • 关注

原创 volatile原理

volatilevolatile 只能保证对单次读/写的原子性。i++ 这种符合操作操作不能保证原子性。禁止指令重排可见性volatile读的内存语义当读一个volatile变量时,JMM会把该线程对应的本地内存置为无效。线程接下来将从主内存中读取共享变量(注意不仅仅是一个volatile变量,是所有共享变量)volatile写的内存语义当写一个volatile变量时,JMM会把...

2020-03-30 09:49:08 223

原创 elasticsearch中mapping全解实战

文章目录@[toc]Mapping简介Mapping Type分词器最佳实践字段类型text 类型keyword 类型date类型object类型nest类型range类型实战:同时使用keyword和text类型实战:格式化时间、以及按照时间排序????原文地址为https://www.cnblogs.com/haixiang/p/12040272.html,转载请注明出处!????es与java的整合...

2019-12-14 17:31:29 388

原创 面向对象程序设计原则——里式替换原则

详细分析请查看原文出处详细分析请查看原文出处详细分析请查看原文出处文章目录@[toc]定义意义做法实践uml图代码部分定义Liskov于1987年提出了一个关于继承的原则“Inheritance should ensure that any property proved about supertype objects also holds for subtype objects.”——...

2019-11-06 14:15:26 269

原创 RabbitMQ如何对消费端进行限流

https://www.cnblogs.com/haixiang/p/10905189.html假设一个场景,首先,我们 Rabbitmq 服务器积压了有上万条未处理的消息,我们随便打开一个消费者客户端,会出现这样情况: 巨量的消息瞬间全部推送过来,但是我们单个客户端无法同时处理这么多数据!当数据量特别大的时候,我们对生产端限流肯定是不科学的,因为有时候并发量就是特别大,有时候并发量又特别少,...

2019-05-22 12:23:10 914

原创 RabbitMQ应用场景、RabbitMQ消息确认机制

RabbitMQ消息确认机制https://www.cnblogs.com/haixiang/p/10900005.htmlRabbitMQ应用场景https://www.cnblogs.com/haixiang/p/10199754.html

2019-05-21 15:26:02 280

原创 Base64搭配MessageDigest进行的两次加密

一 java.security.MessageDigest此 MessageDigest 类为应用程序提供信息摘要算法的功能,如 MD5 或 SHA 算法。信息摘要是安全的单向哈希函数,它接收任意大小的数据,并输出固定长度的哈希值。MessageDigest 对象开始被初始化。该对象通过使用 update 方法处理数据。任何时候都可以调用 reset 方法重置摘要。一旦所有需要更新的数据都已经...

2018-11-19 16:45:45 1250

原创 第一天笔记

使用 nc 命令进行传输文件方法1,传输文件演示(先启动接收命令)步骤1,先在B机器上启动一个接收文件的监听,格式如下意思是把赖在9995端口接收到的数据都写到file文件里(这里文件名随意取)nc -l port >filenc -l 9995 >zabbix.rpm步骤2,在A机器上往B机器的9995端口发送数据,把下面rpm包发送过去nc 10.0.1.162 99...

2018-11-16 10:19:02 180

原创 IDEA 常用的模板

import java.util.ArrayList;import java.util.List;/** * 1. IDEA 中代码模板所处的位置 Settings -> live Templates * /Postfix Completion * 2. 常用的模板 */public class TestSettings { //模板6 prsf 可生成 priva...

2018-10-23 19:55:00 1583

原创 Centos7 下的防火墙端口配置

如果外部不能访问,需要查看防火墙以及服务器的端口安全设置。防火墙的操作查看所有打开的端口: firewall-cmd --zone=public --list-ports添加firewall-cmd --zone=public --add-port=6379/tcp --permanent (–permanent永久生效,没有此参数重启后失效)重新载入firewall-cmd -...

2018-10-15 16:35:22 316

原创 Centos7 下安装 RabbitMQ

安装 erlang1.下载erlang官网地址 http://www.erlang.org/download 挑选合适的版本 然后 wget 比如目前最新版本 19.3运行命令 wget http://erlang.org/download/otp_src_19.3.tar.gz2.使用yum安装下必须的配件:yum install gcc glibc-devel make ncurs...

2018-10-15 11:52:03 153

原创 centos 下完全卸载 mysql5.6

查看已经安装的服务rpm –qa|grep -i mysql-i 作用是不区分大小写yum remove mysql mysql-server mysql-libs compat-mysql51rm -rf /var/lib/mysqlrm /etc/my.cnf查看是否还有mysql软件:rpm -qa|grep mysql有的话继续删除可以看到有两个安装包MySQL-ser...

2018-10-14 15:28:34 1878

原创 Linux(CentOS 7)环境下安装MySQL

在CentOS中默认安装有MariaDB,但是我们需要的是MySQL,安装MySQL可以覆盖MariaDB MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能...

2018-10-14 15:26:51 110

原创 字符串算法

1.1 旋转字符串题目描述给定一个字符串,要求把字符串前面的若干个字符移动到字符串的尾部,如把字符串“abcdef”前面的2个字符’a’和’b’移动到字符串的尾部,使得原字符串变成字符串“cdefab”。请写一个函数完成此功能,要求对长度为n的字符串操作的时间复杂度为 O(n),空间复杂度为 O(1)。分析与解法解法一:暴力移位法初看此题,可能最先想到的方法是按照题...

2018-07-16 18:10:29 693 1

原创 数据结构与算法分析(Java语言描述)—— 树

1.二叉树2.查找树 ADT —— 二叉查找树3. AVL 树4. 伸展树5. 再谈树的遍历6. B 树7. 标准库中的集合与映射8. 小结

2018-06-24 16:55:49 13275 1

原创 数据结构与算法分析(Java语言描述)—— 队列

1. 队列的模型      队列的基本惭怍是 enqueue(入队),他是在表的末端(叫作队尾(rear))插入一个元素,和 dequeue(出队),它是删除(并返回)在表的开头(也叫作队头(front))的元素。2. 队列的数组实现 &

2018-06-24 15:41:08 533

原创 数据结构与算法分析(Java语言描述)—— 栈

1. 栈的实现使用 deque 接口来实现栈,deque 接口被 LinkedList 所实现,是一个双向链表,允许在前端后后端插入和删除的操作。 ArrayList 和 LinkedList 能在 99% 的情况下是栈实现的最好方式,因为栈操作是常数时间操作,所以,除非在独特环境下,否则是不会有明显改进的。import java.util.Deque;import java.util...

2018-06-21 21:43:30 298

原创 数据结构与算法分析(Java语言描述)—— 表

一 Java Collections API 中的表1.1 Coolection 接口public interface Coolection<T> extends Iterable&a

2018-06-19 11:57:12 1516

翻译 欢迎使用CSDN-markdown编辑器2

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...

2018-06-19 10:57:48 133

原创 SpringMVC笔记(六)

处理 JSON (使用MessageConverter)1. 加入 jar 包jackson-annotations-2.6.0-xh.jarjackson-core-2.6.0-xh.jarjackson-databind-2.6.0-xh.jar2. 前端页面<%@ page language="java" contentType=&a

2018-05-22 17:04:51 175

原创 SpringMVC笔记(五)

数据转换1. 数据绑定流程SpringMVC通过反射机制对目标处理方法进行解析,将请求消息绑定到处理方法的入参中。其中,数据绑定的核心部件是DataBinder,运行机制如下 数据绑定的具体流程说明如下SpringMVC主框架将ServletRequest对象和目标方法的入参实例传递给WebDataBinderFactory实例,以创建DataBinder实例对象;D...

2018-05-16 16:31:06 266

原创 SpringMVC笔记(四)

RESTful SpringMVC CRUD1. 需求分析a. 显示所有员工信息 -URI emps-请求方式 GET-显示效果 b. 添加所有员工信息-显示添加URL emp请求方式 GET显示效果 -添加员工信息URL emp请求方式 POST显示效果:完成添加,重定向到 list.jsp c. 删除操作URL : e...

2018-05-14 19:27:24 198

原创 SpringMVC笔记(三)

视图和视图解析器Spring MVC 如何解析视图1. 视图解析器请求处理方法执行完成后,最终返回一个 ModelAndView 对象,对于那些返回String,View 或 ModelMap 等类型的处理方法,Spring MVC 也会在内部将它们装配城一个 ModelAndView 对象,它包含了逻辑名和模型对象的视图。Spring MVC 借助视图解析器(ViewRe...

2018-05-13 12:19:55 169

原创 SpringMVC笔记(二)

使用 @RequestParam 绑定请求参数的值在处理方法入参处使用@RequestParam 可以把请求参数传递给请求方法 -value : 参数名 -required : 是否必须 默认为 true 表示请求参数中必须包含相应参数, 若不在抛出异常 /** * @RequestParam 来映射请求参数 * value 值即请求参数的参数...

2018-05-10 23:22:21 277

原创 SpringMVC笔记(一)

SpringMVC 概述Spring为展现层提供的基于MVC设计理念的优秀的Web框架,是目前最主流的MVC框架之一Spring3.0后全面超越Struts2,成为最优秀的MVC框架Spring MVC通过一套MVC注解,让POJO成为处理请求的控制器,而无须实现任何接口。支持REST风格的URL请求采用了松散耦合可插拔组件结构,比其他MVC框架更具扩展性和灵活性SpringM...

2018-05-09 21:57:18 178

原创 Spring4.0学习笔记(七)

事务简介事务管理是企业级应用程序开发中必不可少的技术, 用来确保数据的完整性和一致性.事务就是一系列的动作, 它们被当做一个单独的工作单元. 这些动作要么全部完成, 要么全部不起作用事务的四个关键属性(ACID) 原子性(atomicity): 事务是一个原子操作, 由一系列动作组成. 事务的原子性确保动作要么全部完成要么完全不起作用.一致性(consistency): 一旦所有事...

2018-05-07 18:54:06 172

原创 Spring4.0学习笔记(六)

JdbcTemplate的使用简介JdbcTemplate是Spring框架自带的对JDBC操作的封装,目的是提供统一的模板方法使对数据库的操作更加方便、友好,效率也不错。但是功能还是不够强大(比如不支持级联属性),在实际应用中还需要和hibernate、mybaties等框架混合使用。需要导入的jar包c3p0-0.9.2.1.jarcommons-logging-...

2018-05-05 21:09:18 173

原创 Spring4.0学习笔记(五)

AOP基础通过例子来看 AOP 优势想要为写好的 ArithmeticCalculator 添加日志 即每次运算前后添加 采用以下方法太过繁琐,修改内容需要每个跟着都修改,可维护性差 public interface ArithmeticCalculator { int add(int i, int j); int sub(int i, int j);...

2018-05-03 17:11:07 210

原创 静态代理与动态代理

代理模式介绍 在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。 在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。 意图:为其他对象提供一种代理以控制对这个对象的访问。主要解决:在直接访问对象时带来的问题,比如说:要访问的对象在远程的机器上。在面向对象系统中,有些对象由于某些原因(比如对象创建开销很大,或者某...

2018-05-03 10:37:09 136

原创 反射全解

反射概述JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.什么是反射 元数据(m...

2018-05-02 23:20:35 156

原创 Spring4.0 学习笔记(四)

基于注解配置 Bean在 classpath 中扫描组件组件扫描(component scanning): Spring 能够从 classpath 下自动扫描, 侦测和实例化具有特定注解的组件.特定组件包括@Component: 基本注解, 标识了一个受 Spring 管理的组件@Respository: 标识持久层组件@Service: 标识服务层(业务层)组件@...

2018-04-22 10:47:21 844

原创 Spring4.0 学习笔记(三)

Spring表达式语言 SpELSpring 表达式语言(简称SpEL):是一个支持运行时查询和操作对象图的强大的表达式语言。语法类似于 EL:SpEL 使用 #{…} 作为定界符,所有在大框号中的字符都将被认为是 SpELSpEL 为 bean 的属性进行动态赋值提供了便利通过 SpEL 可以实现: 通过 bean 的 id 对 bean 进行引用调用方法以及引用对象中的属性计...

2018-04-21 15:30:57 186

原创 Spring4.0 学习笔记(二)

自动装配Spring IOC 容器可以自动装配 Bean. 需要做的仅仅是在 的 autowire 属性里指定自动装配的模式byType(根据类型自动装配): 若 IOC 容器中有多个与目标 Bean 类型一致的 Bean. 在这种情况下, Spring 将无法判定哪个 Bean 最合适该属性, 所以不能执行自动装配.byName(根据名称自动装配): 必须将目标 Bean 的名称和...

2018-04-20 16:40:20 258

原创 Spring4.0 学习笔记(一)

Spring 是什么Spring 是一个开源框架.Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能.Spring 是一个 IOC(DI) 和 AOP 容器框架.具体描述Spring轻量级:Spring 是非侵入性的 - 基于 Spring 开发的应用中的对象可以不依赖于 Spring 的 A...

2018-04-20 16:31:32 486 2

原创 MVC设计模式(二)之业务逻辑分析

1.整体的架构 2.多个请求对应一个 Servlet 1).Servlet 映射为 *.do:可以接收一切 .do 结尾的请求@WebServlet("*.do")public class CustomerServlet extends HttpServlet2).在 Servlet 的 doGet() 和 doPost() 中//1. 获取ServletPath:/e...

2018-03-16 16:52:01 1826

原创 使用 DBUtils 编写通用的DAO

主要遇到的问题: ->DAO的实现方式不止JDBC一种,所以要写一个DAO接口,然后用JDBC来实现,实现其中的方法 ->如果要通用的话,必须要泛型,可是 queryRunner 中的部分方法要获取 存储对象的class文件,要考虑如何获取 T.classUML图 1.配置 c3p0-config.xml<?xml version="1....

2018-03-08 16:04:05 1013

原创 c3p0数据库连接池与DBUtils工具的应用

c3p0数据库连接池简介为解决传统开发中的数据库连接问题,可以采用数据库连接池技术数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”,预先在缓冲池中放入一定数量的连接,当需要建立连接时,只需从“缓冲池”中取出一个,使用完毕以后再放回去。数据库连接池分则分配、管理、和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是重新建了一个。数据库连接池在初始化时将创建一定数量...

2018-03-08 15:46:30 290

原创 MVC设计模式在JavaWeb中的应用(一)

MVC基本概念模型(model) 模型是应用程序的主体部分,模型表示业务 数据和业务逻辑。 一个模型能为多个视图提供数据。 由于应用于模型的代码只需写一次就可以被 多个视图重用,所以提高了代码的可重用性。视图(view) 视图是用户看到并与之交互的界面,作用如下 -视图向用户显示相关的数据。 -接受用户的输入。 -不进行任何实际的业务处理控制器(controller) 控制器接受用...

2018-03-05 18:33:55 6206

原创 Ajax+Servlet 实现智能搜索提示

设计思路-> 从搜索框获得输入字符串-> 利用 $.get(url, args, function(data){...},"json") 方法-> 将请求地址 url 以及 参数 args 发送给 url 中包含的后台的 Servlet程序-> Servlet 对 url 中的请求参数与 list 中数据比对-> 把其中以传入值为开头的数据放入一个新的...

2018-02-20 00:48:29 456

原创 Ajax+Servlet 实现购物车功能

index,jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/htm

2018-02-16 14:13:41 1425 1

原创 Ajax+Servlet 验证用户名是否存在

index.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4

2018-02-15 23:25:59 1148 1

C语言学生信息管理系统

使用C语言链表实现学生信息管理系统,可以对学生信息进行插入、删除、学生成绩排序、查找、浏览、保存到本地等操作。

2018-06-14

JavaWEB教学设备管理系统

使用Spring SpringMVC jdbcTemplate实现的教学设备管理系统,分为多权限,对应不同的视图,数据库采用 MYSQL,文件内包含sql文件,导入数据库可自动建表插数据

2018-06-14

java swing + mysql 实现图书管理系统

使用java基础知识实现的图书管理系统,数据库为mysql,界面利用 java 的swing开发

2018-02-20

空空如也

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

TA关注的人

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