Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Thêm một cột vào tất cả các Truy vấn Chọn MySQL trong một lần chụp

Tạo một công cụ đánh chặn DB tùy chỉnh

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);
  }

}

Trong tệp ngữ cảnh mùa xuân, hãy định cấu hình Bộ chặn cho nhà máy phiên:

<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>

Đảm bảo Bộ đánh chặn DB tùy chỉnh không có sự phụ thuộc theo chu kỳ vào sessionFactory. Với những điều trên, tất cả các truy vấn được kích hoạt thông qua nhà máy phiên, được chặn, sửa đổi và sau đó được chuyển đến onPrepareStatement phương pháp.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để kết nối MySQL với Java?

  2. Điều chỉnh cài đặt múi giờ mặc định trên RDS

  3. cố gắng để có được tài sản của chủ thể bên trong

  4. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Lỗi liên kết truyền thông

  5. Kết nối JDBC MySQL bằng Unix Socket