全部 文章 问答 分享 共找到9个相关内容
[问答] mysql储存javabean的问题
今天发现第三方api返回的json其中一个字段属性变了,原来是String正常运行,json转成对象使用dao正常存入mysql,但是今天变成了List<javabean>,变成了javabean
2021-05-12 21:19
·
mysql
[问答] 为什么RecyclerView只加载了一条数据
javabean:
[问答] jni---调用javabean类构造方法
救救孩子吧,操作如下:
2020-05-20 18:53
·
jni
[文章] IDEA中通过脚本生成JavaBean类
打开GeneratePOJOs.groovy1.先在中连接mysql数据库importcom.intellij.database.model.DasTableimportcom.intellij.database.util.Caseimportcom.intellij.database.util.DasUtil/**Availablecontextbindings:*SELECTIONIterable<DasObject>*PROJECTproject*FILESfileshelper*/packageName="cn.ithers.blog.pojo;"typeMapping=[(~/(?i)int/):"long",(~/(?i)float|double|decimal|real/):"double",(~/(?i)datetime|timestamp/):"java.sql.Timestamp",(~/(?i)date/):"java.sql.Date",(~/(?i)time/):"java.sql.Time",(~/(?i)/):"String"]FILES.chooseDirectoryAndSave("Choosedirectory","Choosewheretostoregeneratedfiles"){dir->SELECTION.filter{itinstanceofDasTable}.each{generate(it,dir)}}defgenerate(table,dir){defclassName=javaName(table.getName(),true)deffields=calcFields(table)newFile(dir,className+".java").withPrintWriter{out->generate(out,className,fields)}}defgenerate(out,className,fields){out.println"package$packageName"out.println""out.println""out.println"publicclass$className{"out.println""fields.each(){if(it.annos!="")out.println"${it.annos}"out.println"private${it.type}${it.name};"}out.println""fields.each(){out.println""out.println"public${it.type}get${it.name.capitalize()}(){"out.println"return${it.name};"out.println"}"out.println""out.println"publicvoidset${it.name.capitalize()}(${it.type}${it.name}){"out.println"this.${it.name}=${it.name};"out.println"}"out.println""}out.println"}"}defcalcFields(table){DasUtil.getColumns(table).reduce([]){fields,col->defspec=Case.LOWER.apply(col.getDataType().getSpecification())deftypeStr=typeMapping.find{p,t->p.matcher(spec).find()}.valuefields+=[[name:javaName(col.getName(),false),type:typeStr,annos:""]]}}defjavaName(str,capitalize){defs=com.intellij.psi.codeStyle.NameUtil.splitNameIntoWords(str).collect{Case.LOWER.apply(it).capitalize()}.join("").replaceAll(/[^\p{javaJavaIdentifierPart}[_]]/,"_")capitalize||s.length()==1?s:Case.LOWER.apply(s[0])+s[1..-1]}修改后importcom.intellij.database.model.DasTableimportcom.intellij.database.util.Caseimportcom.intellij.database.util.DasUtil/**Availablecontextbindings:*SELECTIONIterable<DasObject>*PROJECTproject*FILESfileshelper*///包名packageName="cn.ithers.blog.pojo;"typeMapping=[(~/(?i)int/):"long",(~/(?i)float|double|decimal|real/):"double",(~/(?i)datetime|timestamp/):"java.sql.Timestamp",(~/(?i)date/):"java.sql.Date",(~/(?i)time/):"java.sql.Time",(~/(?i)/):"String"]FILES.chooseDirectoryAndSave("Choosedirectory","Choosewheretostoregeneratedfiles"){dir->SELECTION.filter{itinstanceofDasTable}.each{generate(it,dir)}}defgenerate(table,dir){defclassName=javaName(table.getName(),true)deffields=calcFields(table)deftargetClassName=className.substring(2,className.size())newFile(dir,targetClassName+".java").withPrintWriter{out->generate(out,targetClassName,fields)}}defgenerate(out,className,fields){out.println"package$packageName"out.println""out.println"importjavax.persistence.Entity;"out.println"importjavax.persistence.Id;"out.println"importjavax.persistence.Table;"out.println"importjavax.persistence.Column;"out.println""out.println"@Entity"out.println"@Table(name=\"tb_"+Case.LOWER.apply(className)+"\")"out.println"publicclass$className{"out.println""fields.each(){if('id'.equals(Case.LOWER.apply(it.name))){it.annos='\t@Id'}elseif('order'.equals(Case.LOWER.apply(it.name))){it.annos="\t@Column(name=\"`"+it.name+"`\")"}else{it.annos="\t@Column(name=\""+it.name+"\")"}if(it.annos!="")out.println"${it.annos}"out.println"\tprivate${it.type}${it.name};\n"}out.println""fields.each(){out.println""out.println"\tpublic${it.type}get${it.name.capitalize()}(){"out.println"\t\treturn${it.name};"out.println"\t}"out.println""out.println"\tpublicvoidset${it.name.capitalize()}(${it.type}${it.name}){"out.println"\t\tthis.${it.name}=${it.name};"out.println"\t}"out.println""}out.println"}"}defcalcFields(table){DasUtil.getColumns(table).reduce([]){fields,col->defspec=Case.LOWER.apply(col.getDataType().getSpecification())deftypeStr=typeMapping.find{p,t->p.matcher(spec).find()}.valuefields+=[[//name:javaName(col.getName(),false),name:col.getName(),type:typeStr,annos:""]]}}defjavaName(str,capitalize){defs=com.intellij.psi.codeStyle.NameUtil.splitNameIntoWords(str).collect{Case.LOWER.apply(it).capitalize()}.join("").replaceAll(/[^\p{javaJavaIdentifierPart}[_]]/,"_")capitalize||s.length()==1?s:Case.LOWER.apply(s[0])+s[1..-1]}使用方法需要选择生成到哪个路径下结果
[文章] 阳光沙滩博客系统脚本生成JavaBean类
GeneratePOJOs.groovyimportcom.intellij.database.model.DasTableimportcom.intellij.database.util.Caseimportcom.intellij.database.util.DasUtil/**Availablecontextbindings:*SELECTIONIterable<DasObject>*PROJECTproject*FILESfileshelper*/packageName="net.sunofbeach.blog.pojo;"typeMapping=[(~/(?i)int/):"long",(~/(?i)float|double|decimal|real/):"double",(~/(?i)datetime|timestamp/):"java.sql.Timestamp",(~/(?i)date/):"java.sql.Date",(~/(?i)time/):"java.sql.Time",(~/(?i)/):"String"]FILES.chooseDirectoryAndSave("Choosedirectory","Choosewheretostoregeneratedfiles"){dir->SELECTION.filter{itinstanceofDasTable}.each{generate(it,dir)}}defgenerate(table,dir){defclassName=javaName(table.getName(),true)deffields=calcFields(table)deftargetClassName=className.substring(2,className.size())newFile(dir,targetClassName+".java").withPrintWriter{out->generate(out,targetClassName,fields)}}defgenerate(out,className,fields){out.println"package$packageName"out.println""out.println"importjavax.persistence.Entity;"out.println"importjavax.persistence.Id;"out.println"importjavax.persistence.Table;"out.println""out.println"@Entity"out.println"@Table(name=\"tb_"+Case.LOWER.apply(className)+"\")"out.println"publicclass$className{"out.println""fields.each(){if('id'.equals(Case.LOWER.apply(it.name))){it.annos='\t@Id'}elseif('order'.equals(Case.LOWER.apply(it.name))){it.annos="\t@Column(name=\"`"+it.name+"`\")"}else{it.annos="\t@Column(name=\""+it.name+"\")"}if(it.annos!="")out.println"${it.annos}"out.println"\tprivate${it.type}${it.name};"}out.println""fields.each(){out.println""out.println"\tpublic${it.type}get${it.name.capitalize()}(){"out.println"\t\treturn${it.name};"out.println"\t}"out.println""out.println"\tpublicvoidset${it.name.capitalize()}(${it.type}${it.name}){"out.println"\t\tthis.${it.name}=${it.name};"out.println"\t}"out.println""}out.println"}"}defcalcFields(table){DasUtil.getColumns(table).reduce([]){fields,col->defspec=Case.LOWER.apply(col.getDataType().getSpecification())deftypeStr=typeMapping.find{p,t->p.matcher(spec).find()}.valuefields+=[[//name:javaName(col.getName(),false),name:col.getName(),type:typeStr,annos:""]]}}defjavaName(str,capitalize){defs=com.intellij.psi.codeStyle.NameUtil.splitNameIntoWords(str).collect{Case.LOWER.apply(it).capitalize()}.join("").replaceAll(/[^\p{javaJavaIdentifierPart}[_]]/,"_")capitalize||s.length()==1?s:Case.LOWER.apply(s[0])+s[1..-1]}
- 1