2 Spring Soft. 27 12 14
1 3 1.1......................................... 3 1.2......................................... 3 1.3 Git................................... 3 2 HTML/CSS 5 2.1................................ 5 2.2.................................. 5 2.3.................................. 5 2.4 HTML................................ 5 2.5 HTML.................................. 6 2.6 CSS................................. 6 2.7 CSS..................................... 6 3 JavaScript 6 3.1 JavaScript.......................... 7 3.2 JavaScript......................... 7 4 8 4.1............................... 8 4.1.1 Account Class................................. 9 4.1.2 CreateAccount Class.............................. 11 4.1.3 EditAccount Class............................... 12 4.1.4 Login Class................................... 12 4.2................................ 13 4.2.1 Book Class................................... 13 4.2.2 BookManage Class............................... 14 4.3.................................... 20 4.3.1 Mail....................................... 20 4.3.2 MailManage................................... 21 4.4................................ 25 4.4.1 BookSearch Class................................ 25 4.5................................. 29 4.5.1 PublicManage Class.............................. 29 4.6................................. 33 4.6.1 BrowserController Class............................ 33 4.6.2 ServerController Class............................. 36 4.7 ISBN.................................. 38 4.7.1 ISBNController Class............................. 38 4.8................................ 39 4.8.1 InOut Class................................... 39 4.8.2 Change Class.................................. 40 1
5 51 5.1........................................... 51 5.1.1................................... 52 5.1.2................................ 52 6 53 6.1.................................. 53 6.2...................................... 54 6.2.1............................ 54 6.2.2............................. 55 6.2.3................................ 55 6.2.4.................................. 55 6.2.5................................. 55 2
1 PC Web 1.1 () 1.2 :HTML CSS PHP JavaScript DBMS: MySQL : LaTeX : Git HTTP : Node.js : safari GoogleChrome 1.3 Git Git Spring Soft. 3 3
() 1. master 2. 2 Function -F MRepo () 1.1 Function MRepo 1.1-F BugPatch -B MRepo () 1.1 BugPatch MRepo 1.1-B BugPatch BOOK MAN-AGE ( ) Function BugPatch 4 MRepo 1.1 Function BugPatch MRepo 1.2 4
2 HTML/CSS Google HTML / CSS HTML/CSS 2.1 (HTTP: HTTPs:) 2.2 / alt 2.3 UTF-8 BOM 2.4 HTML HTML5 XHTML5 HTML HTML HTML HTML hx p a HTML a onclick JavaScript alt alt= 5
UTF-8 HTML & 2.5 HTML li 2.6 CSS CSS CSS CSS CSS HTML W3C CSS validator ID ID ID ID 0 0 2.7 CSS CSS CSS 3 JavaScript Google JavaScript JavaScript 6
3.1 JavaScript var NAME LIKE THIS if delete null eval() eval with() with 3.2 JavaScript 7
ClassNamesLikeThis() methodnameslikethis( ) functionnameslikethis( ) variablenamedlikethis( ) CONSTANT VALUES LIKE THIS( ) filenamedlikethis.js( ) ( ) ( ) 4 BOOK MAN-AGE ISBN 4.1 BOOK MAN-AGE 6 6, 7, 8 8
4.1.1 Account Class 4.1.1.1 - module.exports = Account 4.1.1.2 - save(fn) - update(fn) - hashpassword(fn) - getbyname(name, fn) - getid(id, fn) - get(id, fn) - authenticate(id, passward, fn) - tojson() account() Object save() ID ID ID update() 9
ID hashpassword() password getbyname() ID getid() ID ID ID get() 10
ID ID ID authenticate() ID ID ID tojson() JOSN ID ID 4.1.2 CreateAccount Class 4.1.2.1 - Account = require():var 4.1.2.2 - submit(req,res,next) submit() 11
HTTP POST HTTP POST 4.1.3 EditAccount Class 4.1.3.1 - Account = require():var 4.1.3.2 - submit(req,res,next) submit() 4.1.4 Login Class 4.1.4.1 - Account = require():var 4.1.4.2 - submit(req,res,next) - logout(req,res) submit() 12
ID Account.authenticate() logout() 4.2 9 6.2.5 4.2.1 Book Class 4.2.1.1 - account:string - ID:int - title:string - author:string - publisher:string - genre:string - storage:string - borrower:string - ISBN:int - needed:byte 13
- loaned:byte - date:int - publicdate:int - loandate:int 4.2.2 BookManage Class 4.2.2.1 # mybooks 4.2.2.2 + expandbooks( words :String) : void + requestisbn(isbn) : String + add( request :String, words :String) : String + edit( request :String, words :String) : String + loan( request :String, words :String) : String + delete( request :String, words :String) : String expandbooks( words :String) JSON JSON "words": JSON [ "ID": ID, "title":, "author":, "publisher":, "genre":, "storage":, "borrower":, 14
"ISBN":ISBN, "date": "needed":, "publicdate": "loaned": "loandate":, ] JSON Book Book mybooks requestisbn(number) ISBN JSON Number ISBN 13 10 JSON "result":ture, "words": JSON "title":, "author":, "publisher":, "genre":, "ISBN":ISBN, JSON "result":false, "words":"" JSON 15
"result":false, "words":"" ISBN JSON ISBN JSON JSON add( request :String, words :String) JSON Boolean JSON "request":, "account":, "words": add () JSON "title":, "author":, "publisher":, "genre":, "storage":, "ISBN":ISBN, "needed": "date": "publicdate": JSON "result":true, 16
JSON "result":false, "words":"" JSON "result":false, "words":"" JSON JSON JSON ture JSON JSON date : publicdate : needed : edit( request :String, words :String) JSON Boolean JSON "request":, "account":, "words": edit () JSON "ID": ID, "title":, "author":, "publisher":, "genre":, "storage":, 17
"ISBN":ISBN, "needed": "date": "publicdate": JSON "result":true, JSON "result":false, "words":"" JSON "result":false, "words":"" JSON JSON JSON ture JSON JSON date : publicdate : needed : loan( request : String, words :String) JSON Boolean JSON "request":, "account":, 18
"words": loan () JSON "ID": ID, "borrower":, "loaned" : "loandate": JSON "result":true, JSON "result":false, "words":"" JSON "result":false, "words":"" JSON JSON JSON ture JSON JSON loandate : add delete( request : delete, words :String) JSON Boolean 19
JSON "request":, "account":, "words": delete () JSON "ID": ID, JSON "result":true, JSON "result":false, "words":"" JSON ture JSON JSON 4.3 15?? 4.3.1 Mail 4.3.1.1 - sender : String + getter : String 20
+ subtitle : String + text : String - senddate : String + unread : byte 4.3.2 MailManage 4.3.2.1 mymails 4.3.2.2 + getmailinfo( request :String) : String + getmaillist( request :String) : String - showmaillist( request :String, words :[String]) : String - getresendaddress( request :String) : String - getnewsendaddress( request :String) : String + sendmail( request :String, words :[String]) : Boolean getmailinfo( request :String) getmaillist JSON JSON JSON reqest : getsendedmail ( ) getincomemail () JSON words : JSON 21
[ "sender":, "getter":, "subtitle":, "text":, "senddate":, "unread": ] transmission transmission showmaillist getmaillist JSON getmaillist( request :String) JSON JSON JSON reqest : getsendmail ( ) getincomemail () JSON words : JSON [ "sender":, "getter":, "subtitle":, "senddate":, "unread":,...... ] 22
getmailinfo getmailinfo 20 showmaillist JSON showmaillist( request :String, words :[String]) getmailinfo getmaillist JSON JSON JSON request : words : dayascend : daydescend : JSON [ "sender":, "getter":, "subtitle":, "senddate":, "unread":,...... ] outgomailtop incomemailtop JSON getresendaddress( request :String) ID sendmail JSON JSON 23
JSON reqest : getsender : ID JSON words : ID ID JSON getnewsendaddress( request :String) sendmail JSON JSON JSON reqest : getbookaccount : ID JSON words : ID JSON ID JSON sendmail( request :String, words :[String]) JSON Boolean JSON request :, words : add () JSON [ "subtitle":, "text": ] JSON 24
"result": true JSON "result":false, "words":"" JSON Mail Mail HTTP BOX getresendaddress getnewsendaddress Mail Mail mymails Mail DB JSON sender : ID senddate : unread : getter :getresendaddress getnewsendaddress 4.4 17 4.4.1 BookSearch Class 4.4.1.1 + orsearch( words :String) : String + andsearch( words :String) : String + sort(int) : String orsearch( words :String) JSON JSON JSON 25
"words": JSON [ 1, 2, 3, ] JSON "words": JSON [ "title":, "author":, "publisher":, "genre":, "storage":, "ISBN":ISBN, "needed": "borrower":, "loaned" : "date": "publicdate": "loandate":, ] BookManage mybooks OR JSON JSON andsearch( words :String) JSON JSON JSON 26
"words": JSON "title":, "author":, "publisher":, JSON "words": JSON [ "title":, "author":, "publisher":, "genre":, "storage":, "ISBN":ISBN, "needed": "borrower":, "loaned" : "date": "publicdate": "loandate":, ] BookManage mybooks AND JSON JSON sort(number) 27
JSON 00 01 02 03 10 11 12 13 JSON "words": JSON [ "title":, "author":, "publisher":, "genre":, "storage":, "ISBN":ISBN, "needed": "borrower":, "loaned" : "date": "publicdate": "loandate":, ] BookManage mybooks JSON JSON 28
4.5 18 4.5.1 PublicManage Class 4.5.1.1 - publicbooks 4.5.1.2 + expandbooks( words :String ) : void + orsearch( request :String, words :String) : String + andsearch( request :String, words :String) : String + sort(int) :String expandbooks( words :String) JSON JSON "words": JSON [ "account": "title":, "author":, "publisher":, "genre":, "ISBN":ISBN, "publicdate":, ] 29
JSON Book Book publicbooks orsearch( request :String, words :String) JSON JSON JSON "request":, "words": orsearch (OR ) JSON [ 1, 2, 3, ] JSON "result":ture, "words": JSON [ "account": "title":, "author":, "publisher":, "genre":, "ISBN":ISBN,, ] JSON "result":false, 30
"words":"" JSON "result":false, "words":"" JSON JSON JSON ture JSON JSON JSON expandbooks publicbooks andsearch( request :String, words :String) JSON JSON JSON "request":, "words": andsearch AND ) JSON "title":, "author":, "publisher":, JSON "result":ture, "words": 31
JSON [ "account": "title":, "author":, "publisher":, "genre":, "ISBN":ISBN,, ] JSON "result":false, "words":"" JSON "result":false, "words":"" JSON JSON JSON ture JSON JSON JSON expandbooks publicbooks sort(number) JSON JSON 32
00 01 02 03 10 11 12 13 "words": JSON [ "account": "title":, "author":, "publisher":, "genre":, "ISBN":ISBN, "publicdate":, ] publicbooks JSON JSON 4.6 19, 20 4.6.1 BrowserController Class HTTP 33
4.6.1.1 + connestablishment():boolean - connfailed() - transmission(request JSON:String):request JSON:String - reception(request JSON:String):String - connectioncheck():string connestablishment() true false HTTP XML HTTP true false connfailed() HTTP HTTP transmission() 34
JSON "request":, "words": JSON "title":, "author":, "publisher":, "genre":, "storage":, "ISBN":ISBN, "needed": HTTP reception() JSON JSON connectioncheck() 35
connestablishment() false true false 4.6.2 ServerController Class HTTP 4.6.2.1 + datatransmission(request JSON:String):String - datareception(request JSON:String):String - servererror() - accountcheck(request JSON:String):String datatransmission() JSON transmission() JSON "request":, "words": datareception() 36
sabaerror() accountcheck() ID ID DB transmission() datareception() datatransmission() IDreception() ID 2 datatransmission() ID reception() 37
4.7 ISBN AmazonAPI ISBN 21 4.7.1 ISBNController Class AmazonAPI ISBN 4.7.1.1 - table Name:String 4.7.1.2 + isbnsearch(request JSON:String):String - Amazonapi(request JSON):String - isbnregistration(request JSON:String):String isbnsearch() ISBN JSON ISBN ISBN ISBN ISBN JSON ISBN Amazonapi() ISBN AmazonAPI ISBN API API JSON 38
API Amazon Amazon ResponseGroup JSON isbnregistration() AmazonAPI JSON Amazonapi() JSON datatransmission() 4.8 Web 22 23 4.8.1 InOut Class 4.8.1.1 :inputbutton :viewoutput 4.8.1.2 + viewinput(int) + viewoutput(int,string) viewinput() 39
viewoutput() Change 4.8.2 Change Class 4.8.2.1 :inputbutton 4.8.2.2 + logintop(int) + newcreatetop(int) + useterms(int) + newcreatecompletion(int) + maintop(int) + logout(int) + bomtop(int) + opntop(int) + maltop(int) + acctop(int) + addbook(int) 40
+ trashbox(int) + genre(int) + sort(int) + asvancedsearchtop(int) + asvancedsearch(int) + loanedit(int) + editbook(int) + editcompletion(int) + changeaccount(int) + recordaccount(int) + outgomailtop(int) + incomemailtop(int) + sendoutgomail(int) + booktitle(int) + loan(int) + unbooktitle(int) + mailtitle(int) + closemodal(int) + closeaccordion(int) + inputisbn(int,string) + error(int) logintop() :1 6 :Log04 41
(Top01) Login (1 ) (Log03) (6 ) (Log04) newcreatetop() :2 5 :Log01 (Top0) (2 ) (Log02) (5 ) (Log01) useterms() :3 :Log02 (Log01) (Log02) newcreatecompletion() :4 :Log03 (Log0) (Log03) maintop() 42
:7 8 7 ID :Man01 (Log04) Login (7 ) (Man01) BOOKMAN- AGE (8 ) (Man01) logout() :9 :Top01 (Man01) (Top01) bomtop() :10 31 :Bom01 (Man01) (10 ) (Bom04) BACK (31 ) (Bom01) opntop() :11 43
:Opn01 (Man01) (Opn01) maltop() :12 :Mal01 (Man01) (Mal01) acctop() :13 58 :Acc01 (Man01) (18 ) (Acc02) (58 ) (Acc01) contacttop() :14 :Hel01 44
(Man01) (Hel01) addbook() :19 34 :Bom04 (Bom01) (19 ) (Bom08) (34 ) (Bom04) trashbox() :18 :Bom06 (Bom01) (Bom06) genre() :21 : (Bom01) sort() 45
:22 : (Bom01) asvancedsearchtop() :20 :Bom02 (Bom01) (Bom02) asvancedsearch() :28 :Bom03 (Bom02) (Bom03) loanedit() :18 46
:Bom07 (Bom07) editbook() :19 32 36 :Bom05 (19 ) (Bom08) (32 ) (Bom09) (36 ) (Bom05) editcompletion() :35 :Bom09 (Bom05) (Bom09) changeaccount() :55 :Acc02 47
(Acc01) (Acc02) recordaccount() :58 :Acc01 (Acc02) (Acc01) outgomailtop() :51 :Mal04 (Mal01) (Mal04) incomemailtop() :53 :Mal01 (Mal04) (Mal01) 48
sendoutgomail() :49 :Mal03 (Mal02) (Mal03) booktitle() :16 : (Bom01) loan() :18 : (Bom01) unbooktitle() 49
:41 : (Opn01) mailtitle() :50 : (Mal01) closemodal() :60 : closeaccordion() :61 : 50
inputisbn() ISBN :29 ISBN : (Bom04) (Bom05) ISBN DB ISBN DB Amazon API ISBN error() : (Err01) 5 5.1 HP ProLiant ML110 Gen9 HTTP DBMS DB HTTP 51
1: ISBN Amazon ISBN Amazon Amazon API Amazon Amazon DB 5.1.1 1 OS Windows7 HTTP Node.jsv0.10.25 5.1.2 DBMS MySQL5.7.9 2 52
2: 6 6.1 ID 1: OS WindowsServer,Linux 24TB 48TB 3.5 8 4GB 256GB CPU 2.80GHz 128W 100V 53
2: MySQL5.7.9 MySQL Standard Edition Linux,Unix,Mac,Windows 240,000(JPY) ID 1 ID ID ISBN :ISBN Amazon Advertising API ISBN ISBN ISBN 6.2 6.2.1 3 54
3: ID PW CHAR(8) CHAR(16) NCHAR(16) bit(1) DATE(YYYY/MM/DD/HH/mm/ss) ims4n sioek9k2 AGE 0 20160420 kut01 zifh7silpo 1 20160401. 6.2.2 4 5 4: (1) ID ID INTEGER(16) CHAR(8) NCHAR(16) NCHAR(16) 1248 kut01 3995 ims4n. 5: (2) ISBN NCHAR(16) NCHAR(16) NCHAR(16) INTEGER(13) DATE(YYYY/MM/DD/HH/mm/ss) 978-4 290-1. 6.2.3 6 6.2.4 7 6.2.5 8 55
6: ID INTEGER(16) DATE(YYYY/MM/DD/HH/mm/ss) 1248940 7298462. 7: ID INTEGER(16) DATE NCHAR(16) 3902941 20150508 2342780 20150429. 8: ID ID ID INTEGER(16) DATE CHAR(8) CHAR(8) NCHAR(16) NCHAR(16) BYTE(1) 9857391 20160606 a2ol b3ok NULL 0 1209754 20160522 a97m k24p 1. 3: 56
4: 5: 57
6: 58
7: 59
8: 60
9: 61
10: ISBN 62
11: 63
12: 64
13: 65
14: 66
15: 67
16: 68
17: 18: 69
19: 70
20: 71
21: ISBN 72
22: 73
23: 74