Rumah pangkalan data tutorial mysql 根据JavaBean生成数据库增删改查的SQL语句

根据JavaBean生成数据库增删改查的SQL语句

Jun 07, 2016 pm 03:23 PM
javabean sql pangkalan data menjana kenyataan

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入 根据JavaBean生成数据库增删改查的SQL语句。 1,genInsertSQL(Object bean); 2,genUpdateSQL(Object bean); 3,genDeleteSQL(Object bean); 4,genFindAllSQL(String tableName); 5,genFindAllSQL(String

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入

        根据JavaBean生成数据库增删改查的SQL语句。
    1,genInsertSQL(Object bean);
    2,genUpdateSQL(Object bean);
    3,genDeleteSQL(Object bean);
    4,genFindAllSQL(String tableName);
    5,genFindAllSQL(String tableName)
     import java.io.Serializable;

    import java.lang.reflect.Field;

    import java.text.SimpleDateFormat;

    import java.util.ArrayList;

    import java.util.Date;

    import java.util.Hashtable;

    import java.util.List;

    import com.domain.AG;

    /**

     * FOR JDBC RUID Operation,This class can generate SQL by parameter of

     *  Object(update/insert/delete)

     *  or Class(select)

     *

     *@category com.util

     *@class SQLUtil

     *@author zhusheng3@126.com

     *@date 2008-6-7 下午04:08:40

     *@see

     */

    public class SQLUtil

    {

         private final static String database_table_prefix="database.table.prefix";

          private String pkColumnName="SN";

          public SQLUtil()

          {

              //pkColumnName is vary of  Table,so mothods which need pkColumn can not use static

              this.pkColumnName="SN";

          }

          public SQLUtil(String pkColumnName)

          {

              //pkColumnName is vary of  Table,so mothods which need pkColumn can not use static

              this.pkColumnName=pkColumnName;

          }

            /**

             * @param Object  the object for insert

             * @return an insert String like below:

             *  insert into vmm_ag(sn,domainname,modifydate,testDouble)

             *  values(5,'domainname5',to_date('20080121','YYYYMMDD'),22.4)

             */

            public static String genInsertSQL(Object bean)

            {

                List fields=BeanUtil.getFields(bean);

                List values=BeanUtil.getValues2String(bean);

                Hashtable fieldsTypes = BeanUtil.getFieldsAndTypes(bean);

                //System.out.println("fields.size():"+fields.size()+"--values.size():"+values.size());

                if(fields.size() !=values.size())

                {

                    String error="ERROR:genInsertSQL(bean)->fields's size does not match values' size,bean:"+bean+

                    "\n fields.size():"+fields.size()+"--values.size():"+values.size();

                    System.err.println(error);

                    return error;

                }

                //get database table Name

                String tableName=getTableName(bean);

                String insertSQL="insert into "+tableName+" (";

                for (int i = 0; i

                {

                    //if value of this field is null,then ignore this field

                    if(values.get(i) !=null)

                    {

                        insertSQL+=fields.get(i);

                        //if not the last field,then add ","

                        if(i!=fields.size()-1)

                        {

                            insertSQL+=",";

                        }

                    }

                }

                insertSQL+=")";

                insertSQL+="values (";

                for (int j = 0; j

                {

                    String value="";

                    String typeOfThisField=(String) fieldsTypes.get(fields.get(j));

                    if(typeOfThisField.equalsIgnoreCase("String"))

                    {   //when String ,add '' around the string ,like:'tempString'

                        value="'"+values.get(j)+"'";

                    }

 

[1] [2] [3] 

根据JavaBean生成数据库增删改查的SQL语句

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah perbezaan antara HQL dan SQL dalam rangka kerja Hibernate? Apakah perbezaan antara HQL dan SQL dalam rangka kerja Hibernate? Apr 17, 2024 pm 02:57 PM

Apakah perbezaan antara HQL dan SQL dalam rangka kerja Hibernate?

Bagaimanakah bahasa Go melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data? Bagaimanakah bahasa Go melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data? Mar 27, 2024 pm 09:39 PM

Bagaimanakah bahasa Go melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data?

Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Jun 04, 2024 pm 01:42 PM

Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP

Bagaimanakah Hibernate melaksanakan pemetaan polimorfik? Bagaimanakah Hibernate melaksanakan pemetaan polimorfik? Apr 17, 2024 pm 12:09 PM

Bagaimanakah Hibernate melaksanakan pemetaan polimorfik?

iOS 18 menambah fungsi album 'Dipulihkan' baharu untuk mendapatkan semula foto yang hilang atau rosak iOS 18 menambah fungsi album 'Dipulihkan' baharu untuk mendapatkan semula foto yang hilang atau rosak Jul 18, 2024 am 05:48 AM

iOS 18 menambah fungsi album 'Dipulihkan' baharu untuk mendapatkan semula foto yang hilang atau rosak

Analisis prinsip asas sistem pengurusan pangkalan data MySQL Analisis prinsip asas sistem pengurusan pangkalan data MySQL Mar 25, 2024 pm 12:42 PM

Analisis prinsip asas sistem pengurusan pangkalan data MySQL

Apr 09, 2024 pm 12:36 PM

Petua dan amalan untuk mengendalikan aksara Cina bercelaru dalam pangkalan data dengan PHP Petua dan amalan untuk mengendalikan aksara Cina bercelaru dalam pangkalan data dengan PHP Mar 27, 2024 pm 05:21 PM

Petua dan amalan untuk mengendalikan aksara Cina bercelaru dalam pangkalan data dengan PHP

See all articles