初次使用Servlet-JSP笔记-1
一、环境 Eclipse Java EE IDE for Web Developers. Version: Mars.1 Release (4.5.1) Apache Tomcat version: 8.0.39 二、课堂学习目标了解servlet的虚拟路径使用方法,这里具体讲解使用Eclipse的servlet3.0之前的版本(使用servlet2.5版本)中关于WebContent/WEB-INF/web.xml的使用方法以及servlet3.0及之后的版本的虚拟路径使用方法。 三、开始3.1、测试一:利用servlet3.0之前的版本进行测试利用Eclipse新建一个Dynamin Web Project,调用安装的Apache Tomcat V8.0版本,然后选择2.5的servlet版本,该IDE会自动新建一个WebContent/WEB-INF/web.xml文件。 之后我们新建两个servlet,一个直接全部使用默认设置,另一个我们点击下一步后不使用默认自带的doPost()和doGet()方法。 新建一个index.j...
理解Servlet的init()、service()与destroy()-JSP笔记-2
环境 Eclipse Java EE IDE for Web Developers. Version: Mars.1 Release (4.5.1) Apache Tomcat version: 8.0.39 课堂学习目标实践servlet的init()、service()与destroy()方法,理解servlet生命周期的三个阶段。 开始我们还是新建一个名为Test的新工程,然后新建一个不带doGet()与doPost()方法的一个基本的servlet,然后我们依次循规蹈矩的手动覆盖重写三个方法,他们分别是init()、service()和destroy()方法,重写后截图如下: 我们在浏览器地址栏中输入进入Servlet_1的虚拟路径后,控制台下便出现了,调用init()方法的输出信息,然后调用了service()方法的输出信息,这两个方法的调用就是servlet的前两个生命周期,初始化阶段,调用init()方法;响应客户请求阶段,调用service()方法,之后每次刷新浏览器界面会发现只出现调用service()方法的输出结果,如下所示: 提示: 如果你发现你打...
Servlet API-JSP笔记-3
一、环境 Eclipse Java EE IDE for Web Developers. Version: Neon.1a Release (4.6.1) Apache Tomcat version: 8.0.39 二、总结知识点2.1、认识Servlet API:Servlet API 由两个软件包组成:Javax.servlet 包和 Javax.servlet.http 包。其中 Javax.servlet 包主要存放与 http 协议无关的一般性的 servlet 类, Javax.servlet.http 包主要存放与 http 协议相关的功能的类。(两个软件包都位于Tomcat的 servlet-api.jar 中) 2.2、本次主要说明的东西如下: Javax.servlet.http包中的接口: HttpServletRequest接口:提供http请求信息。 HttpServletResponse接口:提供http响应。 Javax.servlet包中的接口: ServletConfig接口:在初始化的过程中由Servlet容器使用。 ServletCo...
Servlet课后作业-JSP作业-1
作业要求: 编写一个Serlvet以便显示该Servlet被访问的次数。 编写一个Servlet程序,在doGet方法中显示一个Form表单,用户可以输入姓名和电子邮件地址,用户提交该表单后,doPost方法动态读出请求参数,并输出这些参数。提示:使用request对象的getParameterNames()方法。 描述Serlvet的生命周期。 实现Servlet有几种方法,每种方法都有哪些特点。 如何配置Serlvet。 开始作业 作业 1:点此查看要求 仅贴出Servlet的主体代码如下: @WebServlet("/Servlet_1")public class Servlet_1 extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public Servlet_1() { super(); // TODO...
Memcached的内存分配机制
一、基本概念 Slab Class:由相同大小的Chunk组成,不同的Slab Class中的Chunk大小不同; Page:分配给单个Slab的内存大小,默认为1MB,分配给Slab之后依据Slab的大小拆分为Chunk; Chunk:将每一个Slab按照不同大小进行拆分,得到了不同大小的Chunk(每个Slab中的Chunk大小一致),Chunk的初始大小可以指定,并且可以根据不同的业务场景通过调整增长因子(factor:默认为1.25)进行调优; 二、存储过程Memcached根据收到数据的大小,选择最合适数据大小的Slab Class,根据Memcached中保存的该Slab Class中空闲的Chunk列表,将将数据存储于其中。 三、相关链接 [The Slab Allocator: An Object-Caching Kernel Memory Allocator](
GiB与GB等单位的转换问题
一、两个标准 十进制标准:由国际单位制(SI)指定; 1999年,国际电工委员会(IEC)公布了修正2:”IEC 60027-2:电工技术应用的字母符号 — 第二部分:通信和电子。”,这个标准,在1998年通过,介绍了词头”kibi-“、”mebi-“、”gibi-“、”tebi-“、”pebi-“、”exbi-“,作为二进制乘幂的计数方法。 二进制标准:由国际电工委员会(IEC)指定; 十进制标准单位换算(其中KB是kilobyte的缩写,指的是千字节) 1KB = 1000Byte1MB = 1000KB1GB = 1000MB1TB = 1000GB 二进制标准单位换算(其中KiB是kilo binary byte的缩写,指的是千位二进制字节) 1KiB = 1024Byte1MiB = 1024KiB1GiB = 1024MiB1TiB = 1024GiB 二、磁盘容量问题 硬盘制造商使用十进制标准; 电脑软件使用二进制标准; 三、大B与小b因为在网络传输的时候,我们传输的实际上是一个个二进制数,可以俗称为比特流,传输二进制数的时候不需要管这是什么字,使用...
Markdown语法大全
一、欢迎使用Markdown@(示例笔记本)[Markdown|帮助|Markdown] 功能丰富 :支持高亮代码块、LaTeX 公式、流程图,本地图片以及附件上传,甚至截图粘贴,工作学习好帮手; 得心应手 :简洁高效的编辑器,提供[桌面客户端][1]以及[离线Chrome App][2],支持移动端 Web; 深度整合 :支持选择笔记本和添加标签,支持从印象笔记跳转编辑,轻松管理。 二、Markdown简介 Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成格式丰富的HTML页面。 —— 维基百科 正如您在阅读的这份文档,它使用简单的符号标识不同的标题,将某些文字标记为粗体或者斜体,创建一个链接或一个脚注[^demo]。下面列举了几个高级功能,更多语法请按Ctrl + /查看帮助。 2.1、代码块@requires_authorizationdef somefunc(param1='', param2=0): '''A docstring''...
基于SS-Panel V2的SS面板式管理系统
一、说明本人之前接触过Shadowsocks这个软件,感觉其实是挺好用的,因为这款软件最初的着力点是便捷的连接,通信的速度,所以使用起来的感受相比之前使用的VPN还是好了太多太多。如果是针对于像我一样有些固执的人来说,我是绝对会为了个人的方便以及使用的稳定性而购置一台服务器并进行搭建Shadowsocks服务器的,但是针对于那些Shadowsocks服务商来说,租赁出去的服务器的限制条件无非是使用时间以及使用流量。因此,针对于限制流量这一方面的话,Shadowsocks自身就无法做到了,这也是本文的初衷,可视化的界面管理工具的出现以及流量监控等功能的出现也会减少维护的繁琐程度,OK,进入正文。 注:这里所说的前端与后端是指用户看到的部分以及用户看不到的部分,看到的部分就是SS-Panel V2的界面(即前端),看不到的部分就是运行在后面的Shadowsocks等部分(即后端)。 二、正文 1. ShadowsocksR多用户版服务端安装教程(后端) 2.1、 安装基本库: CentOS系统: yum install python-setuptoolseasy_install pi...
PHP与正则爬虫实践
一、前言之前听说过我们学校有一个学生信息的接口,最近这几天闲来无事,打算用PHP做一个爬虫,爬一下数据。由于我对数据的情有独钟,因此,弄完后打算写个文章记录下我的过程,也算是温习一下(这其中有个小插曲:本来我都写完了,可是因手贱原因,重新安装系统了,又手贱把D盘的一些软件全删了,重新安了一遍,结果把写好的爬虫文件删除了。。。。。。尝试用Recuva软件恢复,可是还是没恢复成功,没办法了,周六中午10点又写了一遍,两个小时吧,才弄好。。。真是累呀~~~~~)。推荐几个关于正则表达式的链接:正则表达式在线工具 —-正则表达式速查表—-下载正则表达式CHM 二、正文这里只用PHP写了爬虫,毕竟其他的我也不会。考虑到需要使用正则,因此我又去温习了一遍正则,网上有很多正则学习的地方,这里就不举例了。因为我是爬的校园内的接口,因此我会隐去网址的一部分。 首先需要获取目标网址,下面 $url 为目标地址,$num 为学号,这个接口是使用学号查询的,因此把学号弄成变量。 $html=file_get_contents($url.$num);$html=str_replace(array(&quo...
Shadowsocks一键安装脚本
一、Shadowsocks介绍Shadowsocks(中文名称:影梭)是使用Python等语言开发的、基于Apache许可证开源的代理软件。Shadowsocks使用socks5代理,用于保护网络流量。Shadowsocks分为服务器端和客户端。在使用之前,需要先将服务器端部署在支持Python等的服务器上面,然后通过客户端连接并创建本地代理。此外用户也可以选择购买基于Shadowsocks的商业服务,以获得更加稳定可靠的服务,或者免去自行部署的麻烦。目前开发者Clowwindy由于一些原因已宣布停止维护,shadowsocksR 的作者已表示会继续开发新版本。 对于想要使用SS的用户来说,相比在网路上买一些月供几十的SS服务商的出售的SS账户,自己倒不如买个便宜点的VPS自己构建一个SS服务器,为防止VPS资源过剩,自己也可以干点别的事情,这里给出了使用三种语言搭建SS服务器的一键安装脚本,供大家使用。 二、Python一键脚本 适用条件:系统为CentOS 6,7,Debian,Ubuntu 、内存≥128M 配置:服务器端口默认为8585 ,客户端端口为1080 ,密码默...

