自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qq:489366879

程序员

  • 博客(38)
  • 收藏
  • 关注

原创 Linux 查看端口占用并杀掉

1. 查看端口号占用情况:netstat -apn|grep 80 tcp 0 0 10.65.42.27:80 172.22.142.20:62771 ESTABLISHED6426/lighttpd2. 杀掉该进程kill -9

2017-05-31 00:07:50 226

原创 【设计模式】—— 备忘录模式Memento

模式意图  这个模式主要是想通过一个对象来记录对象的某种状态,这样有利于在其他需要的场合进行恢复。  该模式还有跟多可以扩展的地方,比如可以记录多个时间的状态,每个角色都有可以扩展的空间,完全看业务场景而定。  应用场景  1 保存对象某一时刻的状态  2 避免直接暴露接口,破坏封装性模式结构Originator 是备忘录的发起者,记录状

2017-05-24 21:19:28 186

原创 【设计模式】—— 中介者模式Mediator

模式意图 使用一个中介的对象,封装一组对象之间的交互,这样这些对象就可以不用彼此耦合。 这个中介者常常起着中间桥梁的作用,使其他的对象可以利用中介者完成某些行为活动,因此它必须对所有的参与活动的对象了如指掌!应用场景    1 当一组对象要进行沟通或者业务上的交互,但是其关系却又很复杂混乱时,可以采用此模式。 2 当一个对象与其他的对象要进行紧密

2017-05-24 21:03:40 174

原创 【设计模式】—— 迭代模式Iterator

模式意图提供一个方法按顺序遍历一个集合内的元素,而又不需要暴露该对象的内部表示。 应用场景1 访问一个聚合的对象,而不需要暴露对象的内部表示2 支持对聚合对象的多种遍历3 对遍历不同的对象,提供统一的接口。模式结构Iterator 定义访问的接口/** * 抽象的迭代,有判断结束和下一个,获取当前元素等函数 * @auth

2017-05-23 22:31:40 190

原创 【设计模式】—— 解释器模式Interpret

模式意图自定义某种语言后,给定一种文法标准,定义解释器,进行解析。做过搜索的朋友们可能更了解一些,平时我们搜索所需要的词库,通常就需要用这种方式来实现。应用场景1 有复杂的语法分析场景2 需要高效的解释,胜过快速的效率(即看中解释的结果,而放弃效率)模式结构Expression 语法解释器的抽线模型/** * 指定抽

2017-05-23 22:00:50 194

原创 【设计模式】—— 命令模式Commond

模式意图       将一个请求封装成一个对象,从而对这个命令执行撤销、重做等操作。  典型的Eclipse开发中,编辑器的操作就需要用到这个模式,比如Undo、Redo等等。  另外这个模式使得一个命令的触发与接收解耦,这样我们就可以演变成把感兴趣的对象接收这个命令,当命令触发时,这些对象就会执行操作。这个机制也是java事件的处理方式。应用场景   

2017-05-22 22:16:35 300

原创 【设计模式】—— 职责链模式ChainOfResponsibility

模式意图避免请求的发送者,和接受者过度的耦合在一起。一个请求者只需要发送一个请求即可,它的请求具体由后面哪个对象进行响应,并不需要关心。而请求的接受者可以自己处理它,也可以把它像链条一样向后传。因此,请求也就意味着有可能丢失,或者说没有确切的安全保障。 应用场景1 降低耦合度2 增强指派职责的灵活性3 不保证被接受 模式结构Han

2017-05-22 22:07:26 208

原创 【设计模式】—— 代理模式Proxy

模式意图代理模式为其他的对象增加一个代理对象,进行访问控制。从而避免直接访问一个对象,造成效率或者安全性上的降低。应用场景1 远程代理,为一个远程对象,创建一个本地的代理对象。每次访问,直接访问本地代理对象即可。2 虚代理,如果对象很大,直接访问开销很大,可以为他创建一个代理对象,只生成关键的信息即可。3 保护代理,为某个对象增加一种保护机制,只有一

2017-05-22 21:58:33 167

原创 【设计模式】—— 享元模式Flyweight

模式意图享元模式,也叫【轻量级模式】或者【蝇量级模式】。主要目的就是为了减少细粒度资源的消耗。比如,一个编辑器用到大量的字母数字和符号,但是不需要每次都创建一个字母对象,只需要把它放到某个地方共享使用,单独记录每次创建的使用上下文就可以了。 再比如餐馆的桌子,餐具,这些都是享元模式的体现。客户是流动的,每次吃饭都是用饭店固定的那些餐具,而饭店也不需要每次新来顾客,就买新的盘子餐

2017-05-22 21:48:09 156

原创 【设计模式】—— 外观模式Facade

模式意图外观模式主要是为了为一组接口提供一个一致的界面。从而使得复杂的子系统与用户端分离解耦。有点类似家庭常用的一键开关,只要按一个键,台灯卧室客厅的灯都亮了。虽然他们各有各自的开关,但是对外用一个来控制。应用场景1 为复杂系统 提供简单的接口。2 客户程序与抽象类的实现部分分离。3 构建层次系统时,用作入口。模式结构

2017-05-22 21:42:32 179

原创 【设计模式】—— 装饰模式Decorator

模式意图在不改变原来类的情况下,进行扩展。动态的给对象增加一个业务功能,就功能来说,比生成子类更方便。 应用场景1 在不生成子类的情况下,为对象动态的添加某些操作。2 处理一些可以撤销的职责。3 当不能使用生成子类来扩充时。模式结构Component 外部接口,用于定义外部调用的形式。提供默认的处理方法。interface

2017-05-22 21:34:11 134

原创 【设计模式】—— 组合模式Composite

模式意图使对象组合成树形的结构。使用户对单个对象和组合对象的使用具有一致性。 应用场景1 表示对象的 部分-整体 层次结构2 忽略组合对象与单个对象的不同,统一的使用组合结构中的所有对象。模式结构【安全的组合模式】 这种组合模式,叶子节点,也就是单个对象不具有对象的控制功能。仅仅有简单的业务操作。 1 package com.

2017-05-22 21:26:28 176

原创 【设计模式】—— 桥接模式Bridge

模式意图       这个模式使用的并不多,但是思想确实很普遍。就是要分离抽象部分与实现部分。  实现弱关联,即在运行时才产生依赖关系。  降低代码之间的耦合。模式结构Abstraction 抽象部分的基类,定义抽象部分的基础内容。RefinedAbstraction 抽象部分的扩充,用于对基类的内容补充,添加特定场景的业务操作。

2017-05-16 22:56:17 179

原创 【设计模式】—— 适配器模式Adapter

模式意图 如果已经有了一种类,而需要调用的接口却并不能通过这个类实现。因此,把这个现有的类,经过适配,转换成支持接口的类。 换句话说,就是把一种现有的接口编程另一种可用的接口。 模式结构     【类的适配器】  Target 目标接口 Adaptee 现有的类 Adapter 中间转换的类,即实现了目标接口,又继承了现有的类。

2017-05-16 22:38:19 156

原创 【设计模式】—— 单例模式Singleton

模式意图  保证类仅有一个实例,并且可以供应用程序全局使用。为了保证这一点,就需要这个类自己创建自己的对象,并且对外有公开的调用方法。模式结构Singleton 单例类,内部包含一个本身的对象。并且构造方法时私有的。 使用场景  当类只有一个实例,而且可以从一个固定的访问点访问它时。 代码结构   【饿汉模式】通过定义Stat

2017-05-16 22:18:13 186

原创 【设计模式】—— 创建者模式Builder

模式意图一个对象的创建十分复杂,为了区分构建过程和使用过程,因此分开。使用一个Director类进行对象的创建,Builder规定了这个创建过程。模式结构       Builder 抽象建造者接口,规范各个组成部分的构建。  ConcreteBuilder 具体建造者角色,实现组成部分的构建,并提供示例。  Product 产品角色,创建返

2017-05-16 21:59:22 191

原创 【设计模式】——工厂方法FactoryMethod

模式意图       工厂方法在MVC中应用的很广泛。  工厂方法意在分离产品与创建的两个层次,使用户在一个工厂池中可以选择自己想要使用的产品,而忽略其创建过程。  简单来说,就像一个大型的工厂,对于消费者来说,只需要知道都有什么工厂的产品生产出来,而不需要关心工厂是如何生产产品的。对于工厂来说,必须知道所有的产品的制造方法。模式结构

2017-05-16 21:35:30 188

原创 【设计模式】——抽象工厂Abstract Factory

模式意图  提供对象的使用接口,隐藏对象的创建过程。模式结构AbstractFactory 提供创建对象的接口。ConcreteFactory 提供真正创建对象的实现类,用于组合并创建不同的对象,实现一个产品族。AbstractProduct 提供对象的使用接口。ConcreteProduct 提供真正的适用对象,隐藏该对象的创建过程,是工厂创建的对象。

2017-05-15 23:24:18 207

原创 PHP 多线程

PHP 5.3 以上版本,使用pthreads PHP扩展,可以使PHP真正地支持多线程。多线程在处理重复性的循环任务,能够大大缩短程序执行时间。 我之前的文章中说过,大多数网站的性能瓶颈不在PHP服务器上,因为它可以简单地通过横向增加服务器或CPU核数来轻松应对(对于各种云主机,增加VPS或CPU核数就更方便了,直接以备份镜像增加VPS,连操作系统、环境都不用安装配置),而是在于My

2017-05-13 17:07:07 530

原创 jsp传统标签开发

一、标签技术的API1.1、标签技术的API类继承关系二、标签API简单介绍2.1、JspTag接口  JspTag接口是所有自定义标签的父接口,它是JSP2.0中新定义的一个标记接口,没有任何属性和方法。JspTag接口有Tag和SimpleTag两个直接子接口,JSP2.0以前的版本中只有Tag接口,所以把实现Tag接口的自定义标签也

2017-05-04 22:14:18 242

原创 类名.class, class.forName(), getClass()区别

1: Class cl=A.class;                    JVM将使用类A的类装载器, 将类A装入内存(前提是:类A还没有装入内存),不对类A做类的初始化工作.返回类A的Class的对象。2:Class cl=对象引用o.getClass();                  返回引用o运行时真正所指的对象(因为:子对象的引用可能会赋给父对象的引用变

2017-05-03 23:19:40 231

原创 jsp自定义标签开发入门

一、自定义标签的作用  自定义标签主要用于移除Jsp页面中的java代码。二、自定义标签开发和使用2.1、自定义标签开发步骤   1、编写一个实现Tag接口的Java类(标签处理器类) 1 package me.gacl.web.tag; 2 3 import java.io.IOException; 4 5 import javax.ser

2017-05-03 23:00:46 219

原创 DWR3.0(3)ScriptSession的维护及优化

1.ScriptSession使用中存在的问题  在上一节实现了服务器的推送功能,但是根据 ScriptSession的生命周期我们可以得出以下几点的问题:(1)ScriptSession不会与HttpSession同时创建当我们访问一个页面的时候,如果是第一次访问,就会创建一个新的HttpSession,之后再访问的时候,就会保持当前的Session,即使是刷新,也能保持当前

2017-05-03 22:48:51 327

原创 DWR3.0(2)

服务器推送技术和DWR的推送方式传统模式的 Web 系统以客户端发出请求、服务器端响应的方式工作,服务端不能主动发送请求(消息)给客户端。这种方式并不能满足很多现实应用的需求,譬如:        监控系统:后台硬件热插拔、LED、温度、电压发生变化;        即时通信系统:其它用户登录、发送信息;        即时报价系统:后台数据库内容发生变化;  

2017-05-03 19:45:43 241

原创 DWR3.0(1)

框架简介:DWR(Direct Web Remoting)     是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样。本Demo实现的基本功能:点击jsp界面的按钮,通过DWR调用到服务器端的java代码,在控制台打印出js

2017-05-03 19:13:14 190

原创 ConvertUtils

org.apache.commons.beanutils.ConvertUtils这个类的使用介绍,这个工具类的职能是在字符串和指定类型的实例之间进行转换。 目前支持的类型有: java.lang.BigDecimal java.lang.BigInteger boolean and java.lang.Boolean byte and java.lang.Byte cha

2017-05-03 01:43:18 1070

原创 BeanUtils

一、简介:   BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们知道,一个JavaBean通常包含了大量的属性,很多情况下,对JavaBean的处理导致大量get/set代码堆积,增加了代码长度和阅读代码的难度。二、用法:   BeanUtils是这个包里比较常用的一个工具类,这里只介绍它的copyPropert

2017-05-03 01:17:45 202

原创 基于Servlet+JSP+JavaBean开发模式的用户登录注册

一、Servlet+JSP+JavaBean开发模式(MVC)介绍  Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负责数据显示,javabean负责封装数据。 Servlet+JSP+JavaBean模式程序各个模块之间层次清晰,web开发推荐采用此种模式。  这里以一个最常用的用户登录注册程序

2017-05-03 00:14:54 326

原创 JavaWeb的两种开发模式

SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式。一、JSP+JavaBean开发模式1.1、jsp+javabean开发模式架构  jsp+javabean开发模式的架构图如下图(图1-1)所示图1-1    在jsp+javabea

2017-05-02 23:26:49 251

原创 JavaBean

一、什么是JavaBean  JavaBean是一个遵循特定写法的Java类,它通常具有如下特点:这个Java类必须具有一个无参的构造函数属性必须私有化。私有化的属性必须通过public类型的方法暴露给其它程序,并且方法的命名也必须遵守一定的命名规范。JavaBean范例: 1 package gacl.javabean.study; 2 3 /** 4

2017-05-02 23:07:35 147

原创 JSP标签

一、JSP标签介绍  JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护。二、JSP常用标签  jsp的常用标签有以下三个标签  标签  标签2.1、标签   标签用于把另外一个资源的输出内容插入进当前JSP页面的输出内容之中,这种在JSP页面

2017-05-02 21:25:52 181

原创 JSP属性范围

所谓的属性范围就是一个属性设置之后,可以经过多少个其他页面后仍然可以访问的保存范围。一、JSP属性范围  JSP中提供了四种属性范围,四种属性范围分别指以下四种:当前页:一个属性只能在一个页面中取得,跳转到其他页面无法取得一次服务器请求:一个页面中设置的属性,只要经过了服务器跳转,则跳转之后的页面可以继续取得。一次会话:一个用户设置的内容,只要是与此用户相关的页面都可以访问

2017-05-02 21:04:52 199

原创 JSP中的九个内置对象

一、JSP运行原理  每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的调用方式进行调用。  由于JSP第一次访问时会翻译成servlet,所以第一次访问通常会比较慢,但第二次访问,JSP引擎如果发现JSP没有变化,就不再翻译,

2017-05-02 20:44:34 327

原创 JSP基础语法

任何语言都有自己的语法,JAVA中有,JSP虽然是在JAVA上的一种应用,但是依然有其自己扩充的语法,而且在JSP中,所有的JAVA语句都可以使用。一、JSP模版元素  JSP页面中的HTML内容称之为JSP模版元素。   JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观。二、JSP表达式  JSP脚本表达式(expression)用于将程序数据输出

2017-05-02 20:01:47 188

原创 JSP原理

一、什么是JSP?  JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。  JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。二、JSP原理2.1、Web服务器是如何调用并执

2017-05-02 19:11:42 176

原创 java Session防止表单重复提交

在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提交按钮重复提交表单,我们在开发中必须防止表单重复提交。一、表单重复提交的常见应用场景有如下的form.jsp页面 2 3 4 5 Form表单 6 7 8 9 10

2017-05-02 18:57:08 224

原创 java Session

一、Session简单介绍  在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下)。因此,在需要保存用户数据时,服务器程序可以把用户数据写到用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。二、Session和Coo

2017-05-02 18:42:18 380

原创 java Cookie进行会话管理

一、会话的概念  会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。  有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学曾经来过,这称之为有状态会话。二、会话过程中要解决的一些问题?  每个用户在使用浏览器与服务器进行会话的过程中,不可避免各自会产生一些数据,程序要想办法为每个用户保存这些数据

2017-05-02 18:36:50 214

空空如也

空空如也

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

TA关注的人

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