In diesem Artikel wird die Methode von Maven vorgestellt, um sein erstes Java -Backend aufzubauen. Es wird mit Ihnen geteilt. Die Details sind wie folgt:
1. Wissen zurück
Ich habe ausführlich in der letzten Ausgabe erläutert, wie man mit Maven Ihr erstes Projekt erstellt. Der vorherige Link ist; Heute werde ich SpringMVC- und MyBatis -Frameworks verwenden, um Ihr eigenes Java -Backend zu erstellen.
2. notwendige Vorbereitungen
①Intellij Idee, Maven Environment ist gut aufgebaut
②faper mit MyBatis, SpringMVC und anderen Frameworks
③Creation der MySQL -Datenbank
3. Architekturlayout insgesamt
4. Spezifische Schritte
①Configure das JAR -Paket, das in pom.xml verwendet werden soll
<? In der mit dieser Arbeit verteilten Mitteilungsdatei finden Sie zusätzliche Informationen zum Besitz des Urheberrechts. Die ASF lizenziert diese Datei unter der Apache -Lizenz, Version 2.0 ("Lizenz"); Sie dürfen diese Datei nur in Übereinstimmung mit der Lizenz verwenden. Sie können eine Kopie der Lizenz unter http://www.apache.org/licenses/license-2.0 erhalten, es sei denn, es wird nach geltendem Recht gefordert oder schriftlich vereinbart. Software, die im Rahmen der Lizenz verteilt ist, wird auf "As IS" ohne Gewährleistungen oder Bedingungen jeglicher Art ausdrückt oder impliziert. Siehe die Lizenz für die spezifischen Sprachberechtigungen und Einschränkungen in der Lizenz .--> <!-$ id: pom.xml 642118 2008-03-28 08: 04: 16Z Reinhard $-> <projekt xmlns = "http 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"> <modelVersion> 4.0.0 </modelversion> <packaging> Krieg </packaging> <name> yakei </name> <gruppe> com.yakei </GroupId> <artifactId> yakei </artifactID> <version> 1,0-Snapshot </Version> <Depecies> </artifactid> <version> 1,0-snapshot </Version> <Depecies> <Erthits> <! <! <gruppeId> junit </GroupID> <artifactId> junit </artifactId> <version> 4.11 </Version> <Schops> Test </scope> </abhängig> <!-Komplette Projektabhängigkeiten-> <!-1. Log-Java-Protokolle umfassen: SLF4J, Log4j, Logback, Common-Logging SLF4J: Ist die Spezifikation/Schnittstellenprotokollimplementierung: Log4j, Logback, Verwendung von SLF4J+Logback-> <Deponcy> <GroupId> org.slf4j </gruppen> <artifactid> slf4j-api </artifactid> 1.7.7.7> slf4j-api; </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>1.1.1</version> </dependency> <!--Implement slf4j interface and integrate--> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version> 1.1.1 </Version> </abhängig> <!-1. Database-related dependencies--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.36</version> <scope>runtime</scope> </dependency> <dependency> <groupId>c3p0</groupId> <artifactId>c3p0</artifactId> <version> 0.9.1.1 </Version> </abhängig> <!-2.dao Framework: MyBatis-Abhängigkeit-> <Depopentcy> <GroupID> org.mybatis </GroupId> <artifactId> myBatis </artifactid> <version> 3.3.0 </Version> </abhängig> <! <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.3</version> </dependency> <!--3.Servlet web-related dependencies--> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.5.4</version> </dependency> <dependency> <gruppeId> javax.servlet </GroupId> <artifactId> javax.servlet-api </artifactId> <version> 3.1.0 </Version> </abhängig> <!-4: Springabhängigkeiten-> <!-1) Spring Core-Abhängigkeiten-> <Deponcy> <GrupnitId> Spring-/artifactidframework </Groupid> <artifactId> org. <version> 4.1.7.Release </version> </abhängig> <depeopecy> <GroupId> org.springFramework </Groupid> <artifactId> Spring-Beans </artifactId> <version> 4.1.7.Release </Version> </abhängig> <Depopentcy> <Gruppen- und -sprüche </Groupid> </gruppen-/artifactid> org. <version> 4.1.7.Release </Version> </abhängig> <!-2) Spring DAO-Layer-Abhängigkeiten-> <De vorangetrieben> <GroupID> org.springFramework </GroupId> <artifactId> Spring-Jdbc </artifactid> <version> 4.1.7.Release </Version> </vgl. <artifactId>spring-tx</artifactId> <version>4.1.7.RELEASE</version> </dependency> <!--3)springweb-related dependencies--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.1.7.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.1.7.RELEASE</version> </dependency> <!--4)spring test-related dependencies--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version> 4.1.7.Release </Version> </abhängig> </abhängig> </project>Es deckt eine Reihe von JAR-Paketen wie Frühling, MyBatis usw. ab. Dieser Prozess ähnelt Android, der zum Erstellen von Drittanbietern zum Erstellen von Gradle hinzufügt, und die Prinzipien sind konsistent.
2. Erstellen Sie zwei Verzeichnisse im Ressourcenverzeichnis: Mapper, Spring
Mapper: Mapper ist eine Zuordnung des MyBatis -Frameworks, und seine Funktion besteht darin, die Zuordnungsdatei in der DAO -Ebene zu verwenden. Hier habe ich eine user.xml -Karte erstellt:
Der rote Teil sollte darauf geachtet werden. Der obere ist der Pfad, um die DAO -Ebene zu kartieren, und der zweite ist der Typ des Rückkehrobjekts. Ich werde den Code hier veröffentlichen:
<! DocType mapper public "-// mybatis.org//dtd mapper 3.0 // en" "http://mybatis.org/dtd/mybatis-3-mapper Schreiben Sie, dh unsere SQL-Anweisungen für Methoden in der dao-Schnittstelle-> <select id = "getAll" resultType = "com.dajiu.bean.user"> select * von user </select> <select id = "getLogin" resultType = "com.dajiu.bean.user"> Auswahl * von Bename = # # # #{name} und göttlich {{name} und genns genns genns genns genns genns genns genns genns genns = godes #{Passwort} </select> </minkPer>Feder: Laden Sie hauptsächlich die Konfigurationsdatei von Spring
1.Spring-dao.xml
Postleitzahl:
<? xmlns: context = "http://www.springframework.org/schema/context" xsi: schemalocation = "http://www.spingframework.org/schema/beans http://www.springramework.org/schema/beans/bean- http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd "> <!-Konfigurationsintegration MyBatis-Prozess 1. location = "classPath: jdbc.properties"/> <!-2. Datenbankverbindungspool-> <bean id = "dataSource"> <!-Konfigurieren Sie die Eigenschaften von Verbindungspools-> <Eigenschaft name = "driverClass" value = "$ {Treiber}" /> <!-Basic-Eigenschaften URL, Benutzer, Passwort-> <Eigenschaftsname = "jdbcurl" value = "$ {{url}}}" /> "}" /> "<Stiefname". name = "password" value = "$ {password}"/> <!-c3p0 private Eigenschaft-> <Eigenschaft name = "maxpoolSize" value = "30"/> <Eigenschaft name = "minpoolsize" value = "10"/> <!-nicht automatisch festgelegt nach dem Schließen der Verbindung-> <Eigenschaftsname = "momocommitonclose" -Schucke "value" = "calastout" = "value". value = "10000"/> <!-Anzahl der Wiederholungen Wenn die Verbindung fehlschlägt-> <Eigenschaft name = "accocireretryattemptes" value = "2"/> </bean> <!-Die Konvention ist größer als die Konfiguration-> <! <!-Datenbankverbindungspool injizieren-> <Eigenschaft name = "dataSource" ref = "dataSource"/> <!-Konfiguration von MyBatis Global Configuration-Datei: mybatis-config.xml-> <Eigenschaft name = "configLocation" value = "classpath: mybatis-conFig.xml"/> <! separat-> <Eigenschaft name = "typealiaSespackage" value = "com.dajiu.bean"/> <!-Scannen Sie die SQL-Konfigurationsdatei: Die XML-Datei von Mapper-> <Eigenschaft name = "mapperlocations" value = "classPath: Mapper/*. Container-> <bean> <!-Inject SQLSessionFactory-> <Property name = "SQLSessionFactoryBeanname" value = "Orte, an die man sich beachten kann:
Stellen Sie eine Verbindung zur Datenbank her:
Konfigurieren Sie die globale MyBatis-Config- und Bean-Klasse, alle Dateien unter Mapper
DAO konfigurieren
2.Spring-service.xml
Postleitzahl:
<? xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/sping/sping/sping/sping/sping/sping/sping/sping/sping/sping/sping/sping.-contexte.xsd http://www.springframework.org/schema/tx http://www.springFramework.org/schema/tx/spring-tx.xsd "> <!-Alle Arten von Annotationen im Servicepaket scannen. Manager-> <bean id = "transactionManager"> <!-Datenbankverbindungspool injizieren-> <Eigenschaft name = "dataSource" ref = "dataSource"/> </bean> <bean id = "Date"> </bean> <!-Annotationsbasierte deklarative Transaktionen konfigurieren, um Transaktionsverhalten zu verwalten. Verhaltensannot-ubotation-annotation-driven-ubotation: Annotation-Driven-Driven-DREVENT-TRANSAKTION. Transaction-Manager = "TransactionManager"/> </beans>
Achten Sie auf die Region:
Service konfigurieren
3.Spring-Web.xml
Postleitzahl:
<? xmlns: context = "http://www.springframework.org/schema/context" xmlns: mvc = "http://www.springframework.org/schema/mvc" xsi: schemalocation http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/sping/sping/sping/sping/sping/sping/sping/sping/sping/sping/sping/sping.-contexte.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd "> <!-Konfiguration Spring MVC-> <! Registrieren Sie automatisch StandardAnnotationHandlermaping, AnnotationMethodHandlerAdapter b. Standardmäßig werden eine Reihe von Funktionen bereitgestellt: Datenbindung, Format von Zahlen und Daten@numberFormat,@DateTimeFormat C: XML, JSONs Standard-Lesen- und Schreibunterstützung-> <MVC: Annotationsgetrieben/> <!-2. Standard-Servlet-Konfiguration statischer Ressourcen-> <!-1). Statische Ressourcenverarbeitung hinzugefügt: JS, GIF, PNG 2). Ermöglichen Value = ". JSP"/> </bean> <!-4: Scannen Sie die Web-bezogenen Bohnen-> <CONTEXT: COMPONENT-SCAN-BASE-PACKAGE = "com.dajiu.controller"/> <mvc: Ressourcen maping = "/**/*. maxPing = "/**/*.
Achten Sie auf die Region:
Controller konfigurieren
5. Logische Implementierung (Benutzer als Beispiel nehmen)
①First Definieren Sie die Benutzerklasse in der Bohne
Paket com.dajiu.bean;/*** Erstellt von Zhangxing am 2017/4/7. */public class User {private int id; privater Zeichenfolge Name; privates Zeichenfolgenkennwort; public int getid () {return id; } public void setId (int id) {this.id = id; } public String getName () {return name; } public void setName (String -Name) {this.name = name; } public String getPassword () {Kennwort zurückgeben; } public void setPassword (String -Passwort) {this.password = password; }}② Definieren Sie dann die Benutzerdao -Schnittstelle in DAO
Paket com.dajiu.dao; import com.dajiu.bean.user; import org.apache.ibatis.Annotations.param; import org.springframework.stereotype */@RepositoryPublic interface userDao {list <user> getAll (); Benutzer GetLogin (@param ("Name") String -Name, @param ("Passwort") String -Passwort);}Mapping DAO -Ebene in user.xml zuordnen
③Next, um die Schnittstelle im Dienst zu deklarieren
Paket com.dajiu.service; import com.dajiu.bean.user; import java.util.list;/*** Erstellt von Zhangxing unter 2017/4/7. */public interface userService {list <Unter> getAll (); Benutzer getLogin (String -Name, String -Passwort);}④ Implementieren Sie dann die Schnittstellenlogik in service.impl
Paket com.dajiu.service.impl; import com.dajiu.bean.user; import com.dajiu.dao.userdao; com.dajiu.service.userservice importieren org. Java.util.List;/*** Erstellt von Zhangxing am 2017/4/7. */ @Service ("UserService") öffentliche Klasse UserServiceImpl implementiert UserService {@autowired userDao userDao; public list <user> getAll () {return userDao.getall (); } öffentlicher Benutzer getLogin (String -Name, String -Passwort) {userDao.getLogin (Name, Passwort); }}@Autowired hier ist gleichbedeutend mit der Erstellung einer neuen Instanz
⑤implement echte Hintergrundaufruflogik im Controller
Paket com.dajiu.controller; import com.dajiu.bean.user; import com.dajiu.service.userservice; import org.springframework.bean.factory.Annotation.autowired; org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.responsebody; */@Controller@RequestMapping ("/blog") öffentliche Klasse UserController {@autowired UserService UserService; @RequestMapping ("/GetUser") @Responbody public map <String, Object> getUser () {map Map = new HashMap (); Liste <Unters> list = userService.getall (); map.put ("user", list); map.put ("Status", 1); map.put ("Erfolg", wahr); Rückgabekarte; } @RequestMapping ("getLogin") @ResponseBody public map <String, Object> getLogin (String -Name, String -Passwort) {map map = new HashMap (); User user = userService.getLogin (Name, Passwort); map.put ("Benutzer", Benutzer); map.put ("islogin", true); map.put ("Status", 1); Rückgabekarte; }}Hier repräsentiert @RequestMapping ("") den aufgerufenen Zuordnungspfad, @ResponseBody das im JSON -Datenformat gedruckte Anforderungsergebnis, und @Controller stellt dar, dass auf den Zugriff auf den Controller direkt auf den obigen Root Mapping -Pfad zugegriffen wird.
Helfen wir nun, Ihre Ideen zu verstehen: Erste Anfrage UserController ---> UserService ----> UserServiceImpl ----> UserDao ---> user.xml (Mapper) ----> Bean (Benutzer)
6. Konfigurieren Sie den Tomcat -Server
Klicken Sie auf die Schaltfläche Green Dreieck in der oberen rechten Ecke und klicken Sie auf Konfiguration bearbeiten
②klicken Sie auf das + Zeichen und wählen Sie Tomcat aus
③ Wählen Sie lokal aus
④Fill in der entsprechenden Konfiguration
⑤Click -Bereitstellung, klicken Sie auf das + Zeichen und wählen Sie Artefakt
Wählen Sie dann den ersten Element aus und geben Sie weiter ein
Auf diese Weise wird Ihr gesamtes Projekt abgeschlossen und der nächste Schritt ist zu besuchen
Okay, heute ist die Erklärung des Java -Backends von SpringMVC und MyBatis Bauen vorbei.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.