将应用部署到Tomcat根目录的目的是可以通过“http://[ip]:[port]”直接访问应用,而不是使用“http://[ip]:[port]/[appName]”上下文路径进行访问。方法一:(最简单直接的方法)删除原webapps/ROOT目录下的所有文件,将应用下的所有文件和文件夹复制到ROOT文件夹下。方法二:删除原webapps/ROOT目录下的所有文件,修改文件“conf/server.xml”,在Host节点下增加如下Context的内容
系统 2019-08-12 01:33:33 2564
本文接下来描述servlet容器是怎样管理其相关组件的生命周期的,首先本人描述一下事件监听模式,也可以称为观察者模式,该模式分为以下角色即抽象主题角色具体主题角色抽象观察者角色及具体观察者角色,通常在主题角色里面维持一个观察者角色的聚集,并定义了对观察者角色的添加和删除方法;在主题角色事件发生时,通过迭代向这些观察者角色发布事件。在tomcat容器中,管理其相关组件的生命周期即是基于事件监听模式实现的,相关接口和类为org.apache.catalina.
系统 2019-08-12 01:33:20 2564
Varnish是一款高性能的开源HTTP加速器,挪威最大的在线报纸VerdensGang(vg.no)使用3台Varnish代替了原来的12台squid,性能比以前更好。Varnish的作者Poul-HenningKamp是FreeBSD的内核开发者之一,他认为现在的计算机比起1975年已经复杂许多。在1975年时,储存媒介只有两种:内存与硬盘。但现在计算机系统的内存除了主存外,还包括了cpu内的L1、L2,甚至有L3快取。硬盘上也有自己的快取装置,因此s
系统 2019-08-12 01:32:34 2564
昨天有个需求,要获取服务器某个目录下的某些类型的文件,考虑到服务器即有Linux、又有Windows,所以写了一个Python小程序来完成这项工作。Linux服务器有CentOS、Fedora等,都预先安装了Python,版本从2.4到2.5不等,而Windows类型的服务器也多数安装了Python,因此只要在本机写好一个脚本,上传到对应机器,在运行时修改参数即可。Python操作文件和文件夹使用的是os库,下面的代码中主要用到了几个函数:os.listd
系统 2019-08-12 01:32:19 2564
内置属性和方法方法名类型-作用__init__方法类实例化时自动调用这个函数__del__方法对象被内存中销毁前,会被自动调用__str__方法类的实例打印时调用这个函数(返回)用户看到的__repr__方法和上面的str函数一样,只是这个时返回开发者看到的__getattr__方法当调用不存在的属性时访问这个方法__call__方法如果类实现了这个方法,相当于把这个类型的对象当作函数来使用,相当于重载了括号运算符具体参考Python3标准库生命周期一个对
系统 2019-09-27 17:56:35 2563
python求众数LeetCodeN0.169这道题有很多解法官方leetcode上面是六种,由于说的太过于详细,我都不好意思,再补充什么了。所以我就写了一点,没看答案之前的写法,和我觉得,需要掌握的写法吧。他写的很多代码很精简,值得学习。(ps,纳闷的是,即使我用的O(n)的复杂度,排名也很靠后哈哈哈哈哈)classSolution(object):defmajorityElement(self,nums):""":typenums:List[int]:
系统 2019-09-27 17:55:42 2563
n叉数的前序遍历classSolution:defpreorder(self,root:'Node')->List[int]:order=[]ifroot!=None:order.append(root.val)foriinrange(len(root.children)):node=root.children[i]order+=self.preorder(node)returnorder类中的函数递归调用,要使用self.preorder()调用
系统 2019-09-27 17:55:12 2563
matplotlib图例中文乱码以及坐标负号显示在图片的标签名,标题名或者图例中出现中文时,直接运行会出现乱码,文字显示为框框importmatplotlib.pyplotaspltplt.figure()plt.title("哈哈")plt.show()快速解决办法在导入模块后加入下面代码plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签plt.rcParams['axes.unicode_minu
系统 2019-09-27 17:52:29 2563
#导入扩展库importre#正则表达式库importcollections#词频统计库importnumpyasnp#numpy数据处理库importjieba#结巴分词importwordcloud#词云展示库fromPILimportImage#图像处理库importmatplotlib.pyplotasplt#图像展示库#读取文件fn=open('c.csv')#打开文件string_data=fn.read()#读出整个文件fn.close()#
系统 2019-09-27 17:52:07 2563
Python的装饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟DesignPattern里的Decorator搞混了,其实这是完全不同的两个东西。虽然好像,他们要干的事都很相似――都是想要对一个已有的模块做一些“修饰工作”,所谓修饰工作就是想给现有的模块加上一些小装饰(一些小功能,这些小功能可能好多模块都会用到),但又不让这个小装饰(小功能)侵入到原有的模块中的代码里去。但是OO的Decorator简直就是一场恶梦,不信你就去看
系统 2019-09-27 17:52:03 2563