質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Echo(フレームワーク)

Echoは、Go言語で作られたフレームワーク。非常に軽量で、小~中規模のアプリ構成を想定した仕様になっています。公式ドキュメントが用意されており、初心者でも始めやすい点が特徴です。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Q&A

1回答

874閲覧

go echo jsonの確認

tyuunibyou

総合スコア22

Echo(フレームワーク)

Echoは、Go言語で作られたフレームワーク。非常に軽量で、小~中規模のアプリ構成を想定した仕様になっています。公式ドキュメントが用意されており、初心者でも始めやすい点が特徴です。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

0グッド

0クリップ

投稿2019/06/08 13:03

コード ```package main import( // "fmt" // "html" "net/http" // "log" "github.com/labstack/echo" "github.com/labstack/echo/middleware" // "github.com/labstack/echo/engine/standard" "github.com/jinzhu/gorm" "github.com/jinzhu/gorm/dialects/postgres" ) //フレームワークechoのインスタンスを作成 func main() { e:=echo.New() //ミドルウェア(アプリとOSの補助) e.Use(middleware.Logger()) e.Use(middleware.Recover()) //Routing(javaから情報もらってSQLデータベースへ送る) (GETはjsonで受け取り) e.GET("/items", listitems) e.POST("/items", createitems) //Routing(SQLデータベースから情報もらってjavaのほうへ送る) (PUTはjsonで送る) e.GET("/items", receiveitems) e.POST("/items", updateitems) e.GET("/items",sign_up) e.POST("/items",sign_reseve) e.Logger.Fatal(e.Start("127.0.0.1:1323")) } //userのJSONの形の指定 type ( Todo struct { TodoAdd string `json:"TodoAdd" ` Select string `json:"Select"` search string `json:"search"` delete string `json:"delete"` Update string `json:"Update"` } ) //上記の関数(listitemsなど)の中身 func listitems(c echo.Context) error { return c.JSON(http.StatusCreated,"") } func createitems(c echo.Context) error { todo := new(Todo) if err := c.Bind(todo); err != nil { return err } return c.JSON(http.StatusCreated,todo) } func receiveitems(c echo.Context) error { return c.JSON(http.StatusCreated,"") } func updateitems(c echo.Context) error { todo := new (Todo) if err :=c.Bind(todo); err !=nil{ return err } return c.JSON(http.StatusCreated,todo) } func sign_up(c echo.Context)error{ return c.JSON(http.StatusCreated) } // } // } //RDBとの接続 func gormConnect() *gorm.DB{ DBMS :="postgres" User :="root" PASS :="####" PROTOCOL :="tcp(##.###.##.###:3306)" DBNAME :="##" CONNECT=USER+":"+PASS+"@"+PROTOCOL+"/"+DBNAME dv,err :=gorm.Open(DBMS,CONNECT) if err !=nil{ panic(err.Error()) } return db } func main (){ db :=gormConnect() defer db.Close() } //SELECT文(単一) type event struct{ User_name int "json:user_name" Id int `json:id` User_id int `json:user_id` text int `json:text` year int `json:year` month int `json:month` day int `json:day` } func main (){ db :=gormConnect() defer db.Close //構造のインスタンス化 eventEx :=event{} //IDの指定 eventEx.Id = "text first literl" //指定したIDをもとにレコードを一つ引っ張ってくる db.First(&eventEx) } //INSERT文 func main () { db :=gormConnect() defer db.Close() //構造体のインスタンス化 eventEx := event{} //挿入したい情報を構造体に与える eventEx.Id =0 eventEx.User_Id=2 eventEx.day=19 //INSERTを実行 db.create(&eventEx) } //DELETE文 func main(){ db :=gormConnect() defer db.Close() //構造体のインスタンス化 eventEx :=event{} //削除したいレコードIDを指定 event.EX.Id = "" //このままだとテーブル内のレコードがすべて消えるため、削除したいレコードの情報を集める db.First(&eventEx) //完全にレコードを特定できる状態で削除を行う db.Delete(&eventEx) } //UPDATE文 func main(){ db :=gormConnect() defer db.Close() //構造体のインスタンス化 eventexBefore :=event{} //更新したいレコードを指定する eventexBefore.Id = "" //更新後のレコード情報の生成 eventExAfter :=eventexBefore db.First(&eventExAfter) eventExAfter.year = 2015 //更新を実行 db.Model(&eventexBefore).Update(&eventExAfter) //上記で更新できない場合は db.save(&eventExAfter) } } java→go→postgres sqlという流れで繋ぐ過程でgoのところを書いてみたのですが、あっているのか不安で質問しました。 フレームワークはechoを使い、GETとPOSTで書いてみました。 また、jsonでマッピングし受け渡しできるようにコードを書いたのですが、あっているのかわからず質問という形で投稿しました

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nobonobo

2019/06/10 23:07

コードをコードブロックの中に入れてください。有意な記号とかが消えてしまっています。
guest

回答1

0

java→go→postgres sqlという流れで繋ぐ過程でgoのところを書いてみたのですが、あっているのか不安で質問しました。
フレームワークはechoを使い、GETとPOSTで書いてみました。
また、jsonでマッピングし受け渡しできるようにコードを書いたのですが、あっているのかわからず質問という形で投稿しました

投稿2019/06/08 13:04

tyuunibyou

総合スコア22

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問