Abschlussarbeit:Konstruktion und Implementierung von Dota2 Datenbank Intelligent Verwaltungsplatfom
1.Die Hintergrund und Bedeutung des Themas
Dank nicht ausreichendes Erkenntnisse der Spielplanner und Spielbetrieber,ist Sichtbarkeit und Flexiblität der Information schlecht,man kann Datenverwaltung des Spiels nicht effizient durchlaufen order Programmierer Bedürfnis stellen.Deshalb sind Informatisierung des Spiels und Koordinierung der Verwaltung bedrohliche nahe.Spielbetriber braucht professionelle Management System,Entwicklungseffizienz der Programmierer und Verwaltungseffizienz der Spielplanner und Spielbetriber zu erheben.Das Spielern brauchen Spieldaten zu erlangen,wie zum Beispiel historische Protokoll,Anwendungsfall des Helds und Attributen der Ausrüstung usw.Mit professionelle Aspekte über diese Spiel informieren,wie durch Webseite,Handy Browser.Früher wenn Spielern im Spielprozess über Spieldaten informieren,werden Zeiten aufgewendet.Das Problem der Effizienz ist zunehmend prominent.
2.Die Entwicklungstechnologie
1.1 Spring
Das Spring Framework ist ein quelloffenes Framework für die Java-Plattform. Ziel des Spring Frameworks ist es, die Entwicklung mit Java/Java EE zu vereinfachen und gute Programmierpraktiken zu fördern. Spring bietet mit einem breiten Spektrum an Funktionalität eine ganzheitliche Lösung zur Entwicklung von Anwendungen und deren Geschäftslogiken; dabei steht die Entkopplung der Applikationskomponenten im Vordergrund.
Das Framework basiert auf den Prinzipien:
- Dependency Injection: Den Objekten werden die benötigten Ressourcen und Objekte zugewiesen. Sie müssen sie nicht selbst suchen.
- Aspektorientierte Programmierung (AOP): Dadurch kann der Programmierer vor allem technische Aspekte wie Transaktionen oder Sicherheit isolieren und den eigentlichen Programmcode davon frei halten. Spring bringt dabei neben Spring AOP eine gute Unterstützung für AspectJ und dessen Pointcut Expression Language mit.
- Vorlagen dienen dazu, die Arbeit mit einigen Programmierschnittstellen (APIs) zu vereinfachen, indem Ressourcen automatisch aufgeräumt sowie Fehlersituationen einheitlich behandelt werden.
Dadurch wird ein POJO-basiertes Programmiermodell möglich, bei dem die POJOs zusätzlich in verschiedenen Umgebungen (auf einem Server oder in einer Client-Anwendung) lauffähig sind.
1.2 SpringBoot
SpringBoot wurde von Team Pivotal erfunden,deren Ziel ist dass Spring Aplikationen und Entwicklungsprozess vereinfachen.
Eigenschaften besteht darin:
Man kann Unäbhangige Spring Anwendungsprogramm errichten
Eingefügt Tomcat,Man braucht kein WAR Dokumente anzuordnen
Vereinfachen Maven Konfiguration
Autmatisiert stellen Spring ein
Man brauch kein XML zu schreiben
1.3 Spring MVC
Vereinfacht
Detailliert
1.4 ExtJs
ExtJs kann RIA(Rich Internet Application) AJAX Anwedung entwickeln,ExtJs wird von Javascript geschrieben,Es hat nicht zu tun mit Backend Technologie,am Meisten benutzt man damit,dass User Interface erstellen
1.5 Mybatis
Die Hauptfunktionalität von MyBatis ist die Trennung von Datenbankzugriffscode vom restlichen Applikationscode. Die wichtigsten Komponenten dafür sind die Data-Access-Objects, über die die Applikation mit dem Persistenzlayer kommuniziert, sowie die SQL-Maps, die die Datenbankzugriffe entkoppeln.
3.Das Gesamtdesign
Das Graph Gesamter Struktur und Funktion
ER Graph
Tabelle
Tabelle Benutzer zeigt wie Tabelle4-1 ,Tabelle Benutzer speichert Information des Benutzers,wenn Benutzer registiert ist,dann fügen Information des Benutzers zu Tabelle hinzu
Tablle 4-1Benutzer
字段名 |
数据类型 |
允许非空 |
默认值 |
备注 |
ID |
INT |
NO |
|
用户id |
USERNAME |
VARCHAR |
NO |
|
用户名 |
REALNAME |
VARCHAR |
YES |
NULL |
真实姓名 |
PASSWORD |
VARCHAR |
NO |
|
密码 |
SEX |
TINYINT |
YES |
|
性别 |
PHONE |
VARCHAR |
YES |
|
手机号 |
STATUS |
TINYINT |
NO |
|
状态,0禁用1正常 |
UPDATE_TIME |
TIMESTAMP |
NO |
CURRENT_TIMESTAMP |
修改时间 |
CREATE_TIME |
DATETIME |
NO |
'0000-00-00 00:00:00' |
创建时间 |
Tabelle Rolle zeigt wie 4-2,Tabelle Rolle speichert Information der Rolle,entstehen eine Beziehung mit Tabelle Benutzer viele zu viele
Tabelle 4-2 Tabelle Rolle
字段名 |
数据类型 |
允许非空 |
默认值 |
备注 |
ID |
INT |
NO |
|
角色id |
NAME |
VARCHAR |
NO |
|
角色名 |
DESCRIPTION |
VARCHAR |
YES |
NULL |
描述 |
STATUS |
TINYINT |
NO |
|
状态 |
UPDATE_TIME |
TIMESTAMP |
NO |
CURRENT_TIMESTAMP |
修改时间 |
CREATE_TIME |
DATETIME |
NO |
'0000-00-00 00:00:00' |
创建时间 |
Tabelle Kompetenz zeigt wie Tabelle 4-3,Tabelle Kompetenz speichert Information der Kompetenz,entstehen eine Beziehung mit Tabelle Rolle viele zu viele
Tabelle 4-3 Tabelle Kompetenz
字段名 |
数据类型 |
允许非空 |
默认值 |
备注 |
ID |
INT |
NO |
|
角色id |
NAME |
VARCHAR |
NO |
|
权限名 |
TYPE |
VARCHAR |
NO |
NULL |
描述 |
ICON |
VARCHAR |
YES |
|
权限图标 |
PARENT_ID |
INT |
NO |
|
父类ID |
PERMISSION |
VARCHAR |
NO |
|
权限地址 |
URL |
VARCHAR |
NO |
|
|
STATUS |
TINYINT |
NO |
|
状态 |
UPDATE_TIME |
TIMESTAMP |
NO |
CURRENT_TIMESTAMP |
修改时间 |
CREATE_TIME |
DATETIME |
NO |
'0000-00-00 00:00:00' |
创建时间 |
Tabelle Held zeigt wie Tabelle 4-4,Tabelle Held speichert Information des Helds
Tabelle 4- 4 Tabelle Held
字段名 |
数据类型 |
允许非空 |
默认值 |
备注 |
ID |
INT |
NO |
|
英雄ID |
NAME |
VARCHAR |
NO |
|
英雄名 |
LOCALIZED_NAME |
VARCHAR |
YES |
NULL |
英文名 |
HEADPORTRAIT_PATH |
VARCHAR |
NO |
|
头像路径 |
HERO_PATH |
VARCHAR |
NO |
CURRENT_TIMESTAMP |
英雄图片路径 |
Tabelle Gegenstand zeigt wie Tabelle 4-5,Tabelle Gegenstand speichert Information des Gegenstands
Tabelle 4-5 Tabelle Gegenstand
字段名 |
数据类型 |
允许非空 |
默认值 |
备注 |
ID |
INT |
NO |
|
物品ID |
NAME |
VARCHAR |
NO |
|
物品名 |
COST |
INT |
NO |
NULL |
花费 |
SECRET_SHOP |
TINYINT |
NO |
|
秘密商店 |
SIDE_SHOP |
TINYINT |
NO |
|
路边商店 |
RECEIPE |
TINYINT |
NO |
|
是否卷轴,0否,1是 |
UPGRATED_ITEM |
VARCHAR |
NO |
0 |
是否更新物品 |
ITEM_PATH |
VARCHAR |
YES |
|
物品图片路径 |
LOCALIZED_NAME |
VARCHAR |
YES |
CURRENT_TIMESTAMP |
英文名 |
CHINESE_NAME |
VARCHAR |
YES |
'0000-00-00 00:00:00' |
中文名 |
Tabelle Begabung zeigt wie Tabelle 4-6,Tabelle Begabung speichert Information der Begabung
Tabelle 4-6 Tabelle Begabung
字段名 |
数据类型 |
允许非空 |
默认值 |
备注 |
ID |
INT |
NO |
|
天赋ID |
TEXT |
VARCHAR |
NO |
|
天赋名 |
HERO_ID |
INT |
NO |
|
英雄ID |
GRADE |
TINYINT |
NO |
|
天赋等级 |
TYPE |
TINYINT |
NO |
|
天赋类型,类型1,类型2 |
IS_DELETE |
TINYINT |
NO |
0 |
是否已删除,0否,1是 |
4.Detailliertes Systemdesign
4.1 Systemanmeldung
Diese Modell interpretiert Einloggen und Einschreibung,Einloggen braucht Benutzername,Passwort,Geschlecht und freiwillige Lücke.Ein Benutzername kann nur ein Mal registriert werden
Falls Benutzer loggt ein,braucht er Buntzername und Passwort.Wenn man größer als fünf Mal Passwort oder Benutzername falsch schreiben,darf man nicht während 5 Minuten noch einloggen
4.2 Bunutzeraktion
Nach der Spieler Plattform einloggen,Spieler kann Held,Gegenstände,Begabung recherchieren und Gegenstände order Begabung simulieren
Simulation des Gegenständes:Spieler klickt rechten Gegenstände,kann er unter Ergebnis sehen.Der Spieler kann frei Ausrüstung zusammensetzen
Simulation der Begabung:Wenn spieler Graph des Helds klicken,kann er Information der Begabung ansehen
Historische Protokoll:Der Spieler gibt SteamId ein,dann das Spiel aus betimmte SteamId werden sofort recherchiert werden,doppelklicken eine Seite Spiel.tauchen detailliertes Info des Spiels auf
4.3 Administratorsaktion
Nach Verwalter Plattform einloggen,kann er Benutzer,Rolle,Kompetenz,Held,Gegenstände,Begabung CRUD Operationen ausfüren
Außer Kompetenz werden andere Modelle als Grid gezeigt
Kompetenz wird von Baum demonstriert
作者:Rest探路者
出处:http://www.cnblogs.com/Java-Starter/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意请保留此段声明,请在文章页面明显位置给出原文连接
Github:https://github.com/cjy513203427