FireStorm/DAO是一個java持續(xù)層代碼生成器,它利用數(shù)據(jù)庫的Schema定義或者直接通過JDBC連接數(shù)據(jù)庫,從而生成基于DAO模式的完整的數(shù)據(jù)持久化層代碼。 2.X版本可以生成基于CMP,JDO的持續(xù)層代碼以及針對JBoss、BEA WebLogic 和 IBM WebSphere 等j2ee服務(wù)器的jsp代碼。 最新的3.0版本還可以生成基于hibernate的持續(xù)層代碼,同時可以生成基于struts1.1的form action和form bean代碼。 今天從官方網(wǎng)站上down下來試用了一下,發(fā)現(xiàn)的確很方便??上褂迷囉玫膌icense有很多限制:只能最多生成3張表的DAO;有使用時間限制;而且不能自己定制代碼生成。于是在網(wǎng)上狂搜一番也沒有找到破解版,想自己破解,看了一下,它的jar包使用混淆器進(jìn)行了代碼保護(hù)。無奈之下,只好在網(wǎng)上再搜文章,有些寫破解方法都是針對老版本的??赡苁?.0的版本太新,別人還沒有來得及破解。 網(wǎng)上有篇文章是使用jboss.com的javassist對class二進(jìn)制文件進(jìn)行修改的方法,看了一遍,總感覺有些麻煩. 仔細(xì)研究發(fā)現(xiàn)FireStorm是使用java.security.Signature 對公鑰進(jìn)行驗(yàn)證,而FireStorm3.0有自帶jre的版本,所以我把java.security.Signature.java中的verify() 方法修改為直接 return true; 編譯后覆蓋rt.jar包中的class文件。再把我的試用license修改了一下,再次啟動FireStorm,OK! 這次總算變成正式版了。 ![]() 最后我用FireStorm把公司一個基于hibernate的項(xiàng)目代碼自動生成了一次,發(fā)現(xiàn)60%~70%左右的持續(xù)層代碼幾乎不用編寫了。 http://www./products/firestorm/ |
|