早上过来遇到一个非常奇怪的问题,运行一个新的项目,运行环境都没问题,可是在调试的时候,总是出错。错误代码:log4j:WARNNoappenderscouldbefoundforloggerlog4j:WARNPleaseinitializethelog4jsystemproperly.加上一大堆notfound的显示。经过反复尝试,确认运行环境没问题,软件版本都是可以兼容的。那么,问题肯定出在设置上。经过同事帮忙,一步步地排查。最终解决了这个问题,最根本
系统 2019-08-12 01:32:59 2763
软件应该是可以扩展的,但是不可以修改的。对扩展都是开放的,模块式可以扩展来满足新的行为,我们可以改变模块的功能。OCP的好处是,尽可能的减少修改模块的次数和范围,从而提高代码的可维护性,复用性。比如操作系统的升级补丁,在修复bug的情况下,肯定是越小越小。如果说OCP做的不好,每次修改需要修改大量的文件,那就会导致补丁很大。对于修改是封闭的,在扩展模块的时候,不必改动源代码的二进制文件,不管是.o文件还是.dll文件都不用改动。问题的核心是怎么样改变了模块
系统 2019-08-12 01:32:46 2763
以下内容转自:http://blog.csdn.net/inter0507/article/details/2794426默认情况下Tomcat并不记录访问日志文件(accesslog):Catalina/conf/server.xml;将文件中这一段的注释去掉,然后将pattern的值改为combined,这个模式下记录的日志比较详细。
把工作拿到别的地方去做,这不是什么新鲜事。从上个世纪起,人们就知道:如果按照欧美的价格收费,同时把一部分工作拿到亚洲(印度、马来西亚或者中国),你就能赚到更多的钱。这件事由于软件的物流成本约等于0,因此在软件业里更成规模、成体系。这件事就是外包。从人力成本高的地方拿到项目,外包到人力成本低的地方生产,从而降低成本增加收益。从美国外包到印度、从日本外包到中国、从北京外包到西安,都是一个道理。但软件有另一个特点:它需要交流。越有价值的软件,在开发的过程中需要的
系统 2019-08-12 01:32:35 2763
JSON及XML的Java序列化、反序列化(转换)在WebService、Ajax数据传递中,用得比较多。如:在用ExtJS、jQuery、mootools以及一些WebService时,你可以需要用到JSON、XML,给前端传递JSON或XML数据。这个时候你就可以用下面的这些技术帮助你转换Java对象,这些技术都可以轻易完成。比你手动拼接字符前要方便、省事得多。JSON的传递数据相对XML要更快些,且性能更好,但XML的可读性更清晰。至于用JSON,还
系统 2019-08-12 01:32:08 2763
一、logging模块Python中有一个模块logging,可以直接记录日志#日志级别#CRITICAL50#ERROR40#WARNING30#INFO20#DEBUG10logging.basicConfig()函数中的具体参数:filename:指定的文件名创建FiledHandler,这样日志会被存储在指定的文件中;filemode:文件打开方式,在指定了filename时使用这个参数,默认值为“w”还可指定为“a”;format:指定handl
系统 2019-09-27 17:56:47 2762
在帮朋友解决这个问题后,随便记录一下这三种方法:第一种方法:使用正则表达式:因为当时的要求是判定10.0.0.1到10.255.255.255,原理其实是一样。这里简单回顾一下正则表达式模式的内容:常见的如:\d可以表示0~9的任意一个数字字符而\D是匹配一个非数字字符等价于^^是匹配字符串的开头,但放在[]中表示匹配不在[]中的字符$是匹配字符串的末尾.是匹配除了换行符任意字符{}表示重复几次,例如:^a{2,4}$aa,aaa或aaaa|的是或的意思[
系统 2019-09-27 17:56:01 2762
本文实例讲述了Pythondjango框架应用中实现获取访问者ip地址。分享给大家供大家参考,具体如下:在django官方文档中有一段对request.META的解释:HttpRequest.METAAstandardPythondictionarycontainingallavailableHTTPheaders.Availableheadersdependontheclientandserver,butherearesomeexamples:•CONT
系统 2019-09-27 17:54:42 2762
importreadlineimportosdefcompleter(text,state):ds=os.listdir()rs=list(filter(lambdas:s.startswith(text),ds))ifstate
系统 2019-09-27 17:45:38 2762
本文英文原版及代码下载:http://mattberseth.com/blog/2007/08/using_the_ajax_timer_control_a.html将Timer控件用作UpdatePanel的触发器ASP.NETAJAXTimer概述ASP.NETAJAXTimer控件每隔特定的时间间隔执行一次页面回传,它有一个Interval属性来定义时间间隔.当“到点”时就在服务器端触发Timer的Tick事件.如果你希望整个页面回传(fullpos
系统 2019-08-29 23:39:24 2762