Maison  >  Questions et réponses  >  le corps du texte

java编程思想读书笔记 - Java编程思想习题请教: 使用动态代理来编写一个系统以实现事务?

大家好,小弟最近在学习《Java编程思想》第四版,学习到第十四章《类型信息》中动态代理的时候,在习题23后遇到一个问题,使用动态编写一个系统以实现事务,不知道该如何解决,特来请教大家,题目如下:

使用动态代理来编写一个系统以实现事务,其中,代理在被代理的调用执行成功(不抛出任何异常)执行提交,而在执行失败时执行回滚。你的提交和回滚都针对一个外部的文本文件,该文件不在Java异常的控制范围之内。你必须注意操作的原子性。

该题目英文原文如下:

谢谢大家。

高洛峰高洛峰2744 Il y a quelques jours602

répondre à tous(1)je répondrai

  • 黄舟

    黄舟2017-04-18 10:50:51

    Je pense que la difficulté du traitement des transactions réside dans la partie "récupération" Pour pouvoir récupérer, la scène doit être sauvegardée, ou des opérations inverses efficaces doivent être fournies. Bien entendu, les opérations inverses appartiennent généralement à la catégorie commerciale, puisque la mise en œuvre d'un proxy dynamique est ici requise, la récupération d'état devrait être relativement appropriée.

    Pour une opération sur un fichier, le moyen le plus simple et le plus grossier de sauvegarder l'état est de sauvegarder la sauvegarde du fichier. Donc je pense que ce proxy dynamique est comme ça

    1. Enregistrez une sauvegarde du fichier que vous souhaitez exploiter

    2. Appeler le code proxy pour effectuer ses propres opérations commerciales (tout en surveillant les exceptions)

    3. Restaurez la sauvegarde du fichier si une exception se produit, sinon ignorez cette étape

    4. Supprimer la sauvegarde du fichier

    Voyez si ma réponse peut vous donner une idée

    répondre
    0
  • Annulerrépondre