- 博客(55)
- 资源 (6)
- 收藏
- 关注

原创 《JSF教程》-02 JSF与Struts2、Springmvc的对比
一提到MVC框架,可能大家最熟悉的是Struts了,当然像我一样90的程序员,可能一开始就是从struts2学起,直接跳过以老版的struts1。还有人可能在公司用到了Springmvc,哪么它们有哪些区别呢? 其 主要的区别是:struts2和springmvc是基于传统的请求处理模型的MVC框架,而JSF是基于事件处理模型...
2015-08-28 11:55:53
2293
1

原创 《JSF教程》-01 认识JSF
JavaServer Faces (JSF) 是一种用于构建Java Web 应用程序的标准框架(是Java Community Process 规定的JSR-127标准),2004年03月11日JSF初始规范发布.至今最新是JSF2.2版本,引入了基于组件和事件驱动的开发模式,使开发人员可以使用类似于处理传统桌面应用的方式来开发Web应用程序。类似于使用dot net 或Delphi开发,在ja
2015-08-28 11:06:06
528
原创 Python包管理
pip模块管理工具在安装了Python环境的时候自己会安装一个pip工具,所以用户在命令行下直接可以执行pip命令升级pip工具:如果pip工具有新版本发布时,使用pip命令就会提示更新,因此可以使用以下命令更新 python3 -m pip install --upgrade pip查询模块:pip3 search pymsql安装模块:pip3 install pymysql下载模块到本地:pip3 download pymysql列出已安装...
2021-01-21 17:58:55
2041
1
原创 第三部分 网络请求-axios
目录1. Ajax请求1.1 原生ajax1.2 jqueryAjax1.3 fetch1.4 axios1.5 几种ajax库的对比2 调用Restfull接口2.1 restfull接口规范2.2 qs.js库qs.stringify() 和JSON.stringify()qs.parse()和JSON.parse()2.3 发送Get请求2.4 发送post请求1、Content-Type: application/json2、Content
2020-09-20 10:10:34
948
原创 第六部分 状态管理-Vuex
1. 状态管理1.1 vue组件共享数据在单页面应用程序中,路由和组件关联,采用单文件组件组织 vue程序。➢优点:✓提高模块的独立性,便于代码重用和维护。➢缺点:✓组件与组件(即不同路由页面)之间必然需要进行数据通信,vue中实现组件间共 享数据比较繁琐。组件间共享数据方式父子组件间:父组件向子组件传递props数据,子组件向父组件$emit自定义事件。➢缺点✓只能对于父子组件有效✓状态数据更新位置不统一,不利于代码维护非父子组件间.
2020-09-19 22:18:06
307
原创 第五部分 VueRouter与SPA应用
目录1. SAP应用介绍2. 使用Vue-router3. 动态路由3.1 动态路由的使用3.2 获取动态路由参数4. 路由传参5. 动态路由切换5.1 动态路由与ajax5.2 解决方案:路由导航守卫6. 编程式导航6.1 push方法6.2 releace方法6.3 go方法7. 路由嵌套和命名视图7.1 路由嵌套7.2 命名视图1. SAP应用介绍单页面应用(SPA:Single Page Application):是指.
2020-08-15 23:29:05
288
原创 第二部分 VUE组件详解
目录1 复用与组件化1.1 组件概述1.2 创建和使用组件1.3 组件对象剖析1.3.1 组件对象的data属性1.3.2 组件的其它属性2 使用porps父子组件传值2.1 props属性2.2 v-bind属性绑定3 组件间的通信3.1 父子组件间的通信3.2 父子组件之间的访问3.2.1 在子组件中访问父组件3.2.2 父组件中访问子组件3.3 非父子组件通信3.3. 1 事件总线4 组件插槽(slot)4.1 插槽的基本使用
2020-08-02 22:35:33
242
原创 聊聊项目中的MVC分层构架中的一些线程安全问题
变量的线程安全分析成员变量和静态变量是否线程安全? 如果它们没有共享,则线程安全 如果它们被共享了,根据它们的状态是否能够改变,又分两种情况 如果只有读操作,则线程安全 如果有读写操作,则这段代码是临界区,需要考虑线程安全局部变量是否线程安全? 局部变量是线程安全的 但局部变量引用的对象则未必 如果该对象没有逃离方法...
2020-04-22 17:40:42
359
原创 浅谈序列化
序列化简介:序列化也叫编解码。JDK的序列化JDK从1.1版本提供了序列化,无需添加额外的类库,只需要POJO实现Serializable接口即可通过ObjectInputStream、ObjectOutputStream读取或写出,但是jdk自身的序列化性能太低,编流太大不适应一些高并发通信场合,并且无法跨语言Protobuf序列化官方文档:https://dev...
2020-04-04 14:29:27
255
原创 基于Netty的HTTP服务器的实现
HTTP协议简介Http协议是基于TCP/IP协议基础上用于超文本传输的应用层协议,主要有以下特点:支持C/S模式 无状态 灵活 简单,直接在browser中指定url,携带请求参数或请求消息体就可与服务器通信Http请求消息Http响应消息...
2020-04-04 13:32:16
291
原创 基于Netty的Websocket实现
WS协议简介WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。常见WS实现的框架
2020-04-03 15:58:56
467
原创 基于Netty的群聊系统
目录需求功能实现思路服务端实现服务器实现类业务处理器:客户端实现客户端启动类:客户端业务处理器:需求功能实现思路服务端实现服务器实现类public class NettyGroupChatServer { private int port; public NettyGroupChatServer(int por...
2020-04-03 14:58:52
250
原创 第十四章 Hash表
哈希表基础问题提出:https://leetcode-cn.com/problems/first-unique-character-in-a-string/给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2.编码实现:class...
2019-05-04 13:44:03
207
原创 第三章 队列
简介:队列也是和种线性结构,同样也是一种操作受限有线性表,相比数组,队列对应的操作是数组的子集,只能从一端(队尾)添加元素,从另一端(队首)取出元素。它是一种先进先出的数据结构(First In First Out 即 FIFO)应用场景基本操作:数组队列代码实现:public interface Queue<T> { /** ...
2019-05-01 14:10:21
174
原创 第二章 栈
分析栈是一种操作受限的线性表,因此它的操作是线性表的子集,它只能从一端添加元素,从一端取出元素,这一端称为栈顶,它是一种后进先出的数据结构(First In First Out:FIFO)应用场景各各软件中的undo操作(撤销) 程序中的函数调用过程(实质压栈出栈的过程) 编译器中分析括号匹配 ...栈的基本操作:void push(E) E pop() E pe...
2019-05-01 11:29:18
172
原创 第二章 线性表-顺序表
提出问题顺序表,它是基于数组的对线性表的一种实现。抽象数据类型很多时间数组并不能满足我们的需求,比如,所以基于数组要进行封装,也就是我们的顺序表getSize()代码实现public class ArrayList { /** 使用数组存储数据 */ private int[] data; /** size记录当前数组data中实际元...
2019-04-30 21:37:25
153
原创 Helm程序包管理
目录Helm概述Helm核心术语ChartsRepositoryConfigReleaseHelm架构Heml安装与使用安装Helm Client安装Tiller ServerHelm基本操作命令Heml ChartsChart.yamlrequirements.yamlvalues.ymal自定义Charts自己搭建kub...
2019-04-14 11:11:54
807
原创 基于NIO的网络编程
TCP编程基于TCP的非阻塞模式UDP编程基于UCP的非阻塞模式范例:服务端:public class UDPServer { public static void main(String[] args){ try ( // 1 获取通道 DatagramChann...
2019-03-07 11:39:57
205
原创 Java之NIO
缓冲区缓冲区(Buffer):在 Java NIO 中负责数据的存取。缓冲区就是数组。用于存储不同数据类型的数据。根据数据类型不同(boolean 除外),提供了相应类型的缓冲区:ByteBuffer, CharBuffer, IntBuffer, LongBuffer, ShortBuffe DoubleBuffer, FloatBuffer, , MappedByteBu...
2019-03-06 17:05:21
151
原创 Python之Socket网络编程
TCP编程:socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)socket和file的区别: 1、file模块是针对某个指定文件进行【打开】【读写】【关闭】 2、so...
2019-02-09 11:27:03
306
原创 Prometheus监控平台部署
目录简介部署Metrics Server部署exporter部署prometheus部署matrics整合Grafana简介Prometheus项目来自SoundCloud,是继Kubernetes之后CNCF的第二个成员项目,是新起的系统监控平台和告警工具套件,在容器和微服务广泛关注和使用kube-state-metrics把数据转换为k8s能够识别的数据格式...
2019-01-14 18:01:39
946
1
原创 Heapster+InfluxDB+Grafana监控平台部署
目录 简介部署InfluxDB部署Heapster部署Grafana简介Heapster是集群级别的监视和事件数据聚合工具,它原生支持并且适用于各种方式创建的k8s集群系统,Heapster本身可作为集群中的一个pod运行,它通过发现集群中所有节点实现从每个节点的kubelet内建的cAdvisor获取性能指标数据,并通过标签将pod对象及其相关的监控数据进行分级、聚合...
2019-01-08 17:24:14
741
原创 使用Helm包管理工具在kubernetes上部署EFK
目录 简介部署Elasticesearch部署Fluentd部署Kibana简介对于单机版的集群式应用来说,如果遇到故障我们可以登录上服务器上通过查看日志文件的方式进行查看日志,但对多规模的分布式多节点应用来说,日志分散在多个节点,这显然通过登录上每个节点服务器通过命令查看日志不可取的,就需要统一的日志管理平台收集各各节点上的日志集中管理之前相信大家听过ELK工具栈...
2019-01-05 11:29:42
4671
3
原创 Kubernetes-dashboard的部署及认证
部署Kubernetes-dashboard简介:dashboard是通用的基于Web的k8s集群图形化管理工具,它允许用户管理在集群中运行的应用程序,并对它们进行故障排除,以及管理集群本身。部署:部署dashboard应用资源: kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/...
2019-01-01 16:58:17
1011
1
原创 JUC-并发集合类
在大家学习Java基础时都知道,ArrayList、LinkedList、HashMap、HashSet等常用的容器类都是线程不安全的,如果有多个线程访问它们时将会出现意外结果,下边我们讲解如果使用线程安全的集合类。使用java.util包下线程安全的集合类 使用Collections工具类将非线程安全的集合包装成线程安全的集合 使用juc中的并发集合类Vector与Hashtable...
2018-08-19 12:39:27
907
原创 多线程-实现一个简单人Echo服务器
实现一个简单的Echo服务器服务器端监听服务端的到来,当监听到客户端到来之后,将创建一个线程去处理客户端Socket 服务器端:public class MultiThreadEchoServer { private static ExecutorService es = Executors.newCachedThreadPool(); /**...
2018-08-19 12:04:06
708
转载 LVS+Keepalived+Squid+Nginx高可用负载均衡缓存配置
随着互联网IT行业的发展,越来越多的企业开始使用开源软件搭建自己的web架构,主流的LVS也得到了广泛的应用,在保证高可用的同时,用户对网站的体验速度也有了很高的要求,这时候需要我们在我们的架构既要满足高并发同时还要求高速度。 今天我们来搭建主流架构Lvs+Keepalived+Squid+Nginx 相关软件包:系统:CentOS6.0 x64 Ipvsadm
2016-05-11 09:42:09
1340
转载 Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式
1. 准备jar包: log4j-1.2.17.jar (从 http://www.apache.org/dist/logging/log4j/1.2.17/ 下载) tomcat-juli.jar, tomcat-juli-adapters.jar (从 http://www.apache.org/dist/tomcat/tomcat-7/v7.0.52/bin/extras
2016-05-10 15:26:15
993
转载 Nginx+tomcat配置集群负载均衡
简介:开发的应用采用F5负载均衡交换机,F5将请求转发给5台hp unix服务器,每台服务器有多个webserver实例,对外提供web服务和socket等接口服务。之初,曾有个小小的疑问为何不采用开源的apache、Nginx软件负载,F5设备动辄几十万,价格昂贵?自己一个比较幼稚的问题,后续明白:F5是操作于iOS网络模型的传输层,Nginx、apache是基于http反向代理方式,位于I
2016-05-04 13:30:07
435
转载 Apache2.2+Tomcat7.0整合配置详解
一、简单介绍 Apache、TomcatApache HTTP Server(简称 Apache),是 Apache 软件基金协会的一个开放源码的网页服务器,可以在 Windows、Unix、Linux 等操作系统中运行是最流行的Web服务器软件之一。Apache 反应速度快,运行效率高,但只支持HTML等静态页面(加载插件后也可支持 PHP 页面)。 Apache Tomcat 是由 Ap...
2016-05-04 13:09:43
339
转载 CentOS 6.4下Squid代理服务器的安装与配置
一、简介代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息。Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据。当一个用户想要下载一个主页时,可以向Squid 发出一个申请,要Squid 代替其进行下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,S
2016-03-22 21:36:51
296
转载 RHCE7.0-搭建基于NFS网络文件系统服务
Linux NFS服务器的安装与配置一、NFS服务简介 NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。 N
2016-03-22 20:54:48
536
转载 oracle 11gr2 11.2.0.4升级11.2.0.4.2
oracle 11gr2 11.2.0.4升级11.2.0.4.2更新的补丁安装包有如下:1.p6880880_112000_LINUX.zip2.p18031668_112040_Linux-x86-64.zip1.把Opatch的环境变量配置export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH2.检查当前数据库的版
2016-01-15 10:45:18
899
转载 JavaScript中showModalDialog (模态窗口)详细使用
基本介绍: showModalDialog() (IE 4+ 支持) showModelessDialog() (IE 5+ 支持) window.showModalDialog() 方法用来创建一个显示HTML内容的模态对话框。 window.sho
2015-12-28 17:50:34
1099
转载 WebLogic安装方式之三静默文件安装
一. 本文演示静默文件方式安装 •在Windows上 –打开命令行窗口 –filename.exe -mode=silent -silent_xml=file_path •在Unix或Linux上的安装,如果是.bin的安装程序: –chmoda+x filename.bin –./filename.bin -mode=silent -sile
2015-12-16 16:29:42
971
转载 第一章 在Centos7.1上安装oracle11gR2-静默安装
# 后跟命令表示以操作系统下root用户操作; $ 后跟命令表示以操作系统下oracle用户操作; 1.1 上传软件 假如放在/wangnc/oracle/11g/目录下. # mkdir -p /wangnc/oracle/11g/# cd /wangnc/oracle/11g/ 可通过SecureFX工具sftp上传数据库安装文件.
2015-12-16 16:23:15
5266
转载 man .info .--help的用法和区别
Linux操作系统为我们提供了十分方便的系统文档帮助信息。例如“--help”选项、man工具和info工具文档等。许多初学者对于这三种帮助信息的概念并不是十分了解,下面就让我们来作一些具有针对性的讲解。“--help”选项“--help”是一个工具选项,大部分的GNU工具都具备这个选项,“--help”选项可以用来显示一些工具的信息,如在命令行中键入:$ fdisk --
2015-11-10 19:46:00
702
转载 消息中间件规范JMS 2.0的十大改进
消息中间件规范JMS 2.0在编码方面做了很多改进,可以帮助开发者减少编写的代码量。下面,由我一一说明。一、用JMSContext取代了Connection和Session对象消息中间件规范JMS 2.0引入了一个新对象——JMSContext,它提供了原先Connection和Session对象同样的功能。在JMS 1.1中是这样的:Connection connec
2015-11-03 12:50:21
358
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人