Learn the next springjdbc, feel very practical, relatively speaking springjdbc extensibility is quite good
Import Java.sql.connection;import java.sql.preparedstatement;import java.sql.sqlexception;import java.util.List; Import Org.springframework.beans.factory.annotation.autowired;import org.springframework.jdbc.core.JdbcTemplate; Import Org.springframework.jdbc.core.preparedstatementcreator;import Org.springframework.jdbc.support.generatedkeyholder;import Org.springframework.jdbc.support.keyholder;import Com.power.sql.updatesql;import Com.power.sql.updatesql.sqltype;import Com.power.utils.arrayassistant;import Com.power.utils.fieldassistant;import com.power.utils.transformutils;/** * @author Gary Huang * Blog Address ttp:/ /blog.csdn.net/hfmbook/ * * */public class basedao<t >{@Autowiredprivate jdbctemplate JdbcTemplate; Private Updatesql Updatesql; Public Integer Insert (T-t) {updatesql = new Updatesql (Sqltype.insert, T); Keyholder holder = new generatedKeyHolder (); Jdbctemplate.update (new PreparedStatementCreator () {public PreparedStatement CreatepreparedstatemeNT (Connection conn) throws SQLException {PreparedStatement PS = conn.preparestatement (Updatesql.getsqlbuffer (), New String[] {updatesql.getidname ()}); list<object> param = Updatesql.getparam (); int size = Param.size (); for (int x=1;x<=size;x++) {ps.setobject (x, Param.get (x-1)); }return PS;}} , holder); int id = transformutils.toint (holder.getkey ()); Fieldassistant.writefield (Updatesql.getidname (), T, ID, true); Return Transformutils.toint (Holder.getkey ()); }public int update (T t) {updatesql = new Updatesql (sqltype.update, T); int result = Jdbctemplate.update (Updatesql.getsqlbuffer (), Arrayassistant.asarray (Updatesql.getparam ())), return result; }}
Updatesql class in: http://blog.csdn.net/hfmbook/article/details/41290641
Reprint please name Source: Http://blog.csdn.net/hfmbook
Spring JDBC automatically gets the primary key.