最近空闲看了下JSP/Servlet,以前只知道用JSP,但是对其运行原理知之甚少,今在此做些笔记,以备查阅。首先简要描述下其运行过程,然后结合Tomcat源码作简要分析。JSP运行过程:第一步:将JSP文件翻译成servlet源代码;第二步:将servlet源代码编译成字节码文件;第三步:载入字节码并实例化和初始化;第四步:调用service方法提供服务;源码简要分析如下:1、源码中涉及到的几个重要文件JspServlet.java、JspServlet
系统 2019-08-12 01:32:21 3454
1、首先在局域网的电脑上新建一个数据库,主机名要写成ip地址如:192.168.0.10(如果是计算机名将不能进行访问)2、然后登录路由将外网的1521端口映射到10电脑上的1521端口(高级设置-虚拟服务器设置端口)3、修改10电脑上的注册表hkey_local_machine-software-oracle-home0,新建一个“字符串值”,命名为USE_SHARED_SOCKET,值为true.外网访问局域网内的oracle数据库
系统 2019-08-12 01:53:06 3453
Windows自带的图画工具存放的位置C:\WINDOWS\system32\mspaint.exe“域”的配置文件存放的位置C:\WINDOWS\system32\drivers\etc\hosts文件如何在右键新建菜单中添加内容1、输入命令regedit进入注册表,进入HKEY_CLASSES_ROOT目录(能看到windows所有的文件类型)2、找到自己想要添加的文件类型(这里我以添加bmp文件为例)的文件夹3、在ShellNew文件夹中新建一个“字
系统 2019-08-29 22:01:36 3452
文章来源:http://blog.csdn.net/zhengzhb/article/details/7405608定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。类型:行为类模式类图:事实上,模版方法是编程中一个经常用到的模式。先来看一个例子,某日,程序员A拿到一个任务:给定一个整数数组,把数组中的数由小到大排序,然后把排序之后的结果打印出来。经过分析之后,这个任务大体上可分为两部分
系统 2019-08-12 09:29:58 3452
刚刚看到一篇国外讨论CSSsprites利弊的文章,作者认为那是潜在的危险,在文中也指出了他的很多观点,这个技术我用的时间不长,不过到也还是有一些体会的,在这里也说一说自己的理解吧。所谓CSSsprites就是把很多张小的背景图集中在一张大图上,然后通过定义background-position来调用不同位置的背景图。这个技术最大的优点就是减少了HTTP请求,另外就是减小了图片的大小,节省带宽。这就是google的一张CSSsprites:googlecs
系统 2019-08-12 09:29:54 3452
Redis的一个非常大优点就是能够不用整个转入到这个数据库,而是能够沿用之前的MySQL等数据库,而仅在一些特定的应用场景通过Redis的特性提高效率。本文列出了11个这种Web应用场景,如显示最新的项目列表、删除和过滤、排行榜等相关需求。【51CTO精选译文】在“怎样让Redis在你的系统中发挥作用”一文中,Salvatore'antirez’Sanfilippo告诉我们怎样利用Redis独有的数据结构处理能力来解决一些常见问题。一些Redis原语命令比
系统 2019-08-12 01:53:02 3452
原文:NSIS操作系统环境变量手头有个项目需要修改PATH变量需要!include"EnvVarUpdate.nsh"以下是NSIS脚本代码;ScriptgeneratedbytheHMNISEditScriptWizard.!include"StrFunc.nsh";HMNISEditWizardhelperdefines!definePRODUCT_NAME"Setup_Wintech"!definePRODUCT_VERSION"2.0"!defin
系统 2019-08-12 01:32:15 3452
计算101-200中有多少个素数,并输出总数思路:1.定义一个函数sushu(i)判断i是否为素数。2.在函数sushu()中,j遍历2到i-1之间的所有数,判断是否有j能整除i,若有,则i不是素数,返回False.若无,那么i是素数,返回True3.定义num来统计素数个数4.遍历101到200之间的数,判断中间有多少个素数。5.结果图如下,输出21个素数defsushu(i):forjinlist(range(2,i)):ifi%j==0:return
系统 2019-09-27 17:50:02 3451
使用context_info传递上下文信息禁用会话级触发器摘要:如何在会话级别禁用触发器是个问题,因为sqlserver并没有提供一个管理手段可以在会话级禁用触发器,它只提供altertable表名disabletrigger触发器名类似这种,而这种方法一旦执行,那如果在同一时间的其他过程,也不会执行触发器。但是我们可以巧妙绕道使用context_info来让触发器支持会话级别的禁用。新建触发器[代码]如果要在会话级禁用触发器,只需...阅读全文poste
系统 2019-08-12 01:54:35 3451
假设你使用的是Fedora,RedHat,CentOS,或者ScientificLinux系统,使用以下的命令安装GNU的C/C++开发包和编译器。#yumgroupinstall'DevelopmentTools'假设你使用的是Debian或者UbuntuLinux系统,你能够使用以下的这个命令来安装C/C++编译器。#sudoapt-getupdate#sudoapt-getinstallbuild-essentialmanpages-dev在Linu
系统 2019-08-12 01:33:45 3451