1. По поводу deprecated:
@deprecated All functionality has been moved to {link Configuration}
т.е. просто поменяйте AnnotationConfiguration на Configuration (Configuration лежит в том же пакете).
2. По поводу второго примера, там используется jpa в котором есть некоторые отличия от работы с hibernate напрямую. А также там настройка spring контекста осуществляется через «java config», или с этим вопросов нет?
Если нужен рабочий пример, то я могу его привести, но у меня используется a) TestNG b) JPA+hibernate и spring-managed транзакции. Не запутает ли это ещё больше?