이 기사는 Maven이 첫 번째 Java 백엔드를 구축하는 방법을 소개합니다. 그것은 당신과 공유됩니다. 세부 사항은 다음과 같습니다.
1. 지식을 되 찾으십시오
Maven을 사용하여 첫 번째 프로젝트를 구축하는 방법에 대한 마지막 호에 대해 자세히 설명했습니다. 이전 링크는 다음과 같습니다. 오늘 저는 SpringMVC 및 MyBatis 프레임 워크를 사용하여 자신의 Java 백엔드를 구축 할 것입니다.
2. 필요한 준비
intellij 아이디어, Maven 환경은 잘 구축되었습니다
myBatis, SpringMVC 및 기타 프레임 워크와의 기상
mySQL 데이터베이스 만들기
3. 전체 아키텍처 레이아웃
4. 특정 단계
pom.xml에 사용할 Jar 패키지를 구성하십시오
<? xml version = "1.0"encoding = "UTF-8"?> <!-하나 이상의 Contributer 라이센스 계약에 따라 ASF (Apache Software Foundation)에 라이센스가 부여됩니다. 저작권 소유권에 관한 추가 정보는이 작업과 함께 배포 된 통지 파일을 참조하십시오. ASF는이 파일을 Apache 라이센스, 버전 2.0 ( "라이센스")에 따라 라이센스합니다. 라이센스를 준수하는 것 외에는이 파일을 사용할 수 없습니다. 귀하는 라이센스 사본을 http://www.apache.org/licenses/license-2.0에서 적용 가능한 법률에 의해 요구하거나 서면으로 합의하지 않는 한 라이센스에 따라 배포 된 소프트웨어는 어떤 종류의 보증 또는 조건에 따라 명시 적 또는 묵시적이지 않은 "기준"에 배포됩니다. 라이센스에 따른 특정 언어 통치 권한 및 제한에 대한 라이센스를 참조하십시오 .--> <!-$ id : pom.xml 642118 2008-03-28 08 : 04 : 16Z Reinhard $-> <project xmlns = "http://maven.apache.org/pom/4.0.0. xmlns : xsi = "http://www.w3.org/2001/xmlschema-instance"xsi : schemalocation = "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/maven-v4_0_0_0.xsd" <modeversion> 4.0.0 </modelversion> <parging> War </packaging> <name> yakei </name> <groupid> com.yakei </groupid> <artifactid> yakei </artifactid> <beless> 1.0-snapshot </version> <affeendencies> <pectionals> <!-3.0 junit은 Junit에 사용됩니다. <groupid> junit </groupid> <artifactid> junit </artifactid> <bersion> 4.11 </version> <copop> test </scope> </scope> <!-프로젝트 종속성 완료-> <!-1. Log Java Logs는 다음과 같습니다. SLF4J, LOG4J, LOGBACK, Common-Logging SLF4J : 사양/인터페이스 로그 구현 : log4J, logback, common-logging 사용 : slf4j+logback-> <pectionency> <groupid> org.slf4j </groupid> <artifactid> slf4j-api </artifactid> </의존성> <pectionency> <groupId> ch.qos.logback </groupid> <artifactid> logback-core </artifactid> <버전> 1.1.1 </version> </fectionement> <!-SLF4J 인터페이스를 구현하고 통합-> <pection> <groupId> QOS.logback </artifactid> logifactic> <버전> 1.1.1 </version> </fectomency> <!-1. 데이터베이스 관련 종속성-> <pectionency> <groupId> mysql </groupid> <artifactid> mysql-connector-java </artifactid> <bersion> 5.1.36 </version> runtime </scope> </fexendency> <groupId> c3p0 </artifacid> <artifactid> c3p0> c3p0. <버전> 0.9.1.1 </version> </dependency> <!-2.dao 프레임 워크 : mybatis 종속성-> <pectionency> <groupId> org.mybatis </groupid> <artifactid> mybatis </artifactid> </artifactid> </artifactid> </version> </dectinement> <! <groupid> org.mybatis </groupid> <artifactid> mybatis-spring </artifactid> <bersion> 1.2.3 </version> </fectionency> <!-3.servlet 웹 관련 종속성-> <pectionency> <groupid> taglibs </groupid> inpportative </artifactid> <groupid> jstl </groupid> <artifactid> jstl </artifactid> <bersion> 1.2 </version> </expendency> <pectionency> <groupid> com.fasterxml.jackson.core </groupid> <artifactid> Jackson-databind </artifactid> <버전> </dependency> </dependency> <groupid> javax.servlet </groupid> <artifactid> javax.servlet-api </artifactid> <bersion> 3.1.0 </version> </dependency> <!-4 : 스프링 의존성-> <!-1) 스프링 코어-> <peenciency> <groupid> org.springframework </groupicid> <artifactid> <버전> 4.1.7. Release </version> </fectionency> <pectionency> <groupid> org.springframework </groupId> 스프링 -Beans </artifactid> <버전> 4.1.7. Release </version </version> </fexendency> <groupId> org.springframework </groupId> <artifactid> <버전> 4.1.7. release </version> </fectionency> <! <! <!-2) 스프링 DAO 레이어 종속성-> <pectionement> <groupId> org.springframework </groupId> <artifactId> spring-jdbc </artifactid> <version> 4.1.7. release </version </version </hourpelency> <groupframeg.spramerg.sprimwork.sprimwork. <Artifactid> spring-tx </artifactid> <버전> 4.1.7. Release </version> </fectionement> <!-3) SpringWeb 관련 종속성-> <pectionency> <groupid> org.springframeword </groupid> <trectid> spring-web </arevactid> <버전> 4.1.7. </version </version </version> </version </version> <groupid> org.springframework </groupid> <artifactid> Spring-webmvc </artifactid> <버전> 4.1.7. Release </version> </dependency> <!-4) 스프링 테스트 관련 종속성-> <pelevency> <groupid> org.springframeword> <artifactid> Spring-test </artifactid> <버전> 4.1.7. Release </version> </fectionency> </fectencies> </project>
여기에는 Spring, Mybatis 등과 같은 일련의 JAR 패키지가 포함됩니다.이 프로세스는 Android와 유사합니다.
2. 리소스 디렉토리에서 두 개의 디렉토리 만들기 : Mapper, Spring
Mapper : Mapper는 Mybatis 프레임 워크의 매핑이며 그 기능은 DAO 레이어에서 매핑 파일을 사용하는 것입니다. 여기서 user.xml 맵을 만들었습니다.
빨간색 부분은주의를 기울여야합니다. 상단은 DAO 레이어를 매핑하는 경로이고 두 번째는 리턴 객체의 유형입니다. 여기에 코드를 게시하겠습니다.
<! docType mapper public "-// mybatis.org//dtd mapper 3.0 // en" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><<<<<<<<<<<<<<<<<< happer namespace ="com.dajiu.dao.userdao ">-목적 : sql station for dao를 제공합니다. DAO 인터페이스에 메소드에 대한 SQL 문을 작성하십시오-> <select id = "getAll"resultType = "com.dajiu.bean.user"> select * from user </select> <select> <getLogin "getLogin"resultType = "com.dajiu.bean.user"> select * {name} </select} </seler}}스프링 : 주로 스프링의 구성 파일을로드합니다
1.spring-dao.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.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd "> <!-구성 통합 mybatis 프로세스 1. 구성 데이터 라이드-릴 레이트 매개 변수 구성-> 컨텍스트 : 속성-부동산-부동산 홀드 홀드 홀더 < location = "classpath : jdbc.properties"/> <!-2. 데이터베이스 연결 풀-> <bean id = "dataSource"> <!-연결 풀 속성을 구성-> <속성 이름 = "driver class"value = "$ {driver}" /> <!-기본 속성 URL, 사용자, 암호-> <속성 이름 = "jdbcurl"value = "$ {url}" /> 이름 = "비밀번호"value = "$ {password}"/> <!-c3p0 사유 속성-> <속성 이름 = "maxpoolsize"value = "30"/> <속성 이름 = "minpoolsize"value = "10"/> <!-연결을 닫은 후 자동으로 커밋되지 않음-> <autocommitonclose "value"! value = "10000"/> <!-연결이 실패 할 때의 재 시도-> <속성 이름 = "acquireretchatempts"value = "2"/> <! <!-컨벤션은 구성보다 큽니다-> <!-3. 3. <sqlsession factory 객체-> <sqlsession factory "> <!-in of in hor inveration and spring. 데이터베이스 연결 풀-> <속성 이름 = "DataSource"ref = "DataSource"/> <!-MyBatis 글로벌 구성 파일의 구성 : mybatis-config.xml-> <value = "configlocation"value = "classpath : mybatis-config.xml"/>-MyBatis-config.xml "/>-MyBatis-config.xml"/>-MyBatis-config.xml "/>-여러 패키지 사용, Alias Alias 사용, Alias Alias 사용. 별도-> <property name = "inftealiasespackage"value = "com.dajiu.bean"/> <!-SQL 구성 파일을 스캔 : Mapper가 요구하는 xml 파일-> <속성 이름 = "mapperlocations"value = "classpath : mapper/*. xml"/>>>-4 : Dao 인터페이스, inver in inver in and in inver in and in inject in and inver in and inver in and inver in and inver in and inver in and invire in invire in and inver in and inver in a dao inver. 스프링 컨테이너-> <bean> <!-sqlsessionFactory-> <속성 이름 = "sqlsessionFactoryBeanName"value = "sqlsessionFactory"/> <!-스캔 할 DAO 인터페이스를 제공 할-> <속성 이름 = "BasePackage"value = "com.dajiu.dao"/> </beans>주의를 기울일 장소 :
데이터베이스에 연결 :
Global Mybatis-Config 및 Bean 클래스, Mapper 아래의 모든 파일 구성
DAO를 구성하십시오
2.spring-service.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"xmlns : "http://www.springframework.org/schema/tx"xsi : schemalocation = "http://www.spramwork.org/schema/schema http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.sprampramework.org/schema/context/spring-conxt.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd "> <!-서비스 패키지의 모든 유형의 주석을 스캔하십시오-> <context : component-scan base-package ="! 관리자-> <bean id = "transactionManager"> <!-데이터베이스 연결 풀-> <property name = "dataSource"ref = "dataSource"/</bean> <bean id = "date ="date "> </bean> <!-기본적으로 트랜잭션 기반의 선언적 트랜잭션을 기본적으로 관리하여 거래를 관리합니다.
지역에주의를 기울이십시오 :
서비스를 구성하십시오
3.spring-web.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"xmlns : mvc = "http://www.springframework.org/schema/mvc"xsi : skemalocation = "http://www.spremframframwork.org/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.sprampramework.org/schema/context/spring-conxt.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd "> <!-구성 스프링 mvc-> <!-1, enable springmvc annotation 모드 a. 기본값을 자동으로 등록합니다. DefaultAntationHandlerMpapping, AnnotationMethodhandlerAdapter b. 기본적으로 데이터 바인딩, 숫자 형식 및 날짜@numberformat,@dateTimeformat C : XML, JSON의 기본 정보 읽기 및 쓰기 지원-> <mvc : 주석 구동/> <!-2 : 일련의 함수가 제공됩니다. 정적 리소스의 기본 서블릿 구성-> <!-1). 정적 리소스 처리 추가 : JS, GIF, PNG 2). "/"가 전체 매핑을 수행 할 수 있도록 허용-> <mvc : default-servlet handler/> <!-3 : viewResolver를 표시하도록 JSP를 구성합니다-> <bean> <property name = "viewClass"value = "org.springframework.web.servlet.view.jstlview"/> <property name = "value ="/web-inf/view "/"/value "/" value = ". 매핑 = "/**/*. css"위치 = "/"/"/"/"mvc : 리소스 매핑 ="/**/*. png "location ="/"/"/"mvc : 리소스 매핑 ="/**/*. gif "location ="/> </beans>
지역에주의를 기울이십시오 :
컨트롤러를 구성하십시오
5. 논리적 구현 (예로서 사용자 취득)
befirst Bean에서 사용자 클래스를 정의합니다
Com.dajiu.bean;/*** 패키지 2017/4/7에 Zhangxing에 의해 생성되었습니다. */public class user {private int id; 개인 문자열 이름; 개인 문자열 비밀번호; public int getid () {return id; } public void setid (int id) {this.id = id; } public String getName () {return name; } public void setName (문자열 이름) {this.name = 이름; } public String getPassword () {return password; } public void setpassword (문자열 비밀번호) {this.password = password; }}② 그런 다음 DAO에서 userDAO 인터페이스를 정의하십시오
package com.dajiu.dao; import com.dajiu.bean.user; import org.apache.ibatis.annotations.param; import org.spramework.stereotyp.repository; import java.util.list;/*** 2017/4/7에 생성 된/***. */@repositoryPublic 인터페이스 userDao {list <user> getAll (); user getLogin (@param ( "name") 문자열 이름, @param ( "password") 문자열 암호);}user.xml에서 dao 레이어 매핑
service 서비스의 인터페이스를 선언합니다
패키지 com.dajiu.service; import com.dajiu.bean.user; import java.util.list;/*** 2017/4/7에 zhangxing에 의해 생성되었습니다. */public interface userService {list <user> getAll (); 사용자 getLogin (문자열 이름, 문자열 암호);}④ 그런 다음 Service.impl에서 인터페이스 로직을 구현하십시오
package com.dajiu.service.impl; import com.dajiu.bean.user; import com.dajiu.dao.userdao; import com.dajiu.service.userservice; import org.spramework.beans.beans.beans.annotation.autowired; import org.spramwork.service java.util.list;/*** 2017/4/7에 zhangxing에 의해 만들어졌습니다. */ @service ( "userService") public class usererViceimpl은 userErvice {@autowired userDao userDao; public list <user> getAll () {return userDao.getall (); } 공개 사용자 getLogin (문자열 이름, 문자열 비밀번호) {return userDao.getLogin (이름, 암호); }}여기에서 @autowired는 새 인스턴스를 만드는 것과 같습니다
컨트롤러에서 실제 배경 통화 논리를 구현합니다
package com.dajiu.controller; import com.dajiu.bean.user; import com.dajiu.service.userservice; import org.springframework.beans.beans.annotation.autowired; import org.springframework.stereotyp.controller; import org.springframework.web.bind.annotation.requestmapping; import org.springframework.web.bind.annotation.responsebody; import java.util.hashmap; import java.util.list; import java.util.map;/*** Zhangxing에 의해 생성되었습니다. */@controller@requestmapping ( "/blog") 공개 클래스 usercontroller {@autowired userervice userervice; @RequestMapping ( "/getUser") @ResponseBody Public Map <String, Object> getUser () {Map Map = New Hashmap (); List <user> list = userervice.getall (); map.put ( "사용자", 목록); map.put ( "상태", 1); map.put ( "성공", 참); 리턴 맵; } @RequestMapping ( "getLogin") @ResponseBody public map <string, object> getLogin (문자열 이름, 문자열 암호) {map map = new Hashmap (); user user = userervice.getLogin (이름, 암호); map.put ( "사용자", 사용자); map.put ( "Islogin", true); map.put ( "상태", 1); 리턴 맵; }}여기서 @RequestMapping ( "")은 액세스 된 매핑 경로를 나타내고, @ResponseBody는 JSON 데이터 형식으로 인쇄 된 요청 결과를 나타내며, @Controller는 위의 루트 맵핑 경로에 액세스하는 한 컨트롤러가 직접 호출된다는 것을 나타냅니다.
이제 아이디어를 이해하는 데 도움이합시다 : 먼저 USERCONTROLLER ---> userERVICE ----> userERVICEIMPL ----> userDao ---> user.xml (mapper) ----> bean (user)
6. Tomcat 서버를 구성하십시오
① 오른쪽 상단에있는 녹색 삼각형 버튼을 클릭하고 구성 편집을 클릭하십시오.
+ + 사인을 클릭하고 Tomcat을 선택하십시오
local을 선택하십시오
관련 구성에서 필기
wplopartment를 클릭하고 + 부호를 클릭하고 아티팩트를 선택하십시오
그런 다음 첫 번째 항목을 선택하고 계속 입력하십시오
이런 식으로 전체 프로젝트가 완료되며 다음 단계는 방문하는 것입니다.
좋아, 오늘 SpringMVC와 Mybatis Building Java 백엔드에 대한 설명은 끝났습니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.