복붙노트

[SPRING] H2 Console을 임베디드 Spring H2 DB에 연결하는 방법

SPRING

H2 Console을 임베디드 Spring H2 DB에 연결하는 방법

Ok, Im은 개발 용 Spring Embedded H2 데이터베이스가있는 간단한 응용 프로그램을 개발 중입니다. database.xml 빈 설정은 다음과 같다.

<bean id="h2Server" class="org.h2.tools.Server" factory-method="createTcpServer"
        init-method="start" destroy-method="stop" depends-on="h2WebServer">
        <constructor-arg value="-tcp,-tcpAllowOthers,-tcpPort,9092" />
    </bean>
    <bean id="h2WebServer" class="org.h2.tools.Server" factory-method="createWebServer"
        init-method="start" destroy-method="stop">
        <constructor-arg value="-web,-webAllowOthers,-webPort,8082" />
    </bean>

    <jdbc:embedded-database id="dataSource" type="H2" />

H2 데이터베이스가 초기화되고, My app가 작동하고, 엔티티를 생성하고, Tomcat이 시작될 때 H2 db에 저장됩니다 (사용하고 검색하기 때문에 알 수 있습니다). 그러나 H2 콘솔을 보면 엔티티 테이블이 없습니다.

나는 다른 H2 데이터베이스에서 H2 콘솔 포인트를 추측하고 Spring Embedded H2 Db는 H2 콘솔과 관련이 없다고 생각합니다.

그것을 고치는 방법?

편집 : 내 웹 브라우저에서 http : // localhost : 8082 입력하여 인스턴트 메신저 콘솔에 액세스 할.

해결법

  1. ==============================

    1.응용 프로그램이 스프링 부트가 아닌 경우 web.xml 파일에 서블릿 구성을 아래에 추가해야합니다.

    응용 프로그램이 스프링 부트가 아닌 경우 web.xml 파일에 서블릿 구성을 아래에 추가해야합니다.

    !-- H2 Database Console for managing the app's database -->
    <servlet>
        <servlet-name>H2Console</servlet-name>
        <servlet-class>org.h2.server.web.WebServlet</servlet-class>
        <init-param>
            <param-name>-webAllowOthers</param-name>
            <param-value>true</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>H2Console</servlet-name>
        <url-pattern>/admin/h2/*</url-pattern>
    </servlet-mapping>
    
    <!-- Handles requests into the application -->
    

    자세한 내용을 참조하십시오 https://github.com/spring-projects/greenhouse/blob/master/src/main/webapp/WEB-INF/web.xml

    응용 프로그램이 스프링 부트 기반이라면 https://springframework.guru/using-the-h2-database-console-in-spring-boot-with-spring-security/을 따라야합니다.

  2. from https://stackoverflow.com/questions/35061633/how-to-connect-h2-console-to-embedded-spring-h2-db by cc-by-sa and MIT license