---
# System prepended metadata

title: 2021.04.19（月）①
tags: [授業ノート, JV27]

---

# 2021.04.19（月）①
###### tags: `JV27` `授業ノート`

## Java MVCモデル
![](https://i.imgur.com/YfinHM6.png)


## Java API

```htmlembedded=
<form action="./servlet/HelloWorld3">
``` 
./ → 相対パス
servlet → WEB-INF/classes
HelloWorld3 → クラス名
```java=
import javax.servlet.http.*;
```
パッケージ　→　javax.servlet.http.
クラス　　　→　*

クラス名を*にすると全クラス名


*  パッケージ
    * クラス
        * メソッド
        * メソッド
    * クラス

### 親クラスを継承する時extends使う
```java=
Java <クラス名> extends HttpServlet {...}
```


### ブラウザへ文字を出力する場合
```java=
import java.io.PrintWriter; //クラス宣言
PrintWriter out;            //outオブジェクト
out = res.getWriter();      //PrintWriterオブジェクト取得
out.Println('文字列');       //Printlnメソッド
```

>0.out = res.getWriter();ってなんだっけ
1.resoponseにhtml書き込むてきな？
outがインスタンスされてるから。。。
明示的にreturn してないから読みづらい
responseが配列みたいな感じでprintlnでpush()してる感じじゃないかな？
returnって書きたくなる
0.~~ちょっとなに言ってるかわかんない（嘘）~~

### Nodejsで書くとこうなる↓（多分）
```javascript=
const express = require('express')
const app = express()

app.get('/', (req, res) => {
    res.writeHead(200, {'Content-Type' : 'text/html'})
    res.send('
        <head>
            <title>Hello World!!!</title>
        </head>
        <body>
            <h1>Hello World!!!</h1>
            <br/>
            <p>ようこそJavaScriptの世界へ</p>
            <br/>
            <a href="../helloworld.html">
                TOPへ
            </a>
        </body>
    ')
    res.end()
} )

app.listen(3000, () => {
    console.log('server start!  http://localhost:3000')
})
```

## 雑談 (0→安井 1→みや)