Running Environment: DBCP data source is used:
The jar packages I use include:
Commons-collections-3.1.jar commons-dbcp.jar commons-pool.jar ojdbc14.jar (or class12.jar)
If you do not know where to find the jar package, you can create a common Java project, not a web project !~
Right-click --> myeclipse -- add spring capabilities to introduce spring.
SQL:
Drop table t_user; <br/> Create Table t_user <br/> (<br/> userid number not null, <br/> username varchar2 (100) <br/> ); </P> <p> Create sequence seq_t_user <br/> minvalue 1 <br/> maxvalue 999999999999999999999999999 <br/> start with 1 <br/> increment by 1 <br/> cache 20;
Jdbctemplate:
Package COM. jungle. test; </P> <p> Import Java. SQL. preparedstatement; <br/> Import Java. SQL. sqlexception; <br/> Import Java. util. list; <br/> Import Java. util. properties; </P> <p> Import javax. SQL. datasource; </P> <p> Import Org. apache. commons. DBCP. basicdatasourcefactory; <br/> Import Org. springframework. JDBC. core. beanpropertyrowmapper; <br/> Import Org. springframework. JDBC. core. jdbctemplate; <br/> Import Org. sprin Gframework. JDBC. core. preparedstatementsetter; </P> <p> Import COM. jungle. bean. user; </P> <p>/** <br/> * spring template (jdbctemplater example) <br/> **/<br/> public class jdbctemplatetest {<br/> Public static void main (string [] ARGs) throws exception {<br/> properties PS = new properties (); <br/> ps. setproperty ("url", "JDBC: oracle: thin: @ localhost: 1521: Oracle"); <br/> ps. setproperty ("username", "chenl"); <br/> ps. setp Roperty ("password", "chenl"); <br/> ps. setproperty ("driverclassname", "oracle. JDBC. driver. oracledriver "); <br/> datasource DS = basicdatasourcefactory. createdatasource (PS); </P> <p> jdbctemplate = new jdbctemplate (DS ); </P> <p> /******************************** ******************************/</P> <p>/ /1. check <br/> system. out. println (query1 (jdbctemplate); </P> <p> // 2. condition query <br/> system. out. print Ln (query2 (jdbctemplate, 1); </P> <p> // 3. modify <br/> Update (jdbctemplate, new user (1, "aaaaaa"); </P> <p> // 4. add <br/> User user = new user (); <br/> User. setusername ("11 hahaa"); <br/> insert (jdbctemplate, user); </P> <p> // 5. delete <br/> User = new user (); <br/> User. setuserid (2); <br/> Del (jdbctemplate, user ); </P> <p >}</P> <p>/** <br/> * 1. use jdbctemplate <br> <br/> * to locate all <br/> **/<br/> @ suppresswarnings ({"unchecked "," Rawtypes "}) <br/> Public static list <user> query1 (jdbctemplate) {<br/> string SQL =" select * From t_user "; <br/> List <user> List = (list <user>) jdbctemplate. query (SQL, <br/> New beanpropertyrowmapper (user. class); </P> <p> return list; <br/>}</P> <p>/** <br/> * 2. use the jdbctemplate <br> <br/> * condition to locate all detected <br/> **/<br/> @ suppresswarnings ({"unchecked", "rawtypes "}) <br/> Public static lis T <user> query2 (jdbctemplate, int userid) {<br/> string SQL = "select * From t_user where userid =? "; </P> <p> List <user> List = (list <user>) jdbctemplate. query (SQL, <br/> new object [] {userid}, new beanpropertyrowmapper (user. class); </P> <p> return list; <br/>}</P> <p>/** <br/> * 3. use jdbctemplate <br> <br/> * modify data <br/> **/<br/> Public static void Update (jdbctemplate, final user) {<br/> string SQL = "Update t_user set username =? Where userid =? "; </P> <p> jdbctemplate. update (SQL, new preparedstatementsetter () {<br/> @ override <br/> Public void setvalues (preparedstatement PS) throws sqlexception {<br/> ps. setstring (1, user. getUserName (); <br/> ps. setint (2, user. getuserid (); <br/>}< br/>}); <br/>}</P> <p>/** <br/> * 4. use jdbctemplate <br> <br/> * insert data <br/> **/<br/> Public static void insert (jdbctemplate, final user) {<br/> S Tring idsql = "select seq_t_user.nextval from dual"; <br/> final int id = jdbctemplate. queryforint (idsql); // obtain the ID using the sequence </P> <p> string SQL = "insert into t_user (userid, username) values (?,?) "; <Br/> jdbctemplate. update (SQL, new preparedstatementsetter () {<br/> @ override <br/> Public void setvalues (preparedstatement PS) throws sqlexception {<br/> ps. setint (1, ID); <br/> ps. setstring (2, user. getUserName (); <br/>}< br/>}); <br/>}</P> <p>/** <br/> * 4. use jdbctemplate <br> <br/> * delete data <br/> **/<br/> Public static void del (jdbctemplate, final user) {</P> <p> string SQL = "del Ete from t_user where userid =? "; <Br/> jdbctemplate. update (SQL, new preparedstatementsetter () {</P> <p> @ override <br/> Public void setvalues (preparedstatement PS) throws sqlexception {<br/> ps. setint (1, user. getuserid (); <br/>}</P> <p >}); <br/>}< br/>
Namedparameterjdbctemplate:
Package COM. jungle. test; </P> <p> Import Java. util. hashmap; <br/> Import Java. util. list; <br/> Import Java. util. map; <br/> Import Java. util. properties; </P> <p> Import javax. SQL. datasource; </P> <p> Import Org. apache. commons. DBCP. basicdatasourcefactory; <br/> Import Org. springframework. JDBC. core. beanpropertyrowmapper; <br/> Import Org. springframework. JDBC. core. jdbctemplate; <br/> Import Org. springframework. JDBC. core. namedparam. beanpropertysqlparametersource; <br/> Import Org. springframework. JDBC. core. namedparam. namedparameterjdbctemplate; </P> <p> Import COM. jungle. bean. user; </P> <p>/** <br/> * spring (namedparameterjdbctemplate naming template example) <br/> **/<br/> public class namedjdbctemplatetest {<br/> Public static void main (string [] ARGs) throws exception {<br/> properties PS = new properties (); <br/> ps. setproperty ("url", "JDBC: oracle: thin: @ localhost: 1521: Oracle"); <br/> ps. setproperty ("username", "chenl"); <br/> ps. setproperty ("password", "chenl"); <br/> ps. setproperty ("driverclassname", "oracle. JDBC. driver. oracledriver "); <br/> datasource DS = basicdatasourcefactory. createdatasource (PS); </P> <p> namedparameterjdbctemplate namedjdbctemplate = new namedparameterjdbctemplate (<br/> DS); <br/> jdbctemplate = new jdbctemplate (DS ); </P> <p> // 1. condition query <br/> system. out. println (query (namedjdbctemplate, new user (3, "AA"); </P> <p> // 2. insert <br/> User user = new user (); <br/> User. setusername ("xx2"); <br/> insert (jdbctemplate, namedjdbctemplate, user); </P> <p> // 3. modify <br/> Update (namedjdbctemplate, new user (3, "ABC"); </P> <p> // 4. delete <br/> Del (namedjdbctemplate, new user (3, "ABC ")); </P> <p >}</P> <p>/** <br/> * 1. conditional query: jdbctemplate is not used. query (SQL, new <br/> * beanpropertyrowmapper (user. class); <br> <br/> * conditional namedparameterjdbctemplate <br/> **/<br/> @ suppresswarnings ({"unchecked", "rawtypes "}) <br/> Public static list <user> query (<br/> namedparameterjdbctemplate namedjdbctemplate, user) {<br/> string SQL = "select * From t_user where userid =: userid "; <br/> map = new hashmap (); <br/> map. put ("userid", user. getuserid (); <br/> List <user> List = namedjdbctemplate. query (SQL, MAP, <br/> New beanpropertyrowmapper (user. class); </P> <p> return list; <br/>}</P> <p>/** <br/> * 2. insert <br/> **/<br/> Public static void insert (jdbctemplate, <br/> namedparameterjdbctemplate namedjdbctemplate, user) {<br/> string idsql = "select seq_t_user.nextval from dual"; <br/> final int id = jdbctemplate. queryforint (idsql); // obtain the ID using the sequence <br/> User. setuserid (ID); <br/> string SQL = "insert into t_user (userid, username) values (: userid,: username)"; <br/> namedjdbctemplate. update (SQL, new beanpropertysqlparametersource (User); <br/>}</P> <p>/** <br/> * 3. modify <br/> **/<br/> Public static void Update (namedparameterjdbctemplate namedjdbctemplate, <br/> User user) {<br/> string SQL = "Update t_user set username =: username where userid =: userid"; <br/> namedjdbctemplate. update (SQL, new beanpropertysqlparametersource (User); <br/>}</P> <p>/** <br/> * 4. delete <br/> **/<br/> Public static void del (namedparameterjdbctemplate namedjdbctemplate, <br/> User user) {<br/> string SQL = "delete from t_user where userid =: userid"; <br/> namedjdbctemplate. update (SQL, new beanpropertysqlparametersource (User); <br/>}< br/>
Summary:
Package COM. jungle. test; </P> <p> Import Java. util. hashmap; <br/> Import Java. util. list; <br/> Import Java. util. map; <br/> Import Java. util. properties; </P> <p> Import javax. SQL. datasource; </P> <p> Import Org. apache. commons. DBCP. basicdatasourcefactory; <br/> Import Org. springframework. JDBC. core. beanpropertyrowmapper; <br/> Import Org. springframework. JDBC. core. jdbctemplate; <br/> Import Org. springframework. JDBC. c Ore. namedparam. beanpropertysqlparametersource; <br/> Import Org. springframework. JDBC. core. namedparam. namedparameterjdbctemplate; </P> <p> Import COM. jungle. bean. user; </P> <p>/** <br/> * template summary <br> <br/> * summarize the selection of jdbctemplate and namedparameterjdbctemplate <br> <br/> ** /<br/> public class totaltest {</P> <p> Public static void main (string [] ARGs) {<br/>/** <br/> * the following method indicates that only jdbctemplate and namedparameterjdbc are selected during query. All templates are the same <br> add, delete, and modify <br/> * select namedparameterjdbctemplate <br> <br/> * Note: queryforint, the queryforlist method can only be used for basic data types <br> <br/> * (for example, template. queryforlist (SQL, String. class); template. queryforint (SQL, integer. class);) <br> <br/> * Custom type (for example, user) query Method <br/> */<br/>}</P> <p>/** <br/> * 1. use jdbctemplate <br> <br/> * to locate all <br/> **/<br/> @ suppresswarnings ({"unchecked", "rawtypes "}) <br/> Public Static list <user> jdbcqueryall (jdbctemplate) {<br/> string SQL = "select * From t_user "; <br/> List <user> List = (list <user>) jdbctemplate. query (SQL, <br/> New beanpropertyrowmapper (user. class); </P> <p> return list; <br/>}</P> <p>/** <br/> * 2. select namedparameterjdbctemplate for the condition query <br/> **/<br/> @ suppresswarnings ({"unchecked", "rawtypes "}) <br/> Public static list <user> conditionquery (<br/> Namedparameterjdbctemplate namedjdbctemplate, user) {<br/> string SQL = "select * From t_user where userid =: userid"; <br/> map = new hashmap (); <br/> map. put ("userid", user. getuserid (); <br/> List <user> List = namedjdbctemplate. query (SQL, MAP, <br/> New beanpropertyrowmapper (user. class); </P> <p> return list; <br/>}</P> <p>/** <br/> * 2. select jdbctemplate for conditional query <br/> **/<br/> @ suppresswarnings ({"u Nchecked "," rawtypes "}) <br/> Public static list <user> query2 (jdbctemplate, int userid) {<br/> string SQL = "select * From t_user where userid =? "; <Br/> List <user> List = (list <user>) jdbctemplate. query (SQL, <br/> new object [] {userid}, new beanpropertyrowmapper (user. class); </P> <p> return list; <br/>}</P> <p>/** <br/> * 3. insert namedparameterjdbctemplate selected by namedparameterwhen there are many fields <br/> **/<br/> Public static void insert (jdbctemplate, <br/> namedparameterjdbctemplate namedjdbctemplate, user) {<br/> string idsql = "select seq_t_user.nextval from dual"; <br/> final int id = jdbctemplate. queryforint (idsql); // obtain the ID using the sequence <br/> User. setuserid (ID); <br/> string SQL = "insert into t_user (userid, username) values (: userid,: username)"; <br/> namedjdbctemplate. update (SQL, new beanpropertysqlparametersource (User); <br/>}</P> <p>/** <br/> * 4. delete select namedparameterjdbctemplate <br/> **/<br/> Public static void del (namedparameterjdbctemplate namedjdbctemplate, <br/> User user) {<br/> string SQL = "delete from t_user where userid =: userid"; <br/> namedjdbctemplate. update (SQL, new beanpropertysqlparametersource (User); <br/>}</P> <p>/** <br/> * 5. modify and select namedparameterjdbctemplate <br/> **/<br/> Public static void Update (namedparameterjdbctemplate namedjdbctemplate, <br/> User user) {<br/> string SQL = "Update t_user set username =: username where userid =: userid"; <br/> namedjdbctemplate. update (SQL, new beanpropertysqlparametersource (User); <br/>}</P> <p >}< br/>