質問: ### 前提・実現したいこと Javaの勉強をしています。 その中でWebアプリを作ってみようと思ったのですが、見よう見まねで進めていったため基礎知識のなさから困っています。 作成した機能は「ログインしたユーザーによって異なるJSON形式のレスポンスを返す」という単純なものなのですが、 これをCURLコマンドを > > curl -X POST -d "userId=TestUser&password=pass" http://localhost:8080/web/post/ > > > のように使って試しながら進めていきました。 結果としてはこの機能自体は思うように作成できたのですが、ここでわからないことが出てきました。 今はEclipseを使っているので > > 作っていたSpringプロジェクトを右クリック>デバッグ>サーバーでデバッグ > > > というのを選んで、コマンドプロンプトで上記のCURLコマンドを試せば作成した機能が呼ばれているのですが、 世の中にあるログインページはIDとパスワードを入力してログインボタンのようなものを押すとこのCURLコマンドと同じリクエストが送られるのだと思います。 この時何をどうしたらEclipseでやっていた「プロジェクトを右クリック>デバッグ>サーバーでデバッグ」の部分をなくせるのかがわからないことに気づきました。 前に普通のアプリケーションを勉強で作ったときはBuildしてExeファイルを作成してそれを起動すればよかったのですが、Webアプリだとどうやって機能が呼び出されるのでしょうか?...1 また、今はhttp://localhost:8080/web/post/というURLを指定していますが、普通のログインページだと > > https://login.yahoo.co.jp/config/login?.src=www&.done=https://www.yahoo.co.jp > > > というログインページがあってIDとパスワードを入力してログインボタンを押すことでログインができます。 どうやったらhttp://localhost:8080/以外のちゃんとしたURLを指定できるのでしょうか?...2 どなたか教えていただけたら嬉しいです。 ### 補足情報(FW/ツールのバージョンなど) Windows Eclipse Java Spring boot Maven
回答: まずインターネットに公開できるサーバーが必要です。 そのサーバー上にJavaのWebアプリを実行できる環境を構築します(Java + Apache + Tomcat) Apache、Tomcatの設定により、特定のURLパスに来たリクエストを、特定のアプリに結び付けることができます。 このままだとURLがhttp://111.222.333.444/loginのようにIPでしかアクセスできないので、お名前.comみたいなところでドメインを購入しIPと関連付けます。 Javaを勉強中とのことですので、実行環境のことをもっと知りたければ まずはTomcatをローカルに構築してみるといいかもしれません。 eclipseが自動で実行してくれているlocalhost:8080の環境を 1から自身で作成するイメージです。