Spring 게시판 만들기(1)
기록에 앞서 설명용이 아닌 복습용으로 작성하였습니다.
개발도구
- eclipse IDE 2020-06
- mybatis
- 오라클
- 톰캣 8.5
프로젝트 생성
pom.xml
<!-- database 관련 라이브러리 추가 시작 mvnrepository.com --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <!-- MyBatis : 프레임워크 (라이브러리 집합 + 디자인패턴). XML과 애너테이션을 사용하여 SQL문으로 객체들을 연결. --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.4</version> </dependency> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring --> <!-- MyBatis 프레임워크와 spring 프레임워크 사이에 교량(bridge)역할을 해줌 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.4</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${org.springframework-version}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-dbcp2 --> <!-- 커넥션풀 사용 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-dbcp2</artifactId> <version>2.7.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.bgee.log4jdbc-log4j2/log4jdbc-log4j2-jdbc4.1 --> <dependency> <groupId>org.bgee.log4jdbc-log4j2</groupId> <artifactId>log4jdbc-log4j2-jdbc4.1</artifactId> <version>1.16</version> </dependency> <!-- https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc6 --> <dependency> <groupId>com.oracle.database.jdbc</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.4</version> </dependency> <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <!-- 자동으로 자원을 관리해주고, getter/setter를 자동 처리해줌 logger.info() --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.20</version> <scope>provided</scope> </dependency>
web.xml
인코딩 필터 설정
<filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
파일업로드
<!-- web.xml 설정은 Tomcat 자체의 설정임. web과 관련된 설정이므로 servlet-context.xml을 이용하여 설정해줘야 함 --> <multipart-config> <location>D:\\upload</location> <!-- 업로드 되는 폴더 --> <max-file-size>10485760</max-file-size> <!-- 최대크기 10MB --> <max-request-size>41943040</max-request-size> <!-- 한번에 올리는 크기 40MB --> <file-size-threshold>20971520</file-size-threshold> <!-- 메모리 사용 20MB --> </multipart-config>
root-context
- DB 설정정보
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@localhost:1521/xe" /> <property name="username" value="c##mytest" /> <property name="password" value="java" /> </bean>
<!-- 파일 업롣드 디렉토리 설정 --> <bean id="uploadPath" class="java.lang.String"> <constructor-arg value="D:\\upload" /> </bean>
<!-- mapper interface --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="kr.or.ddit.dasuri.*.mapper" /> </bean>
servlet-context
- 파일업로드를 위해
<beans:bean id="multipartResolver" class="org.springframework.web.multipart.support.StandardServletMultipartResolver"> </beans:bean>
초기실행 오류
심각: Context initialized 이벤트를 [org.springframework.web.context.ContextLoaderListener] 클래스의 인스턴스인 리스너에 전송하는 동안 예외 발생 java.lang.ArrayIndexOutOfBoundsException: 20430 at org.springframework.asm.ClassReader.<init>(Unknown Source) at org.springframework.asm.ClassReader.<init>(Unknown Source) at org.springframework.asm.ClassReader.<init>(Unknown Source)
프로젝트 처음 생성시 자바 버전이 jre1.6으로 생성 되었음 pom에도 이렇게 생성
jdk1.8로 변경후 pom.xml 에 있는 버전수정을 안해주어서 발생
폼 윗부분의 자바버전 설정 부분<properties> <java-version>1.8</java-version> <org.springframework-version>5.2.5.RELEASE</org.springframework-version> <org.aspectj-version>1.6.10</org.aspectj-version> <org.slf4j-version>1.6.6</org.slf4j-version> </properties>
이렇게 바꿔주니 깔끔하게 실행
Author And Source
이 문제에 관하여(Spring 게시판 만들기(1)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@booboo9292/Spring-게시판-만들기1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)