为php指南新建了个google code项目

听从了某些同学的建议,为了更新方便,为php指南新建了个google code项目
项目地址:http://code.google.com/p/ttsunny/
以后会不断更新,本项目将不仅仅是php指南,也不仅仅是php。

mybatis3自动生成代码

(1)参照mybatis3.0.4+mysql5.1.50配置(http://aiyooyoo.com/index.php/archives/294/),搭建好环境。
(2)官方下载mybatis-generator-core-1.3.1.jar包,此包是用于自动生成的。
(3)写配置文件mybatis.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
  PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
  "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <classPathEntry location="mysql-connector-java-5.1.15-bin.jar" />
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true" />
        </commentGenerator>
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="jdbc:mysql://localhost/test" userId="root" password="">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>
        <javaModelGenerator targetPackage="test.model"
            targetProject="../src/main/java">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>
        <sqlMapGenerator targetPackage="test.dao"
            targetProject="../src/main/java">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>
        <javaClientGenerator type="XMLMAPPER"
            targetPackage="test.dao" targetProject="../src/main/java">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>
        <table tableName="Goods" domainObjectName="Goods">
        </table>
    </context>
</generatorConfiguration>
其中tableName为对应的数据表名,其它配置看英文就行了。

阅读剩余部分...

mybatis3.0.4+mysql5.1.50配置

(1)准备工作:建立相应的数据库,表,添加一条记录用于测试。
CREATE TABLE `goods` (
`ID` INT(11) NOT NULL,
`CATE_ID` INT(11) NULL DEFAULT NULL,
`NAME` VARCHAR(50) NULL DEFAULT NULL,
`PRICE` DECIMAL(16,2) NULL DEFAULT NULL,
`DESCRIPTION` VARCHAR(100) NULL DEFAULT NULL,
`ORDER_NO` INT(11) NULL DEFAULT NULL,
`UPDATE_TIME` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`ID`)
)
随便插入几条记录均可。

(2)下载最新的mybatis3.0.4的jar包,对于mysql5.1.50可以下载mysql-connector-java-5.1.15
-bin.jar驱动。
MyBatis官方网站
MyBatis3用户手册

MyBatis3用户手册(中文版).
然后是在eclipse里新建一个java工程,配置classpath。

阅读剩余部分...

解决mysql无法启动服务的问题

关键字:mysql无法启动服务,mysql卡死,InnoDB' registration as a STORAGE ENGINE failed.Unknown/unsupported table type: innodb.
前几天,启动mysql时,突然报1067系统错误,死活无法启动。
当时不管三七二十八,重装,清空注册表,重启,任然没办法启动。
总是在安装后的配置那里最后一步启动服务的界面卡死,半天没反应。
折腾了两三个小时,才猛然想起,该去看看日志,
110223 15:58:08 [Note] Plugin 'FEDERATED' is disabled.
110223 15:58:08  InnoDB: Initializing buffer pool, size = 17.0M
110223 15:58:08  InnoDB: Completed initialization of buffer pool
InnoDB: No valid checkpoint found.
InnoDB: If this error appears when you are creating an InnoDB database,
InnoDB: the problem may be that during an earlier attempt you managed
InnoDB: to create the InnoDB data files, but log file creation failed.
InnoDB: If that is the case, please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/error-creating-innodb.html
110223 15:58:08 [ERROR] Plugin 'InnoDB' init function returned error.
110223 15:58:08 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
110223 15:58:08 [ERROR] Unknown/unsupported table type: innodb
110223 15:58:08 [ERROR] Aborting
大意是innodb初始化失败,不认识innodb类型。
google了一下,把my.ini文件打开,更改default-storage-engine=innodb为default-storage-engine=myism
启动成功。但是建表时找不到innodb引擎了。
但想着,也不能老这样啊,这样innodb也用不了了,有google了一下,主要是innodb日志大小不对造成的
innodb_buffer_pool_size=512M
innodb_log_file_size=128M
把以上几个参数调大点,然后把ibdata1,ib_logfile0,ib_logfile1这三个文件删除后,再重启服务就好了。
如果还是不行,在my.ini文件里还需要加入tmpdir="usr/tmp"这样的路径,因为innodb还需要一个临时的文件缓存区。
还遇到的问题是在安装MYSQL配置了密码后(卡在了最后一步上,因为mysql默认生成的配置文件是错误的,无法启动service,第四步权限设置也无法设置,等下去是没用的,你应该关闭配置工具,按我上面说的修改配置文件),无法登陆,可以先启动服务(此时配置已经被我们修改正确了),然后在命令行下用root用户登陆刷新权限就可以了。flush privileges.记住,登录时root不要输入密码(尽管你安装时设置了密码,但是无效),否则是操作不了的,因为此时权限还不存在。等一切正常了之后再改密码.
记录下来,仅供遇到此类问题的同学参考。主要是MYSQL 5.5在win下安装问题很多,需要手工处理。

php指南白菜版20110222版本发布

项目地址:http://code.google.com/p/ttsunny/
php实用指南,集成作者多年心血,蕴含广大网友智慧。。。是你居家必备,杀人灭口必备之凶器。
呵呵,别听我吹。。。只完成了十分之一的工作量,写了一小部分。纯属个人拙见。

    本文档由猪也知道独自撰写,其中花了不少精力,希望能带给你有用的知识。
作者博客:aiyooyoo.com
     本指南文档及大部分源代码由作者亲自完成,部分内容来自于网络,有的内容可能没有和原作者联系,还望海涵。
欢迎大家分发此文档,让更多的人使用,为国内php发展加力。
未经文章作者同意,不得将本资料用于商业用途,转载请注明出处和作者。
交流:waitfox@qq.com
最后更新:2011-02-22
----------------------------
作者:猪也知道 http://aiyooyoo.com

阅读剩余部分...

spring3.0.5+quartz1.8.4的依赖配置

一 前言
    公司业务需要,开发超时提醒的功能.因此笔者将spring3.0.5与quartz1.8.4集成使用的思路给记录了下来。quartz最经典的地方应该就是他的cronTrigger,可以灵活的配置作业的调度.spring与quartz集成的目的就是为了让我们用quartz更加的简单方便,而不是为了取代丰富且强大的quartz.集成之后的效果,能满足80%以上的开发者要求.

二环境(javaSE项目)
jdk1.6.0.23
eclipse3.6.1_javaee
spring3.0.5
quartz1.8.4

三 包
1)日志管理
commons-logging-1.1.1.jar
log4j-1.2.16.jar

2)spring核心包
org.springframework.asm-3.0.5.RELEASE.jar
org.springframework.beans-3.0.5.RELEASE.jar
org.springframework.context-3.0.5.RELEASE.jar
org.springframework.core-3.0.5.RELEASE.jar
org.springframework.expression-3.0.5.RELEASE.jar

阅读剩余部分...

转:SOAP的S是Simple

曾经有一个争论,一边是站在SOAP这边的人,另一边则是其它人。 站在SOAP这边人,当他们在争论SOAP和Web Service框架的复杂度时,SOAP这边的人说,在引入那些WS-*东东之前,SOAP的确是简单的,这就是为什么SOAP的第一个字母S就是Simple。

在2000年的时候,有一个苦恼的程序员,

程序员: 不好意思,我的老板这周末去打高尔夫了,现在我不得不要搞一个SOAP的应用,但是我根本不知道什么是SOAP。SOAP专家,你能帮我吗?

SOAP专家: 当然可以。首先,我要告诉你,SOAP 就是 Simple Object Access Protocol.

程序员: 哦,那么说来,他是简单的罗?

SOAP专家: 简单的就像星期天一样,我的朋友。

程序员: OK,快跟我说说。

SOAP专家: 好,就像他的名字一样,SOAP用为远程对象访问。

程序员: 像CORBA一样?

阅读剩余部分...

转:那些炒作过度的技术和概念

    本文为转载,原文:http://coolshell.cn/articles/3609.html。对于UML,XML,SOA,敏捷开发等炒作的评论,我还是很赞同的。

上有一个贴子在评论着最近20年来被炒作过度的技术,对于出现的结果,大多数赞同,也有一些不赞同。下面我从前15名挑了10个(Java的WORE我去掉了,TDD我也去掉了,因为我觉得他们应该没有炒作过度,而且都不错),按原贴的顺序罗列如下:(后面的一些评论是我加的,欢迎大家讨论)


Top 10 过度炒作的技术和概念




  • eXtensible Mark-up Language (XML) –  XML嘛,以前说过很多了(XML2)我们用他来做和程序数据封装,用来做配置文件,用来做网络传输格式。我们的程序处理起XML来,又慢,又不经济,没有工具,几乎无法维护XML文件。XML用来做数据封包真是很不经济,Yaml和JSON那个不比它简单?用XML来做程序配置文件不知道是谁想出来的主意,相当的愚蠢,看看Unix/Linux下的配置文件,简单易读,相当容易维护。真是高科技啊。

  • SOAP, XML-RPC, WSDL 的 Web Services – 这个东西前几年炒的很凶。所有人都相信,这是程序员的未来。可惜的,其中的复杂和不一致,相当的令人恶心。SOAP的那个S居然还是Simple!看来,扯上XML的都不会是什么好的东东。不过,个人认为,CORBA比他更恶。


  • CORBA- 作为一个比其更恶的更过度炒作的COM技术的Linux/Unix下的补充技术,这个技术也好不到哪里去。相当的复杂,从理论上开始就是这样了。这是一个没有经过实践就搞出来的一个东西。然后开始炒作。

  • Cloud Computing – 这是一个靠炒作出现的东西。这个东西也就是说,我们可以使用不同的调备,比如电脑,平板电脑,手机,移动设备随时随地做想做的事。Google的Chrome笔记本的广告展示了这项技术,但是,把工作结果放在云端的人会有多少呢。更多的人更喜欢的是去使用那些自己可以控制的电脑或平台。Google在这点上做的明显不如Amazon,像Amazon EC2平台,你可以在世界上任何一个角落随时随地的去启动你那台远程的系统。(更新(2011/1/29)解释一下,关于云计算,在写下这篇文章的时候我本来有点拿不定主意的,后来回顾了一下历史,如COM啊,ActiveX啊,EJB啊,当时感觉都是很强的东西,但是最终也只是被炒作的。云计算,我不知道未来怎么样,从今天来看,这项技术在今天存在炒作的情况——中移动云,阿里云,到处都是云,在云面前,神马都是浮云了。

  • SOA – Service Oriented Architecture – 这是一个没有人真正知道是什么玩意的概念。炒作了很多年,很多人都试图去了解它,但最后的结果是打个哈欠,看别的东西去了。现在没有人提了。中国一些银行在IBM的鼓动下搞了很多所谓的SOA应用,结果是系统很复杂,当然,也再离不开IBM了。

阅读剩余部分...

    Page :
  1. 1
  2. 2
  3. 3