webアプリケーションを作る上で必須の知識であるAPIの作り方が、二週間悩んでいますができません。
SampleAge.htmlに生年月日を入力すると自動で年齢が入力されるようにしたいです。javascriptのみで計算して値を返す方法は分かったのですが、どうしてもAPIの学習につなげたいです。
目的:
郵便番号API(所謂外部APIというのでしょうか)を使用して住所が自動入力されるものは作れました。この郵便番号APIに当たる部分に、年齢算出APIのようなものを作成したいです。
- 用意するものは、
・生年月日を引数にとって計算し、JSON形式の年齢を返すjavaクラス(Nenrei.java)
・javaにアクセスし、結果を反映するjavascript(未作成)
・HTML
で間違いないのでしょうか。
- javascriptで使用するメソッドは何でしょうか(JSONparse,getJSON,$ajaxといろいろあって頭が追いつきません)
お忙しいところとは存じますが、もしお時間がお許しでしたらサンプルプログラム等提示していただけたら大変感謝いたします。
その他、助言等ございましたらお願いいたします。
SampleAge
1<!DOCTYPE html> 2<html> 3<head> 4<meta charset="UTF-8"> 5<title>Insert title here</title> 6 7<script type="text/javascript" src="jquery-3.5.1.min.js"></script> 8</head> 9<body> 10<form> 11 <div> 12生年月日: 13 <input id="year" type="text" size="10" /> 14 <input id="month" type="text" size="10" /> 15 <input id="day" type="text" size="10" /> 16 </div> 17 <div> 18 年齢: 19 <input id="age" type="text" size="10" /> 20 </div> 21 </form> 22</body> 23</html>
Nenrei
1package Test; 2 3import java.util.Calendar; 4 5import com.fasterxml.jackson.core.JsonProcessingException; 6import com.fasterxml.jackson.databind.ObjectMapper; 7 8public class Nenrei { 9 public String AGE(String year,String month,String day) throws JsonProcessingException { 10 11 //生年月日 12 int Year = Integer.parseInt(year); 13 int Month = Integer.parseInt(month); 14 int Day = Integer.parseInt(day); 15 16 //現在の年月日 17 Calendar calendar = Calendar.getInstance(); 18 int yearToday = calendar.get(Calendar.YEAR); 19 int monthToday = calendar.get(Calendar.MONTH); 20 int dayToday = calendar.get(Calendar.DAY_OF_MONTH); 21 22 //年齢を計算 23 int age; 24 age = yearToday - Year; 25 if(monthToday < Month) { 26 --age; 27 }else if(monthToday == Month) { 28 if(dayToday < Day) { 29 --age; 30 } 31 } 32 ObjectMapper mapper = new ObjectMapper(); 33 String json = mapper.writeValueAsString(age); 34 35 return json; 36 37 38 39 } 40} 41
一連の流れで動作する、最低限のプログラムが知りたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/20 05:55
2020/08/20 06:00
2020/08/20 06:06
2020/08/20 06:15 編集
2020/08/20 06:31
2020/08/20 06:35
2020/08/20 06:46
2020/08/20 07:20 編集
2020/08/20 07:33
2020/08/20 07:41 編集
2020/08/20 07:58