SpringMVCMybatis project 이클립스설치->marketplace spring sts

프로젝트 생성  : Spring project MVC

src/main/webapp/web-inf/web.xml 수정 *.do, 인코딩 관련


<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">

  <context-param>

    <param-name>contextConfigLocation</param-name>

    <param-value>/WEB-INF/spring/root-context.xml</param-value>

  </context-param>

  <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>

  </filter>

  <filter-mapping>

    <filter-name>encodingFilter</filter-name>

    <url-pattern>/*</url-pattern>

  </filter-mapping>

  <listener>

    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

  </listener>

  <servlet>

    <servlet-name>appServlet</servlet-name>

    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

    <init-param>

      <param-name>contextConfigLocation</param-name>

      <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>

    </init-param>

    <load-on-startup>1</load-on-startup>

  </servlet>

  <servlet-mapping>

    <servlet-name>appServlet</servlet-name>

    <url-pattern>*.do</url-pattern>

  </servlet-mapping>

</web-app>

pom.xml 수정 DB드라이버 추가 Build path 사용하지않고 추가


<repositories>

<repository>

<id>codelds</id>

<url>https://code.lds.org/nexus/content/groups/main-repo</url>

</repository>

</repositories>

 

 <dependency>
   <groupId>commons-fileupload</groupId>
   <artifactId>commons-fileupload</artifactId>
   <version>1.2.2</version>
  </dependency>
  <dependency>
   <groupId>commons-io</groupId>
   <artifactId>commons-io</artifactId>
   <version>1.3.2</version>
  </dependency>


<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-jdbc</artifactId>

<version>${org.springframework-version}</version>

</dependency>

<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis</artifactId>

<version>3.2.2</version>

</dependency>


<!-- AspectJ -->

<dependency>

<groupId>org.aspectj</groupId>

<artifactId>aspectjweaver</artifactId>

<version>1.6.9</version>

</dependency>

<dependency>

<groupId>org.aspectj</groupId>

<artifactId>aspectjrt</artifactId>

<version>1.6.9</version>

</dependency>


<dependency>

<groupId>cglib</groupId>

<artifactId>cglib</artifactId>

<version>2.2.2</version>

</dependency>



<dependency>

<groupId>org.mybatis</groupId>

<artifactId>mybatis-spring</artifactId>

<version>1.2.0</version>

</dependency>

<dependency>

<groupId>com.oracle</groupId>

<artifactId>ojdbc6</artifactId>

<version>11.2.0.3</version>

<scope>compile</scope>

</dependency>

<dependency>

<groupId>xerces</groupId>

<artifactId>xercesImpl</artifactId>

<version>2.9.1</version>

</dependency>

<dependency>

<groupId>cglib</groupId>

<artifactId>cglib</artifactId>

<version>2.2.2</version>

</dependency>



<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/webapp/web-inf/spring/appservlet/servlet-context.xml 수정

<?xml version="1.0" encoding="UTF-8"?>

<beans:beans xmlns="http://www.springframework.org/schema/mvc"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans"

xmlns:context="http://www.springframework.org/schema/context"

xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"

xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop"

xsi:schemaLocation="http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd

      http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd

      http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd

      http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

      http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd

      http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">


<!-- DispatcherServlet Context: defines this servlet's request-processing 

infrastructure -->


<!-- Enables the Spring MVC @Controller programming model -->

<annotation-driven />

<!-- <context:annotation-config/> -->

<context:component-scan base-package=************************ />

<!-- Handles HTTP GET requests for /resources/** by efficiently serving 

up static resources in the ${webappRoot}/resources directory -->

<resources mapping="/**" location="/resources/" />


<!-- Resolves views selected for rendering by @Controllers to .jsp resources 

in the /WEB-INF/views directory -->

<beans:bean

class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<beans:property name="prefix" value="/WEB-INF/views/" />

<beans:property name="suffix" value=".jsp" />

</beans:bean>




<!-- JNDI기반의 설정 설정 예시 -->

<jee:jndi-lookup id="dataSource" jndi-name="jdbc/myoracle"

resource-ref="true" />

<!-- <beans:bean name="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 

<beans:property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/> 

<beans:property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"/> 

<beans:property name="username" value="hr"/> <beans:property name="password" 

value="hr"/> </beans:bean> -->




<beans:bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

<beans:property name="dataSource" ref="dataSource" />

<beans:property name="mapperLocations" value="classpath*:mappers/*Mapper.xml" />

<beans:property name="configLocation" value="classpath:sqlMapConfigure.xml" />


</beans:bean>


<!--공유되지 않고 thread에 안전, requestScope, method scope -->

<beans:bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">

<beans:constructor-arg index="0" ref="sqlSessionFactory" />

</beans:bean>

<tx:annotation-driven transaction-manager="transactionManager" />

<beans:bean id="transactionManager"

class="org.springframework.jdbc.datasource.DataSourceTransactionManager"

p:dataSource-ref="dataSource" />

<tx:advice id="txAdvice" transaction-manager="transactionManager">

<tx:attributes>

<tx:method name="*" propagation="REQUIRED" />

</tx:attributes>

</tx:advice>

<aop:config>

<aop:pointcut expression="within(com.kodb.web.*)" id="serviceInsertMethod" />

<aop:advisor advice-ref="txAdvice" pointcut-ref="serviceInsertMethod" />

</aop:config>

<!-- <beans:bean name="multipartResolver"

class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

<beans:property name="maxUploadSize" value="10000000" />

</beans:bean> -->



</beans:beans>


<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> 서버 설정 server/context.xml JNDI 사용시 서버설정<!--[endif]-->

<Resource name="jdbc/myoracle" auth="Container"

type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver"

url="jdbc:oracle:thin:@127.0.0.1:1521:xe"

username="hr" password="hr" maxActive="20" maxIdle="10"

maxWait="-1"/>

 

 

 

src/main/resources/sqlMapConfigure.xml 에 TypeAiases 지정

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE configuration

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>

<typeAliases>

<typeAlias type="model.MemberVO" alias="membervo/>

</typeAliases>

</configuration>

 

src/main/resources/mappers/memberMapper.xml 생성

<mapper namespace="mymember">

<select id="selectAll" resultType="membervo">

select MNO, EMAIL, PWD, MNAME,

CRE_DATE, MOD_DATE

from members

order by 1

</select>

<select id="selectByNo" parameterType="int" resultType="membervo">

select

MNO, EMAIL, PWD, MNAME, CRE_DATE, MOD_DATE

from members

where MNO = #{mno}

</select>

<update id="updateByNo" parameterType="membervo">

update members

set EMAIL=#{email},

PWD=#{pwd},

MNAME=#{mname},

MOD_DATE = sysdate

where MNO = #{mno}

</update>

<delete id="deleteByNo" parameterType="membervo">

delete from members

where MNO = #{mno}

</delete>

<insert id="insertMember" parameterType="membervo">

insert into

members(MNO, EMAIL, PWD, MNAME, CRE_DATE, MOD_DATE)

values(seq_mno.nextval, #{email}, #{pwd},#{mname},sysdate, sysdate)

<!-- #{cre_date:DATE} -->

</insert>

</mapper>

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/modelVO, DAO(인터페이스사용), Service(인터페이스사용)생성

VO 구현 default생성자+생성자+getter/setter+toString(확인용)

private int mno;

private String email;

private String pwd;

private String mname;

private Date cre_date;

private Date mod_date;

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/model/MemberDAO.java 생성 (인터페이스)

public interface MemberDAO {

public ArrayList<MemberVO> selectAll(String condition, String keyword);

public MemberVO selectByNo(int mno);

public MemberVO selectByEmail(String email);

public int insertMember(MemberVO member);

public int updateMember(MemberVO member);

public int deleteMember(int mno);

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/model/MemberDAOImpl.java 생성

<!--[if !supportEmptyParas]--> <!--[endif]-->

@Component

public class MemberDAOImpl implements MemberDAO {

@Autowired

SqlSession sqlSession;

<!--[if !supportEmptyParas]--> <!--[endif]-->

public ArrayList<MemberVO> selectAll(String condition, String keyword) {

<!--[if !supportEmptyParas]--> <!--[endif]-->

List list = sqlSession.selectList("mymember.selectAll");

return (ArrayList<MemberVO>) list;

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

@Override

public MemberVO selectByNo(int mno) {

return sqlSession.selectOne("mymember.selectByNo", mno);

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

@Override

public int insertMember(MemberVO member) {

return sqlSession.insert("mymember.insertMember", member);

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

@Override

public int updateMember(MemberVO member) {

return sqlSession.update("mymember.updateByNo", member);

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

@Override

public int deleteMember(int mno) {

return sqlSession.delete("mymember.deleteByNo", mno);

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/model/MemberService.java 생성(인터페이스)

public interface MemberService {

public ArrayList<MemberVO> selectAll(String condition, String keyword);

public MemberVO selectByNo(int mno);

public MemberVO selectByEmail(String email);

public int insertMember(MemberVO member);

public int updateMember(MemberVO member);

public int deleteMember(int mno);

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/model/MemberServiceImpl.java 생성

@Service

public class MemberServiceImpl implements MemberService{

@Autowired

MemberDAO memberDAO;

@Override

public ArrayList<MemberVO> selectAll(String condition, String keyword) {

return memberDAO.selectAll(condition, keyword);}

@Override

public MemberVO selectByNo(int mno) {

return memberDAO.selectByNo(mno);}

@Override

public MemberVO selectByEmail(String email) {

return memberDAO.selectByEmail(email);}

@Override

public int insertMember(MemberVO member) {

return memberDAO.insertMember(member);}

@Override

public int updateMember(MemberVO member) {

return memberDAO.updateMember(member);}

@Override

public int deleteMember(int mno) {

return memberDAO.deleteMember(mno);}

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/controllerMemberController.java 생성

@Controller

public class MemberController {

@Autowired

MemberService memberService;

@RequestMapping("/member/list.do")

public ModelAndView memberlist() {

ModelAndView mv = new ModelAndView();

<!--[if !supportEmptyParas]--> <!--[endif]-->

ArrayList<MemberVO> members = memberService.selectAll(null, null);

mv.addObject("memberlist", members);

mv.setViewName("member/memberlist");

return mv;

}

@RequestMapping(value = "/member/add.do", method = RequestMethod.GET)

public String addMember() {

return "member/memberInsertForm";

}

@RequestMapping(value = "/member/add.do", method = RequestMethod.POST)

public String addMemberPost(MemberVO member) {

int ret = memberService.insertMember(member);

System.out.println(ret + "건 입력됨");

System.out.println(member);

return "redirect:list.do";

}

@RequestMapping(value = "/member/update.do", method = RequestMethod.GET)

public ModelAndView updateMember(int mno) {

MemberVO member = memberService.selectByNo(mno);

ModelAndView mv = new ModelAndView();

mv.addObject("member", member);

mv.setViewName("member/updateForm");

return mv;

}

@RequestMapping(value = "/member/update.do", method = RequestMethod.POST)

public String updateMemberPost(int mno, String email,String pwd, String mname) {

MemberVO member = new MemberVO(mno, email, pwd, mname, null, null);

int ret = memberService.updateMember(member);

System.out.println(ret+"건 수정");

System.out.println(member);

return "redirect:list.do";

}

@RequestMapping("/member/delete.do")

public String deleteMember(int mno) {

ModelAndView mv = new ModelAndView();

int ret = memberService.deleteMember(mno);

System.out.println(ret + "건 수정");

return "redirect:list.do";

}

@ExceptionHandler(Exception.class) //에러발생시 화면전환 + console출력

public String handleException(Exception e){

System.out.println("Eception오류:"+e);

e.getStackTrace();

return "/myerror";

}

}

src/main/webapp/web-inf/views 밑에 auth(login관련)+메인화면+출력화면 jsp파일들 생성

/member/memberlist.jsp

<%@page import="model.MemberVO"%>

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<%@ page import="java.util.ArrayList"%>

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<jsp:useBean id="memberlist" class="java.util.ArrayList"

type="ArrayList<MemberVO>" scope="request" />

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<%@include file="../header.jsp"%><br>

<h1>우리반 목록</h1>

<a href='add.do'>신규입력</a><br><br><br>

<%-- <c:if test="${sessionScope.member==null}">

<c:redirect url="../auth/login.do"></c:redirect>

</c:if> --%>

<c:set var="a" value=""></c:set>

<c:set var="b" value=""></c:set>

<c:if test="${condition=='mname'}">

<c:set var="a" value="selected"/>

</c:if>

<c:if test="${condition=='email'}">

<c:set var="b" value="selected"/>

</c:if>

<form action="list.do" method="get">

<select name="condition">

<option value="mname" ${a}>이름

<option value="email" ${b}>이메일

</select>

<input type="text" name="keyword" value="${keyword }">

<input type="submit" value="조회">

</form>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<table border='1'>

<tr>

<th>번호</th>

<th>이름</th>

<th>이메일</th>

<th>암호</th>

<th>가입일</th>

<th>변경일</th>

<th>삭제</th>

</tr>

<c:forEach var="m" items="${memberlist}">

<tr>

<td><a href="update.do?mno=${m.mno }">${m.mno }</a></td>

<td>${m.mname }</td>

<td>${m.email }</td>

<td>${m.pwd }</td>

<td>${m.cre_date }</td>

<td>${m.mod_date }</td>

<td><a href="delete.do?mno=${m.mno }">삭제</a>

</th>

</tr>

</c:forEach>

</table>

<%@include file="../bottom.jsp"%><br>

</body>

</html>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

/member/memberInsertForm.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

<!--[if !supportEmptyParas]--> <!--[endif]-->

</head>

<body>

<h1>신규등록</h1>

<br>

<br>

<form action="add.do" method="post">

이름 : <input type="text" name="mname"><br> 이메일 : <input

type="text" name="email"><br> 비밀번호 : <input

type="password" name="pwd"><br> <input type="submit"

value="추가"> <input type="reset" value="취소" onclick='func();'>

<!--[if !supportEmptyParas]--> <!--[endif]-->

</form>

</body>

</html>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

/member/updateForm.jsp

<%@page import="model.MemberVO"%>

<%@page import="model.MemberDAO"%>

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<%-- <%

MemberVO mem = (MemberVO)request.getAttribute("member");

%>

--%>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<h1>회원정보 수정</h1>

<form action="update.do" method="post">

번호:<input type="text" name="mno" value="${member['mno'] }"><br>

이름:<input type="text" name="mname" value="${member.mname }"><br>

이메일:<input type="text" name="email" value="${member.email }"><br>

비밀번호:<input type="text" name="pwd" value="${member.pwd }"><br>

생성일:<input type="text" name="cre_date" value="${member.cre_date }"><br>

수정일:<input type="text" name="mod_date" value="${member.mod_date }"><br>

<input type="submit" value="수정">

<input type="reset" value="취소" >

</form>

<!--[if !supportEmptyParas]--> <!--[endif]-->

</body>

</html>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

에러 발생시 호출되는 페이지

/error.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"

pageEncoding="EUC-KR"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>Insert title here</title>

</head>

<body>

오류발생~~~~

</body>

</html>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

UpLoad기능추가

pom.xml

<dependency>

<groupId>commons-fileupload</groupId>

<artifactId>commons-fileupload</artifactId>

<version>1.2.2</version>

</dependency>

<dependency>

<groupId>commons-io</groupId>

<artifactId>commons-io</artifactId>

<version>1.3.2</version>

</dependency>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/webapp/upload 폴더 생성

/member/memberInsertForm.jsp

<form action="add.do" method="post" enctype="multipart/form-data">

이름 : <input type="text" name="mname"><br>

이메일 : <input type="text" name="email"><br>

비밀번호 : <input type="password" name="pwd"><br>

사진 : <input type="file" name="file">

<input type="submit" value="추가">

<input type="reset" value="취소" onclick='func();'>

</form>

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/model/MemberVO 추가 +Getter/Setter

private String fileSrc;

private CommonsMultipartFile file;

<!--[if !supportEmptyParas]--> <!--[endif]-->

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/java/controller/MemberController.javac

if(!member.getFile().isEmpty()){

String path = request.getSession().getServletContext().getRealPath("/upload");

String file = member.getFile().getOriginalFilename();

String fpath = path+"\\"+file;

FileOutputStream fo = null;

System.out.println(fpath);

//나중에 DB에 파일이름 저장하기위함

member.setFileSrc(file);

try {

fo = new FileOutputStream(fpath);

fo.write(member.getFile().getBytes());

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}finally{

try {

if(fo!=null)fo.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

<!--[if !supportEmptyParas]--> <!--[endif]-->

src/main/webapp/web-inf/spring/appservlet/servlet-context.xml 수정

<!--[if !supportEmptyParas]--> <!--[endif]-->

<beans:bean name="multipartResolver"

class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

<beans:property name="maxUploadSize" value="10000000" />

</beans:bean>

+ Recent posts