시작에 대한 간단한 튜토리얼
이 인스턴스의 소스 코드와 인스턴스의 항아리
소스 코드 : http://xiazai.vevb.com/201612/yuanma/springmvc_jb51.zip
필수 JAR : http://xiazai.vevb.com/201612/yuanma/springmvcjar_jb51.zip
SpringMVC 파일 업로드에 대한 또 다른 기사, 멀티 파일 업로드 : //www.vevb.com/article/100491.htm
간단한 주석 구성의 예 :
1. 프로젝트 만들기 :
1. 새로운 동적 웹 프로젝트 만들기 :
2. 프로젝트의 이름 : SpringMVC_01
3. Tomcat 런타임 환경/의존 라이브러리를 추가합니다. MyEclipse 인 경우 웹 프로젝트를 만들 때이 단계가 필요하지 않습니다.
프로젝트를 마우스 오른쪽 버튼으로 클릭하고 빌드 경로> 라이브러리 추가를 클릭하십시오.
추가 후 추가 Tomcat Servlet 패키지가 있습니다
4. 마지막으로 Spring과 SpringMVC에 필요한 항아리를 추가하고 프로젝트에 다음 항아리를 추가합니다.
2. 구성 파일 :
1. 먼저 web.xml에서 dispatcherservlet을 구성하고 <servlet-mapping>을 통해 가로 채워야하는 URL을 지정하십시오. 다음 XML은 wiffixed.html로 가로 채기 URL을 구성합니다.
<!-Spring MVC DispatcherServlet-> <servlet> <servlet-name> mvc </servlet-name> <servlet-class> org.springframework.web.servlet.dispatcherservlet </servlet-class> <!-<Init-param> <!-스프링 컨트롤 컨트롤에로드하십시오. <Param-Name> ContextConfigLocation </param-name> <param-value>/web-inf/classes/mvc*. <Servlet-name> mvc </servlet-name> <Url-pattern>*. html </url-pattern> </servlet-mapping>
먼저 서블릿을 구성한 다음 SpringMVC XML 파일을 스프링 컨텍스트에로드하십시오. 그런 다음 Servlet 매핑을 구성하고 Servlet-Name은 지금 Servlet의 구성된 이름이며 인터셉트 할 URL이 *.html임을 지정합니다.
2. Spring의 컨텍스트 리스너를 구성하고 Spring의 XML 구성 파일로가는 경로를 지정하십시오.
<!-스프링 컨텍스트 컨테이너 듣기-> <liseer-class> org.springframework.web.web.context.contextloaderListener </hareser-class> </laiseer> <!-스프링 XML 구성 파일을 스프링 컨텍스트 컨테이너에로드-> 컨텍스트 -param> contextconflocame> paramx-name> <Param-value> classpath : root-context.xml </param- value> </context-param>
여기에 지정된 경로 클래스 경로는 프로젝트가 컴파일 된 후 클래스 경로 파일에 있습니다.
최종 web.xml 파일 컨텐츠 :
<? xml version = "1.0"encoding = "utf-8"?> <web-app version = "3.0"xmlns = "http://java.sun.com/xml/xml/ns/javaee"xmlns : xsi = "http://www.w3.org/2001/xmlschema-instance. xsi : schemalocation = "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <! 청취자> <layer-class> org.springframework.web.context.contextloaderListener </Learter-Class> </Learger> <!-스프링 XML 구성 파일을 스프링 컨텍스트 컨테이너에로드하는 것-> <PARAMET-PARAM> <Param-name> contextConfiglocation </param-name> <Param-value> classPath : root-context.xml </param-context.xml </context-param> <!-스프링 mvc dispatcherservlet-> <servlet> <servlet-name> mvc </servlet-name> <servlets-class> org.springframework.weeblet.dispcherverver </serverververtor -> <init-param> <!-SpringMVC XML을 스프링 컨텍스트 컨테이너에로드-> <Param-name> contextConfigLocation </param-name> <param-value>/web-inf/classes/mvc*. DispatcherServlet을 구성하여 인터셉트-> <servlet-mapping> <servlet-name> mvc </servlet-name> <Url-pattern>*. html </url-pattern> </servlet-mapping> <welce-file-list> <welcome-file> index.html </welcome-file-list> </web-appp>
3. SpringMVC 및 ApplicationContext의 XML 파일에 필요한 XML 파일을 만듭니다. 여기서, 첫 번째 단계에서 구성된 서블릿에서 Init-Param에 필요한 형식은 다음과 같습니다. MVC*.*. MVC로 시작하는 파일을 찾는 것이므로 SpringMVC의 XML 파일을 만들 때 MVC로 시작해야합니다. 나는 그것을 명명했다 : mvc-context.xml, context-param의 구성에 따라 ApplicationContext 파일의 이름을 지정하십시오 : root-context.xml;
4. mvc-context.xml 구성 :
먼저 가져 오기 태그를 통해 root-context.xml을 가져온 다음 구성 요소 스캔 태그를 통해 지정된 패키지 이름을 스캔하여 패키지 아래의 모든 Java 클래스의 스프링 주석이 적용됩니다.
그런 다음 SpringMVC의보기 렌더링 파서를 구성하여 접두사가/page/이고 접미사가 .jsp이므로 SpringMVC가 렌더링 해야하는 경로를/page/return value.jsp에서 찾을 수 있습니다.
<!-로드 스프링의 글로벌 구성 파일-> <beans : import resource = "root-context.xml" /> <!-SpringMVC 구성-> <!-Spring은 구성 요소 스캔을 통해 Org.swingLife.controller에서 모든 클래스를 스캔하므로 스프링 코드 주석이 적용됩니다. BASE-PACKAGE = "org.swingLife.controller"> </context : component-scan> <!-prefix와 함께 prefix를 다음과 같이 구성합니다.
마지막으로 MVC-context.xml 및 root-context.xml은 다음과 같습니다.
mav-context.xml :
<? xml 버전 = "1.0"alcoding = "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 : p = "http://www.springframework.org/schema/p"xmlns : aop = "http://www.springframwork.org/schema/op" xmlns : context = "http://www.springframework.org/schema/context"xsi : schemalocation = "http://www.springframework.org/schema/mvc http://www.springframework.org/schema/spred-mvc.sd http://www.springframework.org/schema/aop http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://wwwww.spromprameget. http://www.springframework.org/schema/context/spring-context.xsd "> <!-Spring의 글로벌 구성 파일-> <beans : import resource ="root-context.xml "/> <!-SpringMVC 구성 -->!-Springs.swingler를 통해 모든 클래스를 스캔하자. 코드 주석이 적용됩니다-> <context : component-scan base-package = "org.swinglife.controller"> </ context : component-scan> <!-접두사를 사용하여 SpringMVC의보기 렌더러를 구성하십시오. /page/<메소드 리턴 값> .jsp-> <beans : bean p : prefix = "/page/"p : 접미사 = ". jsp"> </beans : beans>
root-context.xml :
<? xml 버전 = "1.0"alcoding = "utf-8"?> <beans xmlns = "http://www.springframework.org/schema/beans"xmlns : xsi = "http://ww.w.w3.org/2001/xmlschema-instance" xmlns : context = "http://www.springframework.org/schema/context"xsi : schemalocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/schema/sprideans-2 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd "> <!-루트 컨텍스트 : 다른 모든 웹 구성 요소에 보이는 공유 리소스 정의-> </beans>
3. 컨트롤러를 쓰십시오
1. org.swinglife.controller 패키지 만들기 컨트롤러 클래스를 저장 한 다음 새 HomeController.java를 만들어 홈페이지에 컨트롤러를 작성하십시오.
2. 주석 @Controller를 사용하여 HomeController 클래스를 컨트롤러로 정의하고 @RequestMapping ( "value")을 사용하여 메소드에서 액세스 할 경로 또는 메소드 이름을 지정하십시오. SpringMVC는 @Controller 주석을 통해 요청을 처리하는 컨트롤러로 POJO를 변환하고 @RequestMapping을 통해 컨트롤러에 필요한 요청을 지정할 수 있습니다.
@controller public class homecontroller { /**** 홈페이지 /홈 페이지 /page/home.jsp page* @return* /@requestmapping ( "index") public modelandview index () {// 모델을 만들고보기를 렌더링합니다. 반환 할 페이지가 홈페이지 ModelandView Mav = New ModelAndView ( "home")임을 지정합니다. 반환 mav; }}ModelAndView 객체는 메소드에 정의됩니다. 이 객체를 통해 렌더링 할보기는 집으로 지정되어 ModelandView를 반환합니다. 페이지를 HOME.JSP로 렌더링합니다.
3. 마지막으로 SpringMVC가 페이지보기를 찾고 렌더링 할 수 있도록 WebContent 디렉토리에서 /page/home.jsp를 작성하십시오.
<%@ page language = "java"contmenttype = "text/html; charset = gb18030"pageencoding = "gb18030"%> <! doctype html public "-// w3c // dtml 4.01 전이 // en" "http://www.w3.org/tr/tr/html4/loose.dtd"> <html> <head> <meta http-equiv = "content-type"content = "text/html; charset = gb18030"> <title> home </body> <h2> spring mvc instance </h2> </h2> </html>
이제 완전한 SpringMVC 모드가 구축되었으므로 테스트를위한 프로젝트를 실행할 수 있습니다.
4. 매개 변수의 제출 및 전달을 작성하십시오.
1. 새 USERCONTROLLER 클래스를 작성하여 사용자가 로그인되었다고 가정하고 처리를 위해 컨트롤러에 사용자 이름과 비밀번호를 제출하고 로그인 한 후 사용자 이름과 비밀번호가 성공적인 페이지로 전달됩니다.
usercontroller.java를 만듭니다
사용자가 성공적인 로그인 페이지로 /page/succ.jsp 페이지를 만듭니다
UserController의 코드 :
@controller public class usercontroller { /**** 사용자 로그인* <p> 주석 구성, 게시물 만 게시물에만 게시 할 수 있습니다* @param username* @param password* @requestmapping (value = "login", method = requestmethod.post) public modelandview (string username, strant) 로그인 페이지에. if (this.checkparams (new String [] {username, password})) {// 반환 할 페이지를 succ.jsp modelandview mav = new ModelAndView ( "succ")로 지정합니다. // 매개 변수를 페이지로 반환합니다. mav.addoBject ( "username", username); mav.addoBject ( "비밀번호", 비밀번호); 반환 mav; } return new ModelAndView ( "HOME"); } / **** 매개 변수가 비어 있는지 확인하십시오* @param params* @return* / private boolean checkparams (string [] params) {for (string param : params) {if (param == ""|| param == null || param.isempty ()) {return false; }} true를 반환합니다. } 먼저 @controller를 지정한 다음 @requestmapping을 로그인 메소드로 지정하십시오.
이번에는 페이지 메소드 모드가 @RequestMapping에 지정되어 페이지 메소드 모드가 게시 모드 여야한다는 점에 유의해야합니다. 그렇지 않으면 액세스 할 수 없습니다. 둘째, 값 매개 변수는 액세스 경로를 지정합니다.
로그인 메소드에서 매개 변수를 설정하고 매개 변수는 양식의 이름 속성입니다.
그런 다음 ModelAndView의 addObject 메소드를 통해 요청에 매개 변수를 추가하여 이러한 매개 변수를 반환 된 페이지에 표시 할 수 있습니다.
이 외에도 매개 변수를 페이지에 전달하는 다른 방법이 있습니다.
/**** 다른 형태의 매개 변수 전달* 요청 된 매개 변수를 처리합니다. * @param username * @param password * @param request * @return */ @requestmapping (value = "login", method = requestmethod.post) public modelandview login (문자열 사용자 이름, 문자열 암호, httpservletrequest request) {request.setattribute ( "username", username); request.setAttribute ( "비밀번호", 비밀번호); 새로운 ModelAndView ( "succ")를 반환합니다. }위의 방법은 요청에 매개 변수를 추가하여 직접 사용됩니다.
2. succ.jsp 페이지 및 양식 페이지를 쓰십시오.
succ.jsp :
<body> <h2> login </h2> username : $ {username} <p> password : $ {password} </body> 양식 : <form action = "login.html"method = "post"> username : <입력 유형 = "텍스트"이름 = "username"/> <p> password : <입력 유형 = "passion" "password" "password" "password". 값 = "제출" /> < /form> 3. 마지막으로 테스트 할 프로젝트를 실행합니다.
OK 모두 완료되었습니다. 위는 SpringMVC의 비교적 간단한 예입니다.
주어진 소스 코드에는 문자열을 리턴 값으로 직접 사용하여 디스플레이 페이지를 지정하는 다른 방법이 있습니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.