web的调试一直采用的是火狐firebug的调试,现在火狐越来越臃肿.现在在领导的启发下,平常都用chrome dev tools调试的,也是挺方便,转载下chrome的调试技巧做下记录.Google Chrome在招来了FireFox,FireBug的项目组领导人John J. Barton后,Chrome Dev Tools也变的越来越好用,越来越方便了。本文根据Google I/O上对Chrome Dev Tools的介绍(http://www.youtube.com/watch?v=N8SS-rUEZPg),和相关PPT:http://chrome-devtools-io2011.appspot.com/template/index.html 整理而来。(参照的Chrome版本为: 19.0.1084.52)实时****CSS Style编辑选择一个Dom,可以对Dom进行编辑和操作,实时修改Css Style, 同时CssStyle可以保存变更历史版本。保存变更历史版本:同时支持可以在Chrome 载入的Css文件正文中自由的修改。 网络交互当一个页面载入时,所有发出的请求可以在“Network”里监听到,同时下面有”All”, “Documents”, ”Stylesheets”, “Images”, “Scripts”, “XHR”(XMLHttpRequst), WebSockets, Other, 这几个分类,可以清晰的把网络请求进行分类,同时可以看到每个请求的详细情况。 控制台在控制台里可以方便的使用命令来查看Dom,执行JavaScript, 等等操作, Console API: http://getfirebug.com/wiki/index.php/Command_Line_API copy(), dir(), inspect(), $0, Script DebuggingScript Debugging 脚本调试功能,这个功能可以说是Chrome Dev Tools里最实用最强大的工具了:1. JavaScript Breakpoints, Break on exception, JavaScript Pretty Print.Break Points:断点在需要设置的地方点一下即可,Break on exception:当此功能开启时,有Script异常出现时,自动会在Exception处断住,方便差错。JavaScript Pretty Print: 当JavaScript被压缩后,非常难阅读,Pretty Print使JavaScript按照语法和关键字重新换行并重排,使得压缩后的JavaScript仍然可以进行阅读。 2. DOM BreakpointsDom元素断点,经常有多处JavaScript操作同一个Dom元素,如果要在JavaScript上下断点,要下好几个地方,不好断到想要的地方,在Dom元素上下断点就方便多了:Break on subtree modifications, Break on attributes modifications, Break on node removal, 可以方便的断到操作Dom的JavaScript。 3. XHR Breakpoints, Event listener breakpoints:XHR Breakpoints,可以方便的断到XMLHttpRequest Ajax请求。Event Listener Breakpoints, 可以方便的断到各种Event。 4. 查找JavaScript使用Ctrl+Shift+F, 打开查找窗口, 查找支持正则表达式:查找函数定义:Ctrl + Shift + o查找文件: Ctrl + o 5. 实时修改 JavaScript代码页面外链JavaScript文件在 Script Panel中可以直接修改,改完后Ctrl + s 保存, 会立即生效,但是不支持 Html 页面中 JavaScript 修改,经过 Pretty print 格式化的JavaScript也不支持实时修改。 6. 自建Script文件在Console(控制台) 中输入代码的最后一行加上 //@ sourceURL=filename.js, 会在Script Panel中加入一个新的外链Script文件: filename.js, 这个新文件和其它外链JavaScript 文件一样,可以实时进行修改。 TimelineTimeline功能把浏览器处理Dom的时间轴画了出来,方便进行优化: Remote DebuggingRemote Debugging 使得Chrome成为一个WebServer,执行命令–remote-debugging-port=1337, 同时再开一个Chrome 访问localhost:1337, 就可以用一个Chrome当Host,一个Chrome当Client,在调试一些移动Web的时候非常实用。
业务场景:例如用户表,我们需要建一个字段是创建时间, 一个字段是更新时间.解决办法可以是指定插入时间,也可以使用数据库的默认时间.在mysql中如果设置两个默认CURRENT_TIMESTAMP,会出现这样的错误. ERROR 1293 (HY000): Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause.错误的建表语句: CREATE TABLE db1.sms_queue ( Id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, Message VARCHAR(160) NOT NULL DEFAULT ‘Unknown Message Error’, CurrentState VARCHAR(10) NOT NULL DEFAULT ‘None’, Phone VARCHAR(14) DEFAULT NULL, Created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, LastUpdated TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP, TriesLeft tinyint NOT NULL DEFAULT 3, PRIMARY KEY (Id) ) ENGINE = InnoDB;解决办法,可以使用触发器或者其他,在此还是使用数据库的方式.建表语句: create table test_table( id integer not null auto_increment primary key, stamp_created timestamp default ‘0000-00-00 00:00:00’, stamp_updated timestamp default now() on update now() );测试:mysql> insert into test_table(stamp_created, stamp_updated) values(null, null);Query OK, 1 row affected (0.06 sec)mysql> select * from t5;+----+---------------------+---------------------+ | id | stamp_created | stamp_updated |+----+---------------------+---------------------+| 2 | 2009-04-30 09:44:35 | 2009-04-30 09:44:35 |+----+---------------------+---------------------+2 rows in set (0.00 sec)mysql> update test_table set…
推荐给oracle11的简装版给开发测试人员,不用去装那么几百兆大的原版了。 作者: iihero@CSDN, 2012.3.11. 请尊重个人劳动。如若转载,请注明原始出处。Thanks.下载地址:http://download.csdn.net/detail/iihero/4131001(免责声明):这是一个精简版的oracle11g for windows 32bit x86平台.此压缩包,仅供学习研究使用,本文作者不负任何责任。适合于开发人员使用。切不可将其用于商业用途,请遵守Oracle公司相关商业规定。如因私自将其用于商业用途,由此带来的法律纠纷或其它问题,概与本人无关.author: iihero@CSDN (iiihero AT hotmail.com; iihero AT qq.com)0. 如果你已经安装了别的版本的oracle,请自行备份注册表:[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE], 这样即算有冲突,你也可以重新导入以前的注册项而得已恢复1. 将压缩包解压至目录,设该目录值为: d:,其下将有目录:<D>/oracle/*<D>/oracle/11.2.02. 新的ORACLE_HOME将为:<D>/oracle/11.2.0运行完iihero.ora11g.bat运行完以后,(一个批处理一次安装全部完成)你需要将<D>/oracle/11.2.0/BIN添加到path里头缺省的ORACLE_SID为iihero,你可以自行修改iihero.ora11g.bat中的SID值,不要超过8个字符。3. 安装完以后,别忘了添加环境变量ORACLE_SID=iihero以及将%ORACLE_HOME%/bin添加到PATH环境变量里头,在这之后,即可使用sqlplus system/manager进入并修改密码,执行表空间、用户管理相关操作。如: 1: [sql] view plaincopy 2: D:Oracle>;sqlplus system/manager 3: 4: SQL*Plus: Release 11.2.0.1.0 Production on 星期日 3月 11 13:14:35 2012 5: 6: Copyright (c) 1982, 2010, Oracle. All rights reserved. 7: 8: 9: 连接到: 10: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production 11:With the Partitioning, OLAP, Data Mining and Real Application Testing options 12: 13: SQL>; quit 14: 从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production 15:With the Partitioning, OLAP, Data Mining and Real Application Testing options 断开 欢迎大家试用,如果发现有什么问题,可以与本人联系。这个11g的包,既可充当server,同时也可以用作oci, jdbc,sqlplus,odbc等的客户端工具。还是比较齐全的。11g比10g的非安装包,确实大了不少。10g的时候,总共才50M不到,这不,到了11g,压缩完以后,也有100来兆。不过,不管怎样,比原始的安装包,那可是小了很多了。作者地址:http://iihero.iteye.com/blog/1450186
很久没有关注was的使用,今天收到WebSphere 开发与应用社区的推荐邮件,看到里面一些不错的资源,推荐使用was的看看啊!WAS初学-创建简单集群[sangmin214]http://www.webspherechina.net/home/space.php?uid=15618&do=blog&id=56151通往测试架构师之路[myjob]http://www.webspherechina.net/home/space.php?uid=1913&do=blog&id=56147WAS V7 分布式高速缓存[yuruli2058]http://www.webspherechina.net/home/space.php?uid=39601&do=blog&id=56134WAS初学-如何从WAS中删除一个Profile[sangmin214]http://www.webspherechina.net/home/space.php?uid=15618&do=blog&id=56132WebSphere Application Server ND版 V8安装及简单使用http://www.webspherechina.net/home/space.php?uid=15618&do=blog&id=56121WebSphere密码遗忘的2种解决方案http://www.webspherechina.net/home/space.php?uid=205&do=blog&id=56065
Hibernate 参数设置一览表,相当全的啊!推荐hibernate使用者必备! 属性名 用途 hibernate.dialect 一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL.取值 full.classname.of.Dialect hibernate.show_sql 输出所有SQL语句到控制台. 有一个另外的选择是把org.hibernate.SQL这个log category设为debug。eg. true | false hibernate.format_sql 在log和console中打印出更漂亮的SQL。取值 true | false hibernate.default_schema 在生成的SQL中, 将给定的schema/tablespace附加于非全限定名的表名上.取值 SCHEMA_NAME hibernate.default_catalog 在生成的SQL中, 将给定的catalog附加于非全限定名的表名上.取值 CATALOG_NAME hibernate.session_factory_name SessionFactory创建后,将自动使用这个名字绑定到JNDI中.取值 jndi/composite/name hibernate.max_fetch_depth 为单向关联(一对一, 多对一)的外连接抓取(outer join fetch)树设置最大深度. 值为0意味着将关闭默认的外连接抓取.取值 建议在0到3之间取值 hibernate.default_batch_fetch_size 为Hibernate关联的批量抓取设置默认数量.取值 建议的取值为4, 8, 和16 hibernate.default_entity_mode 为由这个SessionFactory打开的所有Session指定默认的实体表现模式.取值 dynamic-map, dom4j, pojo hibernate.order_updates 强制Hibernate按照被更新数据的主键,为SQL更新排序。这么做将减少在高并发系统中事务的死锁。取值 true | false hibernate.generate_statistics 如果开启, Hibernate将收集有助于性能调节的统计数据.取值 true | false hibernate.use_identifer_rollback 如果开启, 在对象被删除时生成的标识属性将被重设为默认值.取值 true | false hibernate.use_sql_comments 如果开启, Hibernate将在SQL中生成有助于调试的注释信息, 默认值为false.取值 true | false**表 3.4. Hibernate JDBC和连接(connection)属性 ** 属性名 用途 hibernate.jdbc.fetch_size 非零值,指定JDBC抓取数量的大小 (调用Statement.setFetchSize()). hibernate.jdbc.batch_size 非零值,允许Hibernate使用JDBC2的批量更新.取值 建议取5到30之间的值 hibernate.jdbc.batch_versioned_data 如果你想让你的JDBC驱动从executeBatch()返回正确的行计数 , 那么将此属性设为true(开启这个选项通常是安全的). 同时,Hibernate将为自动版本化的数据使用批量DML. 默认值为false.eg. true | false hibernate.jdbc.factory_class 选择一个自定义的Batcher. 多数应用程序不需要这个配置属性.eg. classname.of.Batcher hibernate.jdbc.use_scrollable_resultset 允许Hibernate使用JDBC2的可滚动结果集. 只有在使用用户提供的JDBC连接时,这个选项才是必要的, 否则Hibernate会使用连接的元数据.取值 true | false hibernate.jdbc.use_streams_for_binary 在JDBC读写binary (二进制)或serializable (可序列化) 的类型时使用流(stream)(系统级属性).取值 true | false hibernate.jdbc.use_get_generated_keys 在数据插入数据库之后,允许使用JDBC3 PreparedStatement.getGeneratedKeys() 来获取数据库生成的key(键)。需要JDBC3+驱动和JRE1.4+, 如果你的数据库驱动在使用Hibernate的标 识生成器时遇到问题,请将此值设为false. 默认情况下将使用连接的元数据来判定驱动的能力.取值 true|false hibernate.connection.provider_class 自定义ConnectionProvider的类名, 此类用来向Hibernate提供JDBC连接.取值 classname.of.ConnectionProvider hibernate.connection.isolation 设置JDBC事务隔离级别. 查看java.sql.Connection来了解各个值的具体意义, 但请注意多数数据库都不支持所有的隔离级别.取值 1, 2, 4, 8 hibernate.connection.autocommit 允许被缓存的JDBC连接开启自动提交(autocommit) (不建议).取值 true | false hibernate.connection.release_mode 指定Hibernate在何时释放JDBC连接. 默认情况下,直到Session被显式关闭或被断开连接时,才会释放JDBC连接. 对于应用程序服务器的JTA数据源, 你应当使用after_statement, 这样在每次JDBC调用后,都会主动的释放连接. 对于非JTA的连接, 使用after_transaction在每个事务结束时释放连接是合理的. auto将为JTA和CMT事务策略选择after_statement, 为JDBC事务策略选择after_transaction.取值 on_close |…
很佩服那些为了追求自然景观,竟然跑到火山口,摄影的人,看看他们带回来的漂亮、惊险的摄影照片吧!很喜欢这张,天空和火山共存的,一边是火山的喷发,一边是宇宙的浩瀚。还带闪电的。更多的看原文。40张惊险的火山喷发摄影照片
soapUI相当不错的测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试。我现在用的还是2.0的版本,官网已经到了4.0了。推荐每个JAVA程序员必备的软件!一、去http://www.soapui.org/下载soapui的安装包,当前最新的是soapUI Pro 4.0.1(专业版)二、去http://download.csdn.net/detail/shishaomeng/3857655下载破解补丁三、破解步骤(可以破解4.0.0,4.0.1的pro版本及普通版本)1、拷贝license4j-1.3.jar到soapui安装的lib目录下替换原来的文件2、运行程序,导入license到目录binlisteners下即可3、运行程序binsoapui-pro.bat
工作中需要进行数据迁移,使用expdp做的,做个记录。expdp是oracle10g中提出来的,比exp的速度高的不是一般,这个是体验过的。和DBA在做数据迁移的时候,开始用的exp,超过半个小时后,我们就忍受不了了,太慢了,就改成了expdb,4分钟,8个G,速度不错吧!看下我们使用 脚本 1: expdp dbusername/dbpassword dumpfile=dmpfilename.dmpdirectory=DMPDIRECTORY tables=tablename:partname exclude=index; 分析一下 expdp 导出命令 dbusername/dbpassword 数据库用户名和密码(注:要有执行expdp命令的权利) dumpfile=dmpfilename.dmp 导出的数据文件 logfile=dmpfilelog.log 导出时的日志文件 directory=DMPDIRECTORY 数据文件的保存位置(需要提前创建) tables=tablename:partname 按表分区导出,tablename是表名,partname是分区名 exclude=index 不导出索引详细介绍下expdp1. 执行expdp之前必须创建directory对象,并且分配权限,如: connect system/admin createor replace directory expdir as'e:dmpfile'; grantread,writeon directory expdir topublic;2. 常见用法:(我这里直接用命令行的方式,还有使用配置文件的方式)2.1 导出scott整个schema expdp system/admin@dapengdb DIRECTORY=expdir DUMPFILE=scott_full.dmp LOGFILE=scott_full.log SCHEMAS=SCOTT配置文件的方式 expdp system/admin@dapengdb parfile=c:exp.par exp.par内容: DIRECTORY=expdir DUMPFILE=scott_full.dmp LOGFILE=scott_full.log SCHEMAS=SCOTT2.2 导出scott下的dept,emp表 expdp scott/tiger@dapengdb DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log TABLES=DEPT,EMP2.4 导出scott下的存储过程 expdp scott/tiger@bright DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log INCLUDE=PROCEDURE2.5 导出scott下以’E’开头的表expdp scott/tiger@bright DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log INCLUDE=TABLE:"LIKE'E%'" –可以改成 NOTLIKE,就导出不以E开头的表2.6 带QUERY导出expdp scott/tiger@bright DIRECTORY=expdir DUMPFILE=scott.dmp LOGFILE=scott.log TABLES=EMP,DEPT QUERY=EMP:"where empno >=8000″ QUERY=DEPT:"where deptno >=10 and deptno <=40″注:处理这样带查询的多表导出,如果多表之间有外健关联,可能需要注意查询条件所筛选的数据是否符合这样的外健约束,比如:EMP中有一栏位是deptno,是关联dept中的主键,如果”where empno >=8000″中得出的deptno=50的话,那么,你的dept的条件”where deptno >=10 and deptno <=40″就不包含deptno=50的数据,那么在导入的时候就会出现错误! 摘抄网址:[http://www.dbifan.com/200802/common-usage-of-expdp.html](http://www.dbifan.com/200802/common-usage-of-expdp.html "http://www.dbifan.com/200802/common-usage-of-expdp.html")原文采用配置文件的方式。
年过完了,新一年又开始喽!吼吼!同事的mysql忘记了root密码,我也整理测试了下,此方法可以行的通的。环境是windows,linux下面应该也可以的,就是执行mysql命令而已。1.结束mysql的服务net stop mysql5_pn2.打开dos窗口,切换到mysql的bin目录下cd D:serverPHPnow-1.5.6MySQL-5.0.90binmysqld-nt –skip-grant-tables注释:该命令通过跳过权限安全检查,开启mysql服务,这样连接mysql时,可以不用输入用户密码。此时这个dos窗口会静止了,不管,就是开启了mysql的服务。3.继续重新打开一个新的dos窗口,切换到mysql的bin目录下cd D:serverPHPnow-1.5.6MySQL-5.0.90binmysql这样就进入mysql了,继续。use mysql选择切换到mysql的数据库,继续。update user set password=password(‘123456as’) where user=’root’;修改root的密码为123456as,继续。flush privileges;刷新权限,继续。quit退出,就结束了,可以把所有的dos关闭了。4.启动mysql服务,登录net start mysql5_pn启动mysql服务mysql –u root –p进入mysql数据库,输入密码123456as就完毕了,如果还没有成功,就要看下你的人品了!关键的命令都用红色标记出来了,跟着操作就可以了。
睡眠不足会导致大脑功能下降 我们都知道,睡眠不足会削弱日常生理功能。最近研究表明,睡眠不足6小时的中年人在六项不同的认知测试上取得更低的分数,包括推理、词汇、和记忆。 此外,研究还表明,慢性睡眠不足,会导致体内荷尔蒙和某些化学元素失调,增加心脏病、高血压、疾病、糖尿病、肥胖症等疾病的风险。另外,睡眠不足还会影响情绪,导致整体身心健康恶化。结论 研究者在该参与该研究的人员中发现了一个最大的问题,就是他们透支了自己,没有使工作和生活达到平衡。专家认为:睡眠是影响总体健康状况的重要因素,必须和正确的饮食习惯、长期的体育锻炼一样,被予以同等的关注。适当的睡眠是身体机能修复的重要所需,将有益于大脑的健康和性能。成人的睡眠提示1. 将睡眠置于优先位置。此外,创建和保持定期的睡眠、起床时间模式(包括周末),将有益于大脑的自然生理节奏。* 2. 睡前避免工作或其他刺激性的活动。* 3. 建立睡前放松的仪式。如洗个热水澡,读一本书或杂志,或听轻音乐。* 4. 保持健康的体重。超重或肥胖也影响到睡眠。纳豆翻译小组译自:http://www.nativeremedies.com/blog/lack-of-sleep-leads-to-decline-in-brain-function/原文网址:http://www.naadou.com/lack-of-sleep-leads-to-decline-in-brain-function.html