返回
摘要: tomcat的提供了一个非常方便的manager系统,可以远程上传war项目,运行项目,但是这也是一个非常危险的地方,我曾经开发过一块B/S架构的小系统,提供了本地文件扫描,文件浏览,扫描等功能,并且成功登陆同事的tomcat的manager系统(获得允许的情况下),上传自己的项目,并且下载和上传文件都可以,如果我再添加一个运行远程dos命令,执行上传的文件,简直可以在为所以为。解决方法:删除webapps下的manager,找到conf文件下的tomcat-users.xml文件,打开并且删除多余的,修改默认密码。 阅读全文
posted @ 2013-06-22 07:52 feige_hunter 阅读(246) 评论(0) 推荐(0)
摘要: 我们在使用ssh框架的时候,很多人抱怨为什么之前都运行得好好的,第二天就报错了,我也是被这个问题纠结了很久。我们来看看spring的配置文件:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www 阅读全文
posted @ 2013-06-22 07:32 feige_hunter 阅读(172) 评论(0) 推荐(0)
摘要: #if defined N意思就是如果已经定义了N也可以写成#ifdef N,它也表示如果已经定义了N然后是用#endif结束----------------------------------------------#if !define myHeader#define myHeader#endif这样做的好处就是不会重复包含该代码,因为如果没有定义就定义该段代码。----------------------------------------------这里个人认为:#ifndef 和#if !defined 的作用是相同的来看下面这段代码:#ifndef compare //如果没有宏. 阅读全文
posted @ 2013-06-22 07:14 feige_hunter 阅读(358) 评论(0) 推荐(0)
摘要: C++char 1short int 2int 4long int 8float 4double 8long double 8下面是计算程序:#include<math.h>//不确定是否使用到#include<iostream.h>#include<conio.h>//输入流getch()int main(){ char ch; int i; double d; float f; long double ld; cout<<ch<<" "<<i<<" "<< 阅读全文
posted @ 2013-06-22 07:12 feige_hunter 阅读(276) 评论(0) 推荐(0)
摘要: (*pbox).height +=10.0;该句表示指向结构的指针取出该结构体成员height的值进行运算。为了便于理解,本人给其添加内容为:box* pbox=&mybox;首先pbox是指针成立,也就是说,pbox可以取对象mybox中的任何成员,准备工作是*pbox,取成员的工作是(准备好后).成员//-----------------------------------------------------------*(pbox.height) +=10.0;该句应该这样分析:首先,pbox必须是结构体,并且该结构体中有成员height,()中进行了引用,然后*对其进行了解除, 阅读全文
posted @ 2013-06-22 07:11 feige_hunter 阅读(233) 评论(0) 推荐(0)
摘要: 1.定义指针,指向结构体box* idBox=0; 上面是定义指向box结构体的指针,初始化为0,我的疑问是这里应该是null才对,指针存放的是地址,那么这里的解释只有一种,那就是因为C++中的内存的地址都是整数形式,那么又有一个疑问,就是,C++中有没有负数的地址,是从0开始排的吗?//-----------------------------------------------------下面是个人对引用和指针的理解:Book p=new Book;//与java中的类对象不同这里的含义是创建一个指针p指向自由存贮区中的Book对象,而在java中的类Book p=new Book();的 阅读全文
posted @ 2013-06-22 07:09 feige_hunter 阅读(217) 评论(0) 推荐(0)
摘要: 首先我们来看看C++程序的组成,由.h的头文件和.cpp的源文件组成,在这里,本人的理解是程序文件就是就是源文件。就是头文件的用法类似于java中的接口,只用来定义,不用来实现。(当然,为什么这里不说抽象类呢?因为抽象类除了定义抽象方法外,还可以定义普通方法,普通方法是可以在里面实现的,这点和C++的头文件不同)p311页中说到名称的作用域,这里,我做一个解释,名称其实就是变量,或者说是变量名。比如:int main() { const int limit = 10; for(int i=1;i<=limit;i++){ std::cout<<std::endl<< 阅读全文
posted @ 2013-06-22 07:08 feige_hunter 阅读(847) 评论(0) 推荐(0)