精华内容
下载资源
问答
  • 参照数据库配置页面获取配置的动态生效、重启生效和禁止修改信息。 动态生效和重启生效的配置都会写入配置文件中,成为固定的配置。 重启生效和禁止修改配置的详细信息会通过错误信息返回值通知。 若配置的值和...

    语法

    db.updateConf( <config>, [options] )

    更新节点配置,并进行配置动态生效。重启生效的配置需重启后生效,禁止修改的配置则不允许修改。

    参数描述

    Note:

    • 参照数据库配置页面获取配置的动态生效、重启生效和禁止修改信息。
    • 动态生效和重启生效的配置都会写入配置文件中,成为固定的配置。
    • 重启生效和禁止修改配置的详细信息会通过错误信息返回值通知。
    • 若配置的值和数据库当前值相同,则重启生效和禁止修改配置不会报错。
    • 无命令位置参数时,缺省对所有节点生效,即使用 {Global:true} 的命令位置参数。
    • 可以通过 snapshot 获取指定节点的当前配置。

    返回值

    无返回值,出错抛异常,并输出错误信息。可以通过 getLastErrObj() 或 getLastErrMsg() 获取错误信息 或 通过 getLastError() 获取错误码。 更多错误可以参考常见错误处理指南 。

    版本信息

    2.9及以上版本

    点击巨杉数据库文档中心了解更多信息

    展开全文
  • 参照数据库配置页面获取配置的动态生效、重启生效和禁止修改信息。 重启生效和禁止修改配置的详细信息会通过错误信息返回值通知。 若配置的默认值和数据库当前值相同,则重启生效和禁止修改配置不会报错。 无命令...

    语法

    db.deleteConf( <config>, [options] )

    恢复配置默认值,进行配置动态生效,并将配置从配置文件中删除。重启生效的配置需重启后生效,禁止修改的配置则不允许修改。

    参数描述

    Note:

    • 参照数据库配置页面获取配置的动态生效、重启生效和禁止修改信息。
    • 重启生效和禁止修改配置的详细信息会通过错误信息返回值通知。
    • 若配置的默认值和数据库当前值相同,则重启生效和禁止修改配置不会报错。
    • 无命令位置参数时,缺省对所有节点生效,即使用 {Global:true} 的命令位置参数。
    • 可以通过 snapshot 获取指定节点的当前配置。

    返回值

    无返回值,出错抛异常,并输出错误信息。可以通过 getLastErrObj() 或 getLastErrMsg() 获取错误信息 或 通过 getLastError() 获取错误码。 更多错误可以参考常见错误处理指南 。

    版本信息

    2.9及以上版本

    点击巨杉数据库文档中心了解更多信息

    展开全文
  • 系统加载字节码是从下层往上层找的 如果父类没有就继续找父类 找到根加载器之后再往下加载 系统不允许操作根加载器 所以返回值永远是null、 动态代理 作用: 1:对某个方法增强。 2:在不污染源类的...
    在代码中调用close时也可以还连接

    对close方法进行修改。


    类加载器



    系统加载字节码是从下层往上层找的  如果父类没有就继续找父类 找到根加载器之后再往下加载    系统不允许操作根加载器  所以返回值永远是null、


    动态代理

    作用:
    1:对某个方法增强。
    2:在不污染源类的情况下,修改原类的行为。 
    代理类,与被代理类,两个不同的实体。
    要求:
    所有被代理的类,都必须要拥有一个接口。

    本质上是对方法进行修改,但其实它是通过反射执行的某个方法。

    动态代理的核心类

    Proxy – 用于创建给定接口的子类,在内存中动态的创建。$Proxy0. - 此类只使用一次。
    	InovocationHandler – 执行句柄。在执行时可以获取被代理类的所有反射。 - 用户的每一次调用都会被这个句柄拦截到。
    

    代理举例

    被代理类实现的接口

    1. public interface IGDG {  
    2.     String talk();  
    3. }  


    被代理类
    1. public class GDG implements IGDG {  
    2.     int nu = 0;  
    3.     public GDG(int nm) {  
    4.         nu=nm;  
    5.     }  
    6.     public String talk(){  
    7.         System.err.println("5.1:开始讲了....."+nu);  
    8.         return "你好:"+nu;  
    9.     }  
    10. }  





    代理实现
    1. public class ProxyDemo {  
    2.     public static void main(String[] args) throws Exception {  
    3.         final Object o = new GDG(3);//匿名内部类只能访问final成员  
    4.         System.err.println("o1 is:"+o+","+o.getClass());//GDG@4a5ab2,class cn.itcast.demo.GDG  
    5.         //使用Proxy类创建IGDG接口的子类  
    6.         Object proxyedObj =   
    7.                 Proxy.newProxyInstance(ProxyDemo.class.getClassLoader(), //用哪一个类加载器在内存中加载一个IGDG的子类  
    8.                                       new Class[]{IGDG.class},//创建哪些接口的子类   
    9.                                       new InvocationHandler(){  
    10.                                         public Object invoke(Object proxy,  
    11.                                                 Method method, Object[] args)  
    12.                                                 throws Throwable {  
    13.                                             System.err.println("你正在执行的方法名为:"+method.getName());  
    14.                                             Object returnValue = method.invoke(o,args);  
    15.                                             return returnValue;  
    16.                                         }  
    17.                                     });  
    18.         //将proxyedObj强转成IGDG  
    19.         IGDG o2 = (IGDG) proxyedObj;  
    20.         o2.talk();  
    21.         System.err.println("-------");  
    22.         System.err.println("o2 is:"+o2+","+o2.getClass());  
    23.     }  




    仔细讲解
    1. public class ProxyDemo2 {  
    2.     public static void main(String[] args) throws Exception {  
    3.         final GDG o = new GDG(4);  
    4.         System.err.println("1:声明被代理的对象"+o+","+o.getClass());  
    5.         Object proxyedObj =   
    6.                 Proxy.newProxyInstance(  
    7.                         ProxyDemo2.class.getClassLoader(),  
    8.                         new Class[]{IGDG.class},//必须填接口  
    9.                         new InvocationHandler() {  
    10.                             public Object invoke(Object proxy, Method method, Object[] args)  
    11.                                     throws Throwable {  
    12.                                 System.err.println("5:正在调用的方法是:"+method.getName());//talk  
    13.                                 Object returnValue = method.invoke(o,args);  
    14.                                 System.err.println("6:通过反射调用目标(被代理类)类的方法成功,返回值是:"+returnValue);  
    15.                                 return "你不好";  
    16.                             }  
    17.                         }  
    18.                     );  
    19.           
    20.         System.err.println("2:代理类创建完成:"+proxyedObj.getClass());  
    21.         System.err.println("3:强转成IGDG接口");  
    22.         IGDG o2 = (IGDG) proxyedObj;  
    23.         System.err.println("4:调用代理类的talk方法");  
    24.         String back = o2.talk();  
    25.         System.err.println("7:方法都调用完成\t"+back);  
    26.     }  
    27. }  



    1. 输出结果  
    2. 1:声明被代理的对象cn.itcast.demo.GDG@1c68b6f,class cn.itcast.demo.GDG  
    3. 2:代理类创建完成:class com.sun.proxy.$Proxy0  
    4. 3:强转成IGDG接口  
    5. 4:调用代理类的talk方法  
    6. 5:正在调用的方法是:talk  
    7. 5.1:开始讲了.....4  
    8. 6:通过反射调用目标(被代理类)类的方法成功,返回值是:你好:4  
    9. 7:方法都调用完成   你不好  


    代理list

    1. public class ListProxy {  
    2.     public static void main(String[] args) throws Exception {  
    3.         final List list = new ArrayList();  
    4.         //声明代理  
    5.         Object oo = Proxy.newProxyInstance(  
    6.                 ListProxy.class.getClassLoader(),  
    7.                 new Class[]{List.class}  
    8.                 ,  
    9.                 new InvocationHandler() {  
    10.                     public Object invoke(Object proxy, Method method, Object[] args)  
    11.                             throws Throwable {  
    12.                         //执行被代理类的方法  
    13.                         System.err.println("正在执行的方法是:"+method.getName());  
    14.                         if(args!=null){  
    15.                             for(Object arg:args){  
    16.                                 System.err.println("参数:"+arg);  
    17.                             }  
    18.                         }  
    19.                         Object returnVal = method.invoke(list,args);  
    20.                         if(method.getName().equals("size")){//调用的是否是size方法  
    21.                             System.err.println("其实是:"+returnVal);  
    22.                             return 1000;  
    23.                         }  
    24.                         return returnVal;  
    25.                     }  
    26.                 });  
    27.           
    28.         List list2 = (List) oo;  
    29. //      list2.add("Jack");  
    30. //        
    31. //      int size = list2.size();  
    32. //      System.err.println("大小是:"+size);  
    33. //        
    34.         System.err.println("-----------");  
    35.         list.add("Rose");//1  
    36.         list.add("Jack");  
    37.         System.err.println("=====================");  
    38.         int size = list2.size();  
    39.         System.err.println("大小是:"+size);//1  
    40.     }  
    41. }  


    代理的任务

    1:在内存中创建某个接口的子类。
    2:拦截所有在代理上执行的方法。( 除了getClass方法。)

    用动态代理书写连接池

    设计:
    代理的目标:原生的connection。
      代理的目的:修改close方法,让close方法不可以关闭连接,且主动收回连接。

    通过动态代理,和线程通讯:
    1:对Cxonnection进行代理。
     2:在获取Connection时,通过同步,如果没有连接时,就让线程进入等待池。
     3:修改close方法,且在还了连接以后唤醒正在等待的线程。


    1. public class ConnUtils4 {  
    2.     //第一步:声明连接池维护所有的连接  
    3.     private static List<Connection> pool = new ArrayList<Connection>();  
    4.     //第二步:静态代码块中创建多个连接  
    5.     static{  
    6.         try{  
    7.             Class.forName("com.mysql.jdbc.Driver");  
    8.             String url = "jdbc:mysql:///db909?characterEncoding=UTF8";  
    9.             for(int i=0;i<3;i++){  
    10.                 final Connection con = DriverManager.getConnection(url,"root","1234");//com.mysql.jdbc.Jdbc4Connection@  
    11.                 //对con对象进行动态代理  
    12.                 Object proxyedCon =   
    13.                         Proxy.newProxyInstance(  
    14.                                 ConnUtils4.class.getClassLoader(),  
    15.                                 new Class[]{Connection.class},  
    16.                                 //声明执行句柄,只对close方法设置拦截  
    17.                                 new InvocationHandler() {  
    18.                                     public Object invoke(Object proxy, Method method, Object[] args)  
    19.                                             throws Throwable {  
    20.                                         if(method.getName().equals("close")){  
    21.                                             System.err.println("有人想关闭连接,不能关,还连接");  
    22.                                             //将proxy再加到pool中,这个proxy就是proxyedCon  
    23.                                             synchronized (pool) {  
    24.                                                 pool.add((Connection) proxy);  
    25.                                                 pool.notify();  
    26.                                             }  
    27.                                             return null;  
    28.                                         }else{  
    29.                                             System.err.println("放行"+method.getName());  
    30.                                             return method.invoke(con, args);  
    31.                                         }  
    32.                                     }  
    33.                                 });  
    34.                   
    35.                   
    36.                   
    37.                   
    38.                   
    39.                   
    40.                 //一定要将代理对象添加到池中去。  
    41.                 pool.add((Connection) proxyedCon);  
    42.             }  
    43.         }catch(Exception e){  
    44.             throw new RuntimeException(e.getMessage(),e);  
    45.         }  
    46.     }  
    47.     /** 
    48.      * 提供一个静态工厂方法返回一个连接 
    49.      */  
    50.     public static Connection getCon(){  
    51.         synchronized (pool) {  
    52.             if(pool.size()==0){  
    53.                 try {  
    54.                     pool.wait();  
    55.                 } catch (InterruptedException e) {  
    56.                     e.printStackTrace();  
    57.                 }  
    58.                 return getCon();  
    59.             }  
    60.             Connection con = pool.remove(0);//返回一个代理的connection对象  
    61.             System.err.println("还有几个:"+pool.size());  
    62.             return con;  
    63.         }  
    64.     }  
    65. }  
    展开全文
  • admin账号密码的动态修改及host限制 增加异步刷日志的功能 增加日志线程、异步刷日志,提高响应时间 支持DBProxy平滑重启功能 支持SQL过滤的黑名单功能 支持对于MySQL后台的...
  • 使用其他数据源的用户登录时,下面这个方法也是有返回值的: ![图片说明](https://img-ask.csdn.net/upload/201611/24/1479978551_385665.png) 百思不得其解!有做过这方面的大神可以给点建议吗? 还有一个问题,...
  • Lejagent-源码

    2021-02-17 22:45:21
    上一篇文章中主要是使用Javassist在JavaAgent中动态修改内容,但是只能写代码中,这里我们使用系统替代和数据库两种方式实现。 一,系统数值: 1.1,入参打印:配置类的方法打印全部入参 1.2,打印返回结果:如果...
  • tx2面

    2021-03-16 19:38:37
    const 可不可以通过地址去修改它的值 C++内存分配模型。堆的空间是谁管理的:gcc分配 gcc编译 gdb调试 共享内存同步:信号量、信号、锁? 网络编程: read的返回值,类型, select epoll是做什么用的 数据库持久化...

    技术栈:C++ linux 网络编程 和数据库

    多态:静态多态、动态多态
    多态:是指通过基类的指针或引用,在运行时动态调用实际绑定对象函数的行为。与之相对应的编译时绑定函数称为静态绑定。多态是面向对象编程的核心思想之一。
    虚表存放在.text段
    对虚函数的调用可能在运行时才被解析:当某个虚函数通过指针或者引用调用时,编译器产生的代码直到运行时才能确定应该调用哪个版本的函数。被调用的函数是与绑定到指针或者引用上的对象的动态类型相匹配的那一个。
    动态绑定只有使用指针或者引用调用虚函数才会发生,通过普通类型的表达式调用虚函数时,在编译时就会把版本确定下来
    动态多态:指的是运行时绑定。
    派生类中虚函数的参数必须与基类一致,返回类型也必须一致。返回类型如果是类本身的指针或引用时,可以不同。只不过这样的返回类型要求基类到父类的类型转换是可以访问的,

    C++11 override关键字,说明是派生类中的虚函数,final关键字,表示后续不能再对这个函数进行覆盖
    如果虚函数使用默认实参,则基类和派生类中定义的默认实参最好一致

    const 可不可以通过地址去修改它的值
    不可以:编译器在编译期间,把有用到该常量的地方都进行了替换。
    const仅在文件内有效,如果想在多个文件内共用就必须加上extern 关键字
    不能修改字面值,但是可以修改指针指向的值

    const  int a=1;
    int *p=&a;
    *p=2;
    此时  *p=2   a=1
    

    https://blog.csdn.net/qq_43015237/article/details/104071695
    不能用一个非常量引用指向一个常量对象

    C++内存空间模型。堆的空间是谁管理的:gcc分配
    堆都是动态分配的,没有静态分配。栈有2中分配方式:静态分配和动态分配。静态分配是由编译器完成的,比如局部变量的分配。动态分配是由malloc函数进行分配,但是栈的动态分配和堆的不同,他的动态分配是由编译器进行释放,无需手动释放。
    https://www.cnblogs.com/daocaoren/archive/2011/06/29/2092957.html

    C++内存分配方式
    栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。在一个进程中,位于用户虚拟地址空间顶部的是用户栈,编译器用它来实现函数的调用。和堆一样,用户栈在程序执行期间可以动态地扩展和收缩。
    堆,就是那些由 new 分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个 new 就要对应一个 delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。堆可以动态地扩展和收缩。

    自由存储区,就是那些由 malloc 等分配的内存块,他和堆是十分相似的,不过它是用 free 来结束自己的生命的。

    全局/静态存储区全局变量和静态变量被分配到同一块内存中,在以前的 C 语言中,全局变量又分为初始化的和未初始化的(初始化的全局变量和静态变量在一块区域,未初始化的全局变量与静态变量在相邻的另一块区域,同时未被初始化的对象存储区可以通过 void* 来访问和操纵,程序结束后由系统自行释放),在 C++ 里面没有这个区分了,他们共同占用同一块内存区。

    常量存储区,这是一块比较特殊的存储区,他们里面存放的是常量,不允许修改(当然,你要通过非正当手段也可以修改,而且方法很多)

    gcc编译:https://www.cnblogs.com/studyskill/p/8335833.html
    gdb调试:https://blog.csdn.net/zxh2075/article/details/76850092

    共享内存同步:信号量、信号、锁?
    信号量、互斥锁、读写锁、自旋锁

    网络编程:
    read的返回值,类型,阻塞啊、连接关闭了啊
    select epoll是做什么用的

    数据库持久化怎么做到的
    读了什么书

    说一说项目

    后面读博还是工作
    对我们部门有什么了解的

    展开全文
  • Java发送from-data类型的请求已封装

    千次阅读 2019-04-24 10:15:06
    代码说明:我将代码封装成工具,然后在接口中进行调用,传入需要发送的数据,特别说明:我的URL是从数据库查出来动态显示的,你们根据自己的需求可以更改传入的参数。另外,我不需要返回值,如果你们需要返回值,做...
  • 修改外部数据库在4.12版中导致的不兼容问题,并增加了对MS SQL Server数据库中image和text字段类型的说明。 7. 修改扩展界面支持库一,禁止透明标签在父窗口刷新时自动刷新,以解决其导致窗口刷新缓冲的问题。 8....
  • 2.2.6 “就地”赋值并修改数据库值 73 2.3 DELETE 75 2.3.1 删除行 75 2.3.2 截断表 76 2.4 高级数据修改技术 77 2.4.1 使用TOP分块修改数据 77 2.4.2 在一条语句中执行INSERT、UPDATE和DELETE 78 ...
  • Java经典编程300例(code)

    千次下载 热门讨论 2013-01-09 10:26:53
    实例287 动态附加数据库 425 实例288 生成SQL数据库脚本 426 实例289 表中字段的描述信息 429 实例290 将员工信息添加到数据表 430 实例291 添加数据时使用数据验证 431 实例292 插入用户登录日志信息 432 实例293 ...
  • 易语言v4.11破解补丁

    2008-09-13 09:21:03
    修改数据库操作支持库有时取不到记录集记录数量的BUG,感谢易友h179635532。 25. 修改树形框“图片组被重新赋值后导致之前动态加入的项目丢失”的BUG,感谢易友菜鸟老大。 26. 修改高级表格“修改单元格数值时...
  • 易语言4.11破解补丁

    千次下载 热门讨论 2008-08-04 09:22:23
    修改数据库操作支持库有时取不到记录集记录数量的BUG,感谢易友h179635532。 25. 修改树形框“图片组被重新赋值后导致之前动态加入的项目丢失”的BUG,感谢易友菜鸟老大。 26. 修改高级表格“修改单元格...
  • 11.4 动态SQL:用ExEC命令动态生成代码 11.5 控制流语句 11.5.1 IFELSE语句 11.5.2 CASE语句 11.5.3 用WHILE语句进行循环 11.5.4 WAITOR语句 11.5.5 TRY/CATCH块 11.6 本章小结 11.7 练习 第12章 存储过程 12.1 ...
  • 11.4 动态SQL:用ExEC命令动态生成代码 11.5 控制流语句 11.5.1 IFELSE语句 11.5.2 CASE语句 11.5.3 用WHILE语句进行循环 11.5.4 WAITOR语句 11.5.5 TRY/CATCH块 11.6 本章小结 11.7 练习 第12章 存储过程 12.1 ...
  • 11.4 动态SQL:用ExEC命令动态生成代码 11.5 控制流语句 11.5.1 IFELSE语句 11.5.2 CASE语句 11.5.3 用WHILE语句进行循环 11.5.4 WAITOR语句 11.5.5 TRY/CATCH块 11.6 本章小结 11.7 练习 第12章 存储过程 12.1 ...
  • 介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作典型应用和数据库应用。全书分5篇24章,共计603个实例和603个经验技巧。每个实例都...
  • 介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作典型应用和数据库应用。全书分5篇24章,共计603个实例和603个经验技巧。每个实例都...
  • 介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作典型应用和数据库应用。全书分5篇24章,共计603个实例和603个经验技巧。每个实例都...
  • 介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作典型应用和数据库应用。全书分5篇24章,共计603个实例和603个经验技巧。每个实例都...
  • 介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作典型应用和数据库应用。全书分5篇24章,共计603个实例和603个经验技巧。每个实例都...
  • 3.12.7 设置模态对话框的返回值 90 3.12.8 使用事件处理过程中的Sender 参数 91 3.12.9 为控件生成多行提示信息 91 3.12.10 生成非矩形窗口 92 3.12.11 移动无标题栏窗口 94 3.12.12 制作动态字幕 95 3.12.13 在窗体...
  • 本书共分三部分、16章,主要介绍Delphi 5集成开发环境,对象Pascal语言、组件、通用编程技术、动态链接库、多线程、多媒体编程、数据库编程、网络编程和Windows API编程等。 目 录 前言 第一部分 Delphi编程基础 ...
  • 实例181 绑定方法返回值 实例182 绑定DataTable对象 9.2 控件绑定数据 实例183 查询商品的详细信息并绑定到服务器控件 实例184 将数据库中菜谱数据绑定到ListBox控件 实例185 将新闻类型绑定到DropDownList控件 实例...
  • 实例181 绑定方法返回值 实例182 绑定DataTable对象 9.2 控件绑定数据 实例183 查询商品的详细信息并绑定到服务器控件 实例184 将数据库中菜谱数据绑定到ListBox控件 实例185 将新闻类型绑定到DropDownList控件 实例...
  • 实例181 绑定方法返回值 实例182 绑定DataTable对象 9.2 控件绑定数据 实例183 查询商品的详细信息并绑定到服务器控件 实例184 将数据库中菜谱数据绑定到ListBox控件 实例185 将新闻类型绑定到DropDownList控件 实例...
  • 11.4 动态SQL:用EXEC命令动态生成代码 288 11.5 控制流语句 293 11.5.1 IF…ELSE语句 293 11.5.2 CASE语句 297 11.5.3 用WHILE语句进行循环 302 11.5.4 WAITOR语句 303 11.5.5 TRY/CATCH块 303 11.6 本章小...
  • 实例124 如何显示和修改数据库中的图像信息 实例125 如何使用水晶报表向导创建报表 第7章 网络应用 实例126 如何下载网页 实例127 如何上下载文件 实例128 如何自制浏览器 实例129 如何检查邮件数量 实例130 ...
  • 书名:《Java开发实战1200例(第I卷)》(清华大学出版社.李钟尉,陈丹丹) PDF格式扫描版,全书分为24章,共817页。...实例269 文件选择对话框指定数据库备份文件 342 实例270 指定打开对话框的文件类型 343 ...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 164
精华内容 65
关键字:

动态修改数据库返回值