Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Tambahkan kolom ke semua MySQL Select Query dalam satu kesempatan

Buat Interceptor DB Khusus

package com.felix.dao.interceptor;
import org.hibernate.EmptyInterceptor;

public class CustomDBInterceptor extends EmptyInterceptor {

  @Override
  public String onPrepareStatement(String sql) {
    String commentStr = "/*Comment*/"
    return super.onPrepareStatement(commentStr+sql);
  }

}

Dalam file Konteks Musim Semi, konfigurasikan Interceptor untuk pabrik sesi:

<bean id="customDBInterceptor" class="com.felix.dao.interceptor.CustomDBInterceptor"/>
<bean id="sessionFactory"
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="dataSource" ref="datasource" />
    <property name="entityInterceptor">
        <ref bean="customDBInterceptor"/>
    </property>
    ...
</bean>

Pastikan Custom DB Interceptor tidak memiliki ketergantungan siklik pada sessionFactory. Dengan hal di atas, semua kueri yang dijalankan melalui pabrik sesi, dicegat, dimodifikasi, dan kemudian diteruskan ke onPrepareStatement metode.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara menggunakan variabel pengguna MySQL dengan ADO.NET

  2. Kata sandi MySQL () berfungsi untuk PHP

  3. 1064 kesalahan dalam CREATE TABLE ... TYPE=MYISAM

  4. pandas — Menggabungkan kolom string tidak berfungsi (bug?)

  5. Mengapa TRANSAKSI / KOMIT meningkatkan kinerja begitu banyak dengan PHP/MySQL (InnoDB)?