📄 hibernateentitymodelcodegenerator.java
字号:
package com.cownew.studio.modelDev.codeGen.hib;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.jdt.core.IPackageFragment;
import org.eclipse.jdt.core.JavaModelException;
import com.cownew.studio.modelDev.codeGen.AbstractEntityModelCodeGenerator;
import com.cownew.studio.modelDev.codeGen.CodeGenException;
import com.cownew.studio.modelDev.common.CommonUtils;
import com.cownew.studio.modelDev.common.EntityModelBean;
public class HibernateEntityModelCodeGenerator extends
AbstractEntityModelCodeGenerator
{
@Override
protected void generateConfigFile(EntityModelBean bean)
throws CodeGenException
{
IProgressMonitor monitor = new NullProgressMonitor();
CodeGenArgInfo argInfo = new CodeGenArgInfo();
argInfo.setModelBean(bean);
argInfo.setProject(getTargetFolder().getJavaProject().getProject());
argInfo.setNameStrategy(new DefaultNameStrategy());
HibernateEMFConfigGenerator generator = new HibernateEMFConfigGenerator();
String code = generator.generate(argInfo);
try
{
IPackageFragment pck = getTargetFolder().createPackageFragment(
bean.getPackageName(), true, monitor);
IFolder folder = CommonUtils.packageFragementToFolder(pck);
String configFileName = argInfo.getNameStrategy()
.entityNameToOVName(bean.getName())
+ ".hbm.xml";
final IFile file = folder.getFile(new Path(configFileName));
if (isOverrieExistsFile() == false && file.exists())
{
return;
}
CommonUtils.saveToFile(file, code, monitor);
} catch (JavaModelException e)
{
throw CodeGenException.toCodeGenException(e);
} catch (CoreException e)
{
throw CodeGenException.toCodeGenException(e);
}
}
@Override
protected void generateSrcCode(EntityModelBean bean)
throws CodeGenException
{
IProgressMonitor monitor = new NullProgressMonitor();
CodeGenArgInfo argInfo = new CodeGenArgInfo();
argInfo.setModelBean(bean);
argInfo.setProject(getTargetFolder().getJavaProject().getProject());
argInfo.setNameStrategy(new DefaultNameStrategy());
HibernateEMFSrcCodeGenerator generator = new HibernateEMFSrcCodeGenerator();
String code = generator.generate(argInfo);
try
{
IPackageFragment pck = getTargetFolder().createPackageFragment(
bean.getPackageName(), true, monitor);
String objectValueName = argInfo.getNameStrategy()
.entityNameToOVName(bean.getName())
+ ".java";
IFolder folder = CommonUtils.packageFragementToFolder(pck);
final IFile file = folder.getFile(new Path(objectValueName));
if (isOverrieExistsFile() == false && file.exists())
{
return;
}
pck.createCompilationUnit(objectValueName, code, true, monitor);
} catch (JavaModelException e)
{
throw CodeGenException.toCodeGenException(e);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -