JAVA-EE
huizhang.
EasySwoole开发组成员
展开
-
mac下安装tomcat并配置Myeclipse过程
步骤 1.首先http://tomcat.apache.org下载mac版tomcat。解压到/Library,将文件夹改名为Tomcat。 2.解压之后在conf文件下tomcat-users.xml添加用户名和密码 (这个在启动tomcat的页面需要登录) 3.打开命令行,cd /Library/Tomcat/bin 进入文件夹 sudo sh startu...原创 2017-11-10 00:08:18 · 2764 阅读 · 1 评论 -
命令链模式
简介 命令链 模式以松散耦合主题为基础,发送消息、命令和请求,或通过一组处理程序发送任意内容。每个处理程序都会自行判断自己能否处理请求。如果可以,该请求被处理,进程停止。您可以为系统添加或移除处理程序,而不影响其他处理程序。代码<?phpinterface ICommand{ function onCommand( $name, $args );}class CommandChain原创 2017-12-14 16:21:33 · 496 阅读 · 0 评论 -
策略模式
简介 策略模式,将一组特定的行为和算法封装成类,以适应某些特定的上下文环境。 eg:假如有一个电商网站系统,针对男性女性用户要各自跳转到不同的商品类目,并且所有的广告位展示不同的广告。在传统的代码中,都是在系统中加入各种if else的判断,硬编码的方式。如果有一天增加了一种用户,就需要改写代码。使用策略模式,如果新增加一种用户类型,只需要增加一种策略就可以。其他所有的地方只需要使用不同原创 2017-12-14 17:03:30 · 179 阅读 · 0 评论 -
注册模式
简介 注册模式,解决全局共享和交换对象。已经创建好的对象,挂在到某个全局可以使用的数组上,在需要使用的时候,直接从该数组上获取即可。将对象注册到全局的树上。任何地方直接去访问。代码<?phpclass Register{ protected static $objects; function set($alias,$object)//将对象注册到全局的树上 {原创 2017-12-14 17:27:23 · 511 阅读 · 0 评论 -
适配器模式
简介 将各种截然不同的函数接口封装成统一的API。 PHP中的数据库操作有MySQL,MySQLi,PDO三种,可以用适配器模式统一成一致,使不同的数据库操作,统一成一样的API。类似的场景还有cache适配器,可以将memcache,redis,file,apc等不同的缓存函数,统一成一致。 首先定义一个接口(有几个方法,以及相应的参数)。然后,有几种不同的情况,就写几个类实现原创 2017-12-14 17:31:16 · 206 阅读 · 0 评论 -
原型模式
简介 原型模式(对象克隆以避免创建对象时的消耗) 1:与工厂模式类似,都是用来创建对象。 2:与工厂模式的实现不同,原型模式是先创建好一个原型对象,然后通过clone原型对象来创建新的对象。这样就免去了类创建时重复的初始化操作。 3:原型模式适用于大对象的创建,创建一个大对象需要很大的开销,如果每次new就会消耗很大,原型模式仅需要内存拷贝即可。Canvas.php<原创 2017-12-14 17:36:36 · 206 阅读 · 0 评论 -
编译一个java源程序文件,会产生多少个字节码文件
一般情况下一个Java文件代表一个类,在编译时会产生一个字节码.class文件。 但是在Java中 一个源文件中可以包含多个类,但是只能有一个public类,其他的都成为内部类,这时编译时会生成多个字节码文件。一个是那个public类也是该源文件名对应的.class 另一个就是public类名$内部类名.class 取决于你的java源文件中有几个类,在一个源文件中你用class关键字定原创 2017-12-24 20:01:33 · 15037 阅读 · 0 评论 -
异或运算实现两个数的交换
通常的交换两个变量a,b的过程为int temp;temp=aa=b;b=temp;需借助上面的第3个临时变量temp.采用下面的方法,对于给定两个整数a,b,下面的异或运算可以实现a,b的交换,而无需借助第3个临时变量: a = a ^ b; b = a ^ b; a = a ^ b;这个交换两个变量而无需借助第3个临时变量过程,其实现主要是基于异或运算的如下性原创 2017-12-24 20:28:09 · 451 阅读 · 0 评论 -
类变量与实例变量
实例变量 实例变量声明在一个类中,但在方法、构造方法和语句块之外; 当一个对象被实例化之后,每个实例变量的值就跟着确定; 实例变量在对象创建的时候创建,在对象被销毁的时候销毁; 实例变量的值应该至少被一个方法、构造方法或者语句块引用,使得外部能够通过这些方式获取实例变量信息; 实例变量对于类中的方法、构造方法或者语句块是可见的。一般情况下应该把实例变量设为私有。通过使用访原创 2017-12-24 21:23:25 · 323 阅读 · 0 评论 -
数据库存时间戳的好处
第一个问题,时间戳不含时区,绝对时间,存的是标准时不受服务器所在时区的影响 第二个问题,时间戳的好处: 0、无时区干扰 1、存储空间小一个数字比一个字符串占用空间小得多 2、检索效率高 3、计算方便 第三个问题,计算出需要检索的时间戳,然后比较。如果存的是字符串,根本无法比较。转载 2017-12-15 22:46:55 · 4008 阅读 · 0 评论 -
jsp请求servlet地址时返回的中文为乱码时
简介 当jsp请求servlet地址时放回的中文为乱码,首先我数据库中的编码格式为utf-8,包括jsp,myeclipse,servlet,都设置了这个编码,菜鸟小编最终百度到解决办法,直接上代码。jsppackage application.admin.servlet.cate;import java.io.*;import javax.servlet.*;i...原创 2017-12-16 00:31:21 · 339 阅读 · 0 评论 -
解决 Eclipse 项目有红感叹号的方法
原因:显示红色感叹号是因为jar包的路径不对 解决:在项目上右击Build Path -> Configure Build Paht…(或Propertise->Java Build Path),在Java Build Path中Libraries,红色叉号的包为路径错误的包。 处理好后返回刷新工程即可,这个问题一般是导入别人的项目或之前的一些JAR包移动了它的存储位置。 PS:原创 2017-12-30 19:46:34 · 298 阅读 · 0 评论 -
mac Myeclipse更改黑色主题
查看效果下载主题并配置https://download.csdn.net/download/qq_34908844/10277455 将主题包jar放到Eclipse/Myeclipse安装目录的dropins子目录下,并且如图 完成之后基本就配置好了。出现的小问题这时有的地方会有小白框,和一些小细节的颜色需要改变 这里进行改变...原创 2018-03-09 13:04:07 · 1485 阅读 · 0 评论 -
观察者模式
简介 观察者模式为您提供了避免组件之间紧密耦合的另一种方法。该模式非常简单:一个对象通过添加一个方法(该方法允许另一个对象,即观察者 注册自己)使本身变得可观察。当可观察的对象更改时,它会将消息发送到已注册的观察者。这些观察者使用该信息执行的操作与可观察的对象无关。结果是对象可以相互对话,而不必了解原因。代码<?phpinterface IObserver{ function onCh原创 2017-12-14 16:08:11 · 157 阅读 · 0 评论 -
Java中PreparedStatement和Statement的用法区别
1、 PreparedStatement接口继承Statement, PreparedStatement 实例包含已编译的 SQL 语句,所以其执行速度要快于 Statement 对象。2、作为 Statement 的子类,PreparedStatement 继承了 Statement 的所有功能。三种方法 execute、 executeQuery 和 executeUpdat...转载 2017-11-26 19:04:54 · 8163 阅读 · 0 评论 -
pageEncoding和charset有什么区别
pageEncoding是jsp文件本身的编码contentType的charset是指服务器发送给客户端时的内容编码JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页, 用的是contentType。第一阶段是jsp编译成.java,它会根据pageEncoding的设定读取jsp,结果是由指定的编码方案转载 2017-11-22 10:26:50 · 766 阅读 · 0 评论 -
myeclipse在web-inf下为什么找不到classes目录
一般我们看的package explorer,利于我们开发的视角。 你可以这样 windows–>show view–>other..–>general–>Navigator 用这个视角来看,就可以看到你想要的classes目录了原创 2017-11-22 23:44:28 · 1348 阅读 · 0 评论 -
PHP__set和__get魔术方法
简介php和java重载的对比 php的重载和java等语言的重载不同。java里,重载指一个类中可以定义参数列表不同。java里,重载只一个类中可以定义参数列表不同但名字相同的多个方法。比如,java、也有构造函数,java允许有多个构造函数,只要保证方法签名不一样就行,而PHP则在一个类中只允许有一个构造函数php重载 php提供的重载指动态的创建类属性和方法。因此,__set和__g原创 2017-12-19 23:40:18 · 1034 阅读 · 0 评论 -
orm模型思想
简介 引用块内容对象关系映射(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。 广义上,ORM指的是面向对象的对象模型和关系型数据库的数据结构之间的相互转换。 狭义上,ORM可以被认为是,基于转载 2017-12-19 23:51:58 · 436 阅读 · 0 评论 -
PHP中Trait详解及其应用
简介 从PHP的5.4.0版本开始,PHP提供了一种全新的代码复用的概念,那就是Trait。Trait其字面意思是”特性”、”特点”,我们可以理解为,使用Trait关键字,可以为PHP中的类添加新的特性。 熟悉面向对象的都知道,软件开发中常用的代码复用有继承和多态两种方式。在PHP中,只能实现单继承。而Trait则避免了这点。下面通过简单的额例子来进行对比说明。1. 继承 VS 多态 V转载 2017-12-20 11:52:46 · 454 阅读 · 0 评论 -
表达式语言EL(Expression Language)
为什么要使用ELJSP2.0之后不建议使用 JSP表达式和JSP脚本片段,建议使用EL代替JSP表达式,使用JSTL代替JSP脚本片段EL简介 全称:Expression Language,翻译过来叫表达式语言 格式:${表达式} EL表达式主要用来将域对象中的属性输出到页面 EL表达式默认是全域查找 先从page域中查找,找到后直接返回,找不到再去request域中找,...转载 2017-12-11 17:11:13 · 575 阅读 · 0 评论 -
java 中的e和e.printStackTrace()方法
e 初始化,也就是实例化Exception类型的对象,e是此对象引用名称。然后e(引用)会自动调用Exception类中指定的方法,也就出现了e.printStackTrace()。当然,我们也可以用System语句输出,那么这两个语句有什么区别呢? 1、两个输出语句都能输出,System语句可以提示你异常发生的位置;但e.printStackTrace()可以显示更深的调用关系。例如:转载 2017-11-23 21:27:46 · 2488 阅读 · 0 评论 -
myeclipse web project如何导入jar包
简介 刚开始学的时候实在搞不懂jar包到底是个什么东西,其实它只是写好的一些功能包,让我们这些低级程序员,引入直接使用的包。 包下载: https://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.json%22%20AND%20a%3A%22json%22步骤一步骤二步骤三注意: 然...原创 2017-12-12 08:18:26 · 2068 阅读 · 0 评论 -
java中jdbc查询出来的数据转为json数组
org.json jar包下载地址点击跳转代码实例package common.api;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.SQLException;import org.json.JSONArray;import org.json.JSONEx...原创 2017-12-12 08:24:28 · 2190 阅读 · 0 评论 -
Myeclipse2017实例关于servlet的@WebServlet注解。
目录结构Servlet@WebServlet注解用于标注在一个继承了HttpServlet类之上,属于类级别的注解。 用法形如: @WebServlet(“/DisplayHeader1”)package tuzi.com;import java.io.IOException;import java.io.PrintWriter;import javax.ser...原创 2017-11-24 13:05:20 · 4398 阅读 · 0 评论 -
Web.xml如果要是多个servlet写法?
<servlet> <servlet-name>riinly</servlet-name> <servlet-class>ly.RequestInfo</servlet-class></servlet> <servlet> <servlet-name>原创 2017-11-24 13:16:26 · 3430 阅读 · 3 评论 -
微信客服消息时间限制
微信接口原文是这么说地:当用户和公众号产生特定动作的交互时(具体动作列表请见下方说明),微信将会把消息数据推送给开发者,开发者可以在一段时间内(目前修改为48小时)调用客服接口,通过POST一个JSON数据包来发送消息给普通用户。 所以呢就出现48小时后发不了给客户了。 解决方法:你要找到一个方法引导客户给你的公众号发信息,这样就可以又在这48内给客户发信息了。 一些公众号做法,利用原创 2017-12-21 14:20:31 · 6887 阅读 · 0 评论 -
关于JAVA的JDBC如何获取查询的记录条数
直接看代码,三种方法:import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import com.mysql.jdbc.Statement; public class MySQLDao { public static void main(Str...转载 2018-04-23 22:38:15 · 6604 阅读 · 0 评论