Проект. Напишите систему, использующую динамические заместители для реализации транзакций: заместитель закрепляет транзакцию, если опосредованный вызов выполнен успешно (т. е. не возбудил исключений) или выполняет отмену в случае неудачи. Закрепление и отмена должны работать для внешних текстовых файлов, что выходит за границы исключений Java. Уделите особое внимание атомарности операций.
Раз 20 перечитал задание, не понимаю, чего хочет автор... В решебнике для книги нет решения этого задания (скорее потому, что оно идёт не как упражнение).
Вопрос: Какой код будет являться эталонной реализацией данного проекта?
Ниже пример того, что я написал, но текстовые файлы у меня нигде не фигурируют, а об атомарности операций я даже не понимаю как думать... Если компьютер резко выключить из сети электропитания, то любая операция считайте не атомарна...
Код:
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
interface Payer {
void pay(Object target);
}
class Human implements Payer {
public void pay(Object target) {
if (Math.random() < 0.5d)
System.out.println(target);
else
throw new RuntimeException();
}
}
public class TransactionMain {
public static class TransactHandler implements InvocationHandler {
private Object proxied;
TransactHandler(Object realObject) {
proxied = realObject;
}
public Object invoke(Object proxy, Method method, Object[] args) {
Object result = null;
try {
result = method.invoke(proxied, args);
} catch (Exception e) {
System.err.println("Shutdown...");
return null;
}
System.out.println("Transaction is committed");
return result;
}
}
public static void castAll(Payer p) {
p.pay(new String("HelloWorld!"));
}
public static void main(String[] args) {
Payer p = new Human();
Payer pp = (Payer) Proxy.newProxyInstance(Payer.class.getClassLoader(), new Class<?>[] { Payer.class },
new TransactionMain.TransactHandler(p));
castAll(pp);
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Все прикрутил и пример вставил, даже реализовал веб-проектНо все время возвращает body=null
Разрабатывается приложение, в котором используются фрагментыПытаюсь реализовать смену фрагмента по нажатию на любой item в recyclerView