import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileWriter; import java.io.IOException; import java.util.Iterator; import java.util.Map; import java.util.Properties; public class PropertyReader { private static Properties pro = null; public static final String CONFIG_FILE = "kk-config.properties"; public static final String SQL_FILE = "kk-config.sql"; public static final String DB_NAME = "mts_konakart"; public static final String TABLE_NAME = "configuration"; static { pro = new Properties(); try { pro.load(new FileInputStream(CONFIG_FILE)); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void execute() { try { FileWriter fileWriter = new FileWriter(SQL_FILE); BufferedWriter bw = new BufferedWriter(fileWriter); bw.write("USE " + DB_NAME + ";"); bw.newLine(); Iterator it = pro.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = (Map.Entry) it.next(); Object key = entry.getKey(); Object value = entry.getValue(); String sql = "UPDATE " + TABLE_NAME + " SET configurationvalue='" + value + "' WHERE configuration_key='" + key + "';"; System.out.println(sql); bw.append(sql); bw.newLine(); } bw.close(); } catch (IOException e) { e.printStackTrace(); } } }<?xml version="1.0"?>
<project name="kk-config" basedir="." default="update"> <property name="project.dir" value="." /> <property name="src.dir" value="src"/> <property name="classes.dir" value="classes"/> <property name="kk.sql" value="kk-config.sql" /> <target name="create-sql" description="Create the sql file" depends="jar"> <taskdef name="propertyreader" classname="PropertyReader" classpath="${ant.project.name}.jar"/> <propertyreader/> </target> <target name="clean" description="Delete all generated files"> <delete dir="${classes.dir}" failοnerrοr="false"/> <delete file="${ant.project.name}.jar"/> <delete file="${ant.project.name}.sql"/> </target> <target name="compile" description="Compiles the Task"> <mkdir dir="${classes.dir}"/> <javac srcdir="${src.dir}" destdir="${classes.dir}" includeantruntime="on"/> </target> <target name="jar" description="JARs the Task" depends="compile"> <jar destfile="${ant.project.name}.jar" basedir="${classes.dir}"/> </target> <target name="update" depends="create-sql"> <sql driver="org.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost:3306/mydb" userid="root" password="abc123_" src="${kk.sql}" /> </target> </project>