程序语言
文章平均质量分 61
ae5555
这个作者很懒,什么都没留下…
展开
-
C++ 基础知识
static 成员变量在类中用static声明变量,static变量在类外进行定义,并且无法通过构造函数进行定义。class A{ public: static int n; A(){}};int A::n = 1;普通的成员变量是对象的一部分,而static类型的变量独立于任何对象而存在,而是与其所在的类相关联。static成员变量可以作为函数的默认参数,而非st原创 2017-06-27 21:13:42 · 375 阅读 · 0 评论 -
C++/STL
迭代器iterator从后向前的迭代器 vector test; vector::reverse_iterator iter; for(iter=test.rbegin();iter!=test.rend();++iter)const_iterator只能读取数据,不能修改 for(vector::const_iterator iter=test.begin();iter!=t原创 2015-12-20 15:15:08 · 511 阅读 · 0 评论 -
Spring/Aop代码总结
在Advice方法中获取目标方法的参数通过JoinPoint类型的参数获取目标方法的信息,JoinPoint参数代表了织入处理方法的连接点。 //目标函数参数 joinpoint.getArgs(); //目标对象 joinpoint.getTarget(); //代理对象 joinpoint.getThis();动态切点一原创 2015-12-03 22:33:38 · 445 阅读 · 0 评论 -
C++(2)
智能指针unique_ptrunique_prt不支持复制构造与赋值操作,但可以移动赋值,移动赋值是显式的所有权转移,转移之后前者不再拥有该内存。 #include <memory> unique_ptr<int> one(new int(100)); unique_ptr<int> two=move(one); //重新绑定对象 one.reset(new int(1原创 2016-01-20 22:25:48 · 408 阅读 · 0 评论 -
python/Django使用总结
默认情况下,启动项目 python manage.py runserver这种情况下,只能本地访问。改变服务器监听的IP地址,可以让其他地址访问项目: python manage.py runserver 0.0.0.0:8000Django ORM检索数据库 //检索所有对象 all_entries=Entry.objects.all()原创 2015-12-31 14:08:06 · 423 阅读 · 0 评论 -
boost库总结一
progress_display在控制台显示程序的执行进度,但是无法把进度显示输出与程序的输出分离。 #include<boost/progress.hpp> using namespace boost; progress_display pd(long expected_count); //增加进度 pd++;date_timedate_time库需要编译。原创 2015-12-30 16:09:05 · 443 阅读 · 0 评论 -
Python/gensim主题模型库
每个py文件称之为模块,每个具有init.py文件的目录被称为包。只要模块或者包所在的目录在sys.path中,就可以使用import 模块或import 包来使用。 如果要使用的模块和当前文件在同一目录,只要import相应的文件名就可以。如果使用的模块不在同一目录下,使用sys.path.append方法将模块所在目录加入到搜素目录中。然后进行import即可。这种方法是暂时的。使用PYT原创 2015-12-29 23:03:52 · 9318 阅读 · 0 评论 -
Aop/AspectJ
捕获构造函数连接点 pointcut myClassConstructorPointcut() : call(MyClass.new(int,String)); //构造函数之前 before() : myClassConstructorPointcut() { } //构造函数之后 after() : myClassCon原创 2015-12-11 13:14:10 · 328 阅读 · 0 评论 -
plantomjs&casperjs
Casperjs1.设置编码phantom.outputEncoding = "gbk";2.页面操作querySelector只返回匹配的第一个元素,如果没有匹配项,返回null。querySelectorAll返回匹配的元素集合,如果没有匹配项,返回空的nodelist。返回的结果是静态的,之后document的改变不影响之前取得的结果。这两个方法接收三原创 2015-11-16 23:20:08 · 936 阅读 · 0 评论 -
Python代码总结
OSos.walk(dirpath)返回一个三元组(dirpath,dirnames,filenames),其中第一个dirpath(string)是搜索目录,第二个dirnames(list)为搜索目录下的所有文件夹,第三个filenames(list)为搜索目录下所有的文件。 for dirpath,dirnames,filenames in os.walk(rootdir):原创 2015-11-16 15:04:30 · 1259 阅读 · 0 评论 -
java/Commons-exec
命令输出中文编码 String line=”ping “; CommandLine cmdLine=CommandLine.parse(line); cmdLine.addArgument(“www.baidu.com”); ByteArrayOutputStream outputStream = new ByteArr原创 2015-12-03 23:05:18 · 494 阅读 · 0 评论 -
Python/requests&cookielib
sss原创 2015-12-04 23:12:44 · 974 阅读 · 0 评论 -
JVM(一)
数据类型java虚拟机可以操作的数据类型有两类:原始类型和引用类型,对应地,有原始值和引用值两种类型的数值。 基本类型包括数值类型、boolean和returnAddress;引用类型包括类类型、接口类型、数组类型。 returnAddress指向一条虚拟机指令的操作码,程序运行期间无法改变returnAddress类型的值。java虚拟机不提供操作Boolean类型的字节码指令,程序在编译后b原创 2015-12-22 22:40:41 · 363 阅读 · 0 评论 -
C++(一)
auto vector<int> number(5,10); for(auto& e:number) { e=e+2; cout<<(int)e<<endl; }纯虚函数在基类中只有声明而没有定义,必须在子类中加以实现,相当于java中的接口。虚函数可以在基类中定义,在子类中可以重写也可以不重写虚函数。 virtual void func()=0;原创 2016-01-20 14:51:04 · 402 阅读 · 0 评论 -
http session
session与cookiesession一般指的类就是javax.servlet.http.HttpSession。HTTP协议本身是无状态的,cookie机制就是为了解决HTTP协议无状态的缺陷所做的努力,session(服务端)和cookie(客户端)是在客户端和服务器之间保持状态的解决方案。 cookie是通过扩展HTTP协议来实现的,服务器通过在HTTP的响应头中加上一行特殊的指示来提示原创 2016-07-03 22:05:47 · 849 阅读 · 0 评论 -
jquery总结
json与对象转换//json字符串转对象jQuery.parseJSON(jsonstr);//json对象转json字符串JSON.stringify(jsonobj);原创 2016-07-03 16:29:19 · 300 阅读 · 0 评论 -
thrift
数据传输协议protocolTBinaryProtocol 二进制格式 TCompactProtocol 压缩格式 TJSONProtocol JSON格式 TSimpleJSONProtocol JSON只写协议client和server的数据传输协议必须一致。TransportTSocket 阻塞IO TFramedTransport 非阻塞IO TFileTransp原创 2016-07-13 15:08:06 · 472 阅读 · 0 评论 -
Spring MVC
Controller获取请求参数通过@PathVariable获取路径中的参数@RequestMapping(value="/{id}/{str}")public String test(@PathVariable String id,@PathVariable String str)通过HttpServletRequest获取 @RequestMapping(method=Reques原创 2016-03-28 15:00:59 · 311 阅读 · 0 评论 -
Spring Security权限管理框架
Spring SecuritySpring Security是作为过滤器控制权限的,在web.xml中配置过滤器。<filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter原创 2016-03-07 20:32:38 · 2570 阅读 · 0 评论 -
java网络编程
302重定向重定向的目的url写在header的Location属性。 httpclient以GET发送请求时,http的返回码是200,自动处理了重定向; 以POST发送请求时,http的返回码是302,不自动处理重定向,处于占用连接等待状态。HttpPost request=new HttpPost(url);HttpResponse response=httpclient.execut原创 2016-03-02 20:54:52 · 316 阅读 · 0 评论 -
JVM(三)
执行引擎JVM监控与工具使用JDK中工具大多数是tools.jar包的接口的封装。tools.jar中的类库不属于java的标准API。原创 2015-12-23 21:22:47 · 448 阅读 · 0 评论 -
JVM(二)
class文件结构JVM的语言无关性的基础就是虚拟机和字节码存储格式,只有能把程序代码编译成class文件,虚拟机不关心class的来源是什么语言。 字节码指令提供的语义描述能力比java本身更强大,因此,java无法支持的语言特性并不代表字节码指令不能支持。魔数class文件的前四个字节称为魔数,用来标志该文件能否被虚拟机接受的class文件。这个魔数值为0xCAFEBABE。 高版本的JDK原创 2015-12-23 15:57:52 · 341 阅读 · 0 评论 -
python学习笔记
切片取list的部分元素是非常常见的操作。L[1:3] 从索引1开始取,不包括索引3L[ :3] 如果第一个索引为0,可以省略L[-1] 取倒数第一个元素L[-2:-1] 倒数后两个元素L[-2:] 可以省略-1L[::5] 所有元素中每5个取一个L[:] 原样复制字符串和原创 2015-10-29 10:34:11 · 425 阅读 · 0 评论 -
commons-HttpClient相关笔记
1.超时设置ConnectionPoolTimeoutException 连接池取出连接的超时时间ConnectTimeoutException 当连接HTTP服务器或者等待HttpConnectionManager管理的一个有效连接超时引发该异常。SocketTimeoutException 当读取或者接收Socket超时引起该异常。Conn原创 2015-09-22 15:44:23 · 526 阅读 · 0 评论 -
Disruptor并发框架
结构Disruptor实现了”队列”的功能,应用场景是”生产者-消费者”模型。一般而言,当需要在两个独立的处理线程之间交换数据时,就可以使用Disruptor。 特点:同一个“事件”可以有多个消费者,消费者之间可以并行处理,也可以相互依赖形成处理的先后次序。预分配用于存储事件内容的内存空间。Disruptor通过顺序递增的序号来编号管理通过其进行交换的数据(事件),对数据(事件)的处理过程总原创 2015-10-23 22:15:09 · 423 阅读 · 0 评论 -
java/spring/代理
一、静态代理目的是调用接口实现类的某个方法之前或者之后调用另外的操作。总结下开发步骤: 1、创建一个接口 2、创建一个接口的实现类 3、创建一个代理类,这个代理类也实现了上边的接口,但是将 要被代理的实现类传入到代理类中,在代理类的接口实现方法中调用,并在调用前后加上一些操作(日志等)二、动态代理AOP的原理就是动态代理。原创 2014-12-24 12:25:08 · 308 阅读 · 0 评论 -
java/spring/aop
AOP(Aspect Orient Programming),也就是面向切面编程。面向对象编程(OOP)是从静态角度考虑程序结构,面向切面编程(AOP)是从动态角度考虑程序运行过程。常常通过 AOP 来处理一些具有横切性质的系统性服务。原创 2014-12-23 00:04:51 · 365 阅读 · 0 评论 -
JVM-内存管理和内存回收
一、堆所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xmx和-Xms来控制。堆被划分为新生代和旧生代,新生代又被进一步划分为Eden和Survivor区,最后Survivor由From Space和To Space组成。新建的对象都是用新生代分配内存,旧生代用于存放新生代中经过多次垃圾回收仍然存活的对象。二、方法区可通过-XX:PermSize和-XX转载 2014-12-20 00:07:26 · 371 阅读 · 0 评论 -
java注解
1.注解使得Java源代码中不但可以包含功能性的实现代码,还可以添加元数据。注解的功能类似于代码中的注释,所不同的是注解不是提供代码功能的说明,而是实现程序功能的重要组成部分。Java注解已经在很多框架中得到了广泛的使用,用来简化程序中的配置。2.标记注解(marker annotation ),它的出现就代表了某种配置语义。而其它的注解是可以有自己的配置参数的。配置参数以名值对的方式出现。原创 2014-12-21 00:01:20 · 294 阅读 · 0 评论 -
JVM 体系结构
java 执行过程Java代码编译和执行的整个过程包含了以下三个重要的机制:Java源码编译机制类加载机制类执行机制一、java源码编译机制这一阶段生成class文件。二、类加载机制JVM的类加载是通过ClassLoader及其子类来完成的,类的层次关系和加载顺序可以由下图来描述:三、类执行机制JVM是基于栈的体系结构来执行class转载 2014-12-19 12:49:59 · 318 阅读 · 0 评论 -
JVM 数据区
原创 2014-12-19 12:40:33 · 271 阅读 · 0 评论 -
JVM class文件结构
1.字段表集合字段表集合是指由若干个字段表(field_info)组成的集合。对于在类中定义的若干个字段,经过JVM编译成class文件后,会将相应的字段信息组织到一个叫做字段表集合的结构中,字段表集合是一个类数组结构。字段表集合位于字段计数器后面。Class文件结构2.方法集在class中的组织方法表集合是指由若干个方法表(method_info)组成的集合。对于在类转载 2014-12-18 00:00:09 · 525 阅读 · 0 评论 -
JVM 常量池
在class文件中的魔数、副版本号、主版本之后,紧接着就是常量池的数据区域了。常量池的组织很简单,前端的两个字节占有的位置叫做常量池计数器(constant_pool_count),它记录着常量池的组成元素 常量池项(cp_info)的个数。紧接着会排列着constant_pool_count-1个常量池项(cp_info)。 每个常量池项(cp_info)转载 2014-12-19 00:23:13 · 407 阅读 · 0 评论 -
java反射机制
java反射机制允许程序在运行时透过Reflection APIs取得任何一个已知名称的class的内部信息。就是说,Java程序可以加载一个运行时才得知名称的class,获悉其完整构造(但不包括methods定义),并生成其对象实体、或对其fields设值、或唤起其methods。针对任何您想探勘的class,必须先为它产生一个Class object,接下来才能由后者调用Reflectio原创 2014-12-17 00:24:21 · 328 阅读 · 0 评论 -
如何设计一个框架
框架就是一组协同工作的类,它们为特定类型的软件构筑了一个可重用的设计。因此,框架是针对特定的问题领域的。知识积累。框架的核心价值是对知识的积累。框架的特征 ◆框架包括大量类或组件,每一种类或组件都提供了某种概念的抽象; ◆框架定义了这些抽象如何协作解决问题; ◆框架组件可以重用; ◆框架在更高层次上组织模型(抽象层次)。1.分析抽象行为的通用部分和非通用原创 2014-12-25 12:27:19 · 659 阅读 · 0 评论 -
java/Spring/IOC
IOC,inverse of Control,控制反转。意思是程序中的之间的关系,不用代码控制,而完全是由容器来控制。在运行阶段,容器会根据配置信息直接把他们的关系注入到组件中。同样,这也是依赖注入的含义。依赖注入和控制反转其实是一个概念。只不过强调的不同而已,依赖注入强调关系的注入是由容器在运行时完成,而控制反转强调关系是由容器控制。其实本质是一样的。1.在程序中不用实例化具体类,直接由容器原创 2014-12-22 12:39:30 · 402 阅读 · 0 评论 -
java/System.getProperty 获取当前路径
获取当前路径1.利用System.getProperty()函数获取当前路径 System.getProperty("user.dir") , user.dir指定了当前的路径2.使用File类File dir=new File(""); 设定为当前文件夹dir.getCanonicalPath() 获原创 2015-04-13 23:52:08 · 2111 阅读 · 0 评论 -
Python第三方库代码总结
urllib&urllib2 import urllib.request site=urllib.request.urlopen(url) // //HTTP头信息 site.info() //返回码 site.getcode() //保存文件,返回(filename,mine_hdrs) file=urlli原创 2015-11-09 14:04:28 · 968 阅读 · 0 评论 -
java.util.concurrent代码总结
结构ExecutorService一个线程池管理者,能把Runable、Callable提交到线程池执行。newFixedThreadPool可重用的固定大小线程池,以共享的无界队列方式来运行这些线程(只要有请求过来,就会放在队列里等待执行)。如果执行期间某个线程执行失败,一个新线程会代替它执行后续的任务。newCachedThreadPool无界线程池,可以自动回收线程(从缓存中移除超过60s没有原创 2015-10-23 15:05:42 · 388 阅读 · 0 评论 -
EHCache使用
结构缓存就是存储数据(使用频繁的数据)的临时地方,如果取原始数据的代价太大。 EHCache缓存数据有两级:内存和磁盘。java可序列化序列化机制就是将一个实例对象的状态信息写入到字节流中,从而可以传输、持久化存储,在需要的时候根据字节流中的信息来重构一个相同的对象。序列化机制只序列化对象的属性值,不会序列化方法,只要JVM classloader可以load到类,那么类的方法就可以获得。序列化需原创 2015-10-20 15:03:44 · 854 阅读 · 0 评论