/** 导入需要的类 */ private void addImport(Interface interfaces, TopLevelClass topLevelClass) { interfaces.addImportedType(pojoType); interfaces.addImportedType(pojoCriteriaType); interfaces.addImportedType(listType); topLevelClass.addImportedType(daoType); topLevelClass.addImportedType(interfaceType); topLevelClass.addImportedType(pojoType); topLevelClass.addImportedType(pojoCriteriaType); topLevelClass.addImportedType(listType); topLevelClass.addImportedType(slf4jLogger); topLevelClass.addImportedType(slf4jLoggerFactory); if (enableAnnotation) { topLevelClass.addImportedType(service); topLevelClass.addImportedType(autowired); } }
@Override public void addMapperAnnotations(Interface interfaze, Method method) { FullyQualifiedJavaType fqjt = new FullyQualifiedJavaType(introspectedTable.getMyBatis3SqlProviderType()); interfaze.addImportedType( new FullyQualifiedJavaType("org.apache.ibatis.annotations.DeleteProvider")); // $NON-NLS-1$ StringBuilder sb = new StringBuilder(); sb.append("@DeleteProvider(type="); // $NON-NLS-1$ sb.append(fqjt.getShortName()); sb.append(".class, method=\""); // $NON-NLS-1$ sb.append(introspectedTable.getDeleteByExampleStatementId()); sb.append("\")"); // $NON-NLS-1$ method.addAnnotation(sb.toString()); }
@Override public void addMapperAnnotations(Interface interfaze, Method method) { interfaze.addImportedType( new FullyQualifiedJavaType("org.apache.ibatis.annotations.Delete")); // $NON-NLS-1$ method.addAnnotation("@Delete({"); // $NON-NLS-1$ StringBuilder sb = new StringBuilder(); javaIndent(sb, 1); sb.append("\"delete from "); // $NON-NLS-1$ sb.append(escapeStringForJava(introspectedTable.getFullyQualifiedTableNameAtRuntime())); sb.append("\","); // $NON-NLS-1$ method.addAnnotation(sb.toString()); boolean and = false; Iterator<IntrospectedColumn> iter = introspectedTable.getPrimaryKeyColumns().iterator(); while (iter.hasNext()) { IntrospectedColumn introspectedColumn = iter.next(); sb.setLength(0); javaIndent(sb, 1); if (and) { sb.append(" \"and "); // $NON-NLS-1$ } else { sb.append("\"where "); // $NON-NLS-1$ and = true; } sb.append(escapeStringForJava(getEscapedColumnName(introspectedColumn))); sb.append(" = "); // $NON-NLS-1$ sb.append(getParameterClause(introspectedColumn)); sb.append('\"'); if (iter.hasNext()) { sb.append(','); } method.addAnnotation(sb.toString()); } method.addAnnotation("})"); // $NON-NLS-1$ }