문제점

스프링 퀵 스타트 게시판 페이지 p.127를 공부하다가 코드를 입력 후 board_inset를 실행하였지만 아래와 같은 에러를 발생 시켰다...

 

 


INFO : org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
INFO : org.springframework.beans.factory.support.DefaultListableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@7ea37dbf: defining beans [boardDAO,boardService,homeController,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.ConfigurationClassPostProcessor$ImportAwareBeanPostProcessor#0]; root of factory hierarchy
메인 구동
===> JDBC로 insertBoard() 기능 처리
org.h2.jdbc.JdbcSQLException: Connection is broken: "unexpected status 16777216" [90067-193]
===> JDBC로 getBoardList() 기능 처리
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.engine.SessionRemote.done(SessionRemote.java:639)
at org.h2.command.CommandRemote.prepare(CommandRemote.java:68)
at org.h2.command.CommandRemote.(CommandRemote.java:45)
at org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:494)
at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1203)
at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:73)
at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:287)
at com.springbook.biz.board.impl.BoardDAO.insertBoard(BoardDAO.java:35)
at com.springbook.biz.board.impl.BoardServiceImpl.insertBoard(BoardServiceImpl.java:17)
at com.springbook.biz.board.BoardServiceClient.main(BoardServiceClient.java:23)
org.h2.jdbc.JdbcSQLException: Connection is broken: "unexpected status 768" [90067-193]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.engine.SessionRemote.done(SessionRemote.java:639)
at org.h2.engine.SessionRemote.close(SessionRemote.java:570)
at org.h2.jdbc.JdbcConnection.close(JdbcConnection.java:394)
at com.springbook.biz.common.JDBCUtil.close(JDBCUtil.java:37)
at com.springbook.biz.board.impl.BoardDAO.insertBoard(BoardDAO.java:43)
at com.springbook.biz.board.impl.BoardServiceImpl.insertBoard(BoardServiceImpl.java:17)
at com.springbook.biz.board.BoardServiceClient.main(BoardServiceClient.java:23)
org.h2.jdbc.JdbcSQLException: Connection is broken: "unexpected status 16777216" [90067-193]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.engine.SessionRemote.done(SessionRemote.java:639)
at org.h2.command.CommandRemote.prepare(CommandRemote.java:68)
at org.h2.command.CommandRemote.(CommandRemote.java:45)
at org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:494)
at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1203)
at org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:73)
at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:287)
at com.springbook.biz.board.impl.BoardDAO.getBoardList(BoardDAO.java:111)
at com.springbook.biz.board.impl.BoardServiceImpl.getBoardList(BoardServiceImpl.java:33)
at com.springbook.biz.board.BoardServiceClient.main(BoardServiceClient.java:26)
INFO : org.springframework.context.support.GenericXmlApplicationContext - Closing org.springframework.context.support.GenericXmlApplicationContext@51521cc1: startup date [Thu Apr 11 16:33:36 KST 2019]; root of context hierarchy
INFO : org.springframework.beans.factory.support.DefaultListableBeanFactory - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@7ea37dbf: defining beans [boardDAO,boardService,homeController,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.ConfigurationClassPostProcessor$ImportAwareBeanPostProcessor#0]; root of factory hierarchy


 

해결방안

메이븐 pom.xml 설정을 통해 h2의 버전을 내가 사용하는 h2의 버전과 맞춰주었다.

또는  jdbc 버전을 높여주니 예외가 해결되었다.

 

pom.xml ==>

		
		<dependency>
			<groupId>com.h2database</groupId>
			<artifactId>h2</artifactId>
			<version>1.4.193</version>
		</dependency>

 

고찰

mySQL이든 다른 프로그램이든 pom.xml의 버전을 반드시 확인해서 맞춰주어야 한다.

 

+ Recent posts