java编程思想读书笔记 - Java编程思想习题请教: 使用动态代理来编写一个系统以实现事务?
高洛峰
高洛峰 2017-04-18 10:48:51
0
1
575

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

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

该题目英文原文如下:

谢谢大家。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous (1)
黄舟

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

    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!