Приложение SpringBoot и Hibernate (entityManager имеет значение null)

У меня есть пример приложения SprintBoot

package com.example.demo2;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;

@SpringBootApplication
@EnableJpaRepositories(basePackages = "com.example.demo2")
public class Demo2Application {

    public static void main(String[] args) {
        SpringApplication.run(Demo2Application.class, args);
    }

}

Мои application.properties, здесь источник данных конфигурации и спящий режим jpa

spring.datasource.url= jdbc:postgresql://localhost:5432/testdb
spring.datasource.username= admin
spring.datasource.password= admin

spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation= true
spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.PostgreSQLDialect
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy
spring.jpa.hibernate.ddl-auto= update

и у меня есть простой метод контроллера

    @GetMapping("/get")
    public List<Movie> getMethod(){
        return myService.myMethod();
    }

и обслуживание


@Service
public class MyService {

    @PersistenceContext
    private EntityManager entityManager;
    @Transactional
    public List<Movie> myMethod() {
        List<Movie> myList = entityManager.createQuery("from Movie").getResultList();
        return myList;
    }
}

Результат

java.lang.NullPointerException: Cannot invoke "javax.persistence.EntityManager.createQuery(String)" because "this.entityManager" is null

Мне нужно простое приложение Springboot и Hibernate с инициализированным entityManager для запроса к БД.

Что я делаю не так?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
59
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я решил свою проблему, просто заменив весь импорт javax.persistence на jakarta.persistence

Другие вопросы по теме

Похожие вопросы

Ошибка при отправке списка массивов из класса Java для отображения в JSP
Почему значения RGB cv2.imread отличаются от значений RGB Java ImageIO.read?
Spring Boot Microservices — сервер конфигурации не может получить файл свойств (добавление источника свойства: ресурс конфигурации) в Docker
Kotlin перегружает лямбда-выражения, которые возвращают значение VS, которые этого не делают. Java, Groovy работает, а Kotlin нет
Prometheus не отображает пользовательские метрики из службы localhost на конечной точке `/metrics`
Проблема с получением большого двоичного объекта из хранилища Azure: Spring Boot
TableView не заполняется из ArrayList
Exe, созданный с помощью Jpackage, загружает неправильную jvm.dll
Как бы вы назвали метод Java, который принимает лямбду в качестве аргумента из нативной стороны JNI?
Spring Security 6.0 возвращает ошибку 403 при вызове с использованием почтового запроса с axios, но отлично работает в почтальоне