Java Web入门案例-小白教程

继续分享JavaWeb实验内容,实验内容均为servlet基础知识。

实验1 编写Servlet代码(10分)

1、参考学习通“Java程序设计”16.5节实验教学视频,配置Java Web开发环境;
2、创建一个Jakarta EE项目;
3、编写一个Servlet代码,满足以下要求:
(1)通过URL:http://localhost:8080/students,能够访问到该Servlet;
(2)该Servlet的功能是:产生三个学生对象,具有学号、姓名和Java Web成绩,然后以表格形式(HTML的<table>标签)将三个学生的数据输出到浏览器显示。
4、可选:三个学生对象的数据,以@WebServlet和@WebInitParam注解的形式予以配置,然后以表格形式将三个学生的数据输出到浏览器显示。

检查点1:代码功能是否正常;
检查点2:是否理解代码;
检查点3:是否会设断点调试;
检查点4:是否会利用工具观察HTTP请求和响应。

注意事项:
携带自己的笔记本。


此实验内容非常简单。

前端通过URL:http://localhost:8080/students,会发起/students请求,后端处理请求,并响应数据即可。

具体实现代码为:

前端代码:

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
    <title>查询成绩</title>
</head>
<body>
<br/>
<a href="/students">查询成绩</a> //发起/students请求
</body>
</html>

后端代码:

首先封装一个实体类Student ,用来产生学生对象,具有学号姓名和Java Web成绩这三个属性。

代码实现:

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;


@Data
@AllArgsConstructor
@NoArgsConstructor
public class Student {
    private String  Username;
    private String  Sno;
    private int  Score;
}

此处通过使用注解@data,注解会提供getter、setter、equals、canEqual、hashCode、toString等方法。@AllArgsConstructor 有参构造    @NoArgsConstructor 无参构造,较为方便。

注意:使用lombok时,需要在项目的pom.xml中引入坐标依赖,并使用maven加载依赖。

<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<version>1.16.18</version>

<scope>provided</scope>

</dependency>

 

或者也可以按照下图方法直接快速生成这些getter setter方法,右击鼠标选择即可,也很方便。

Servlet代码实现:

代码逻辑很简单,new三个对象(🐕头),并为每个对象赋值,响应给前端即可。

package com.example.servletdemo;

import java.io.*;
import com.example.pojo.Student;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/students")
public class HelloServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
        response.setContentType("text/html;charset=UTF-8");

        Student student1 = new Student("吴亦凡", "202100101", 60);
        Student student2 = new Student("李易峰", "202100102", 61);
        Student student3 = new Student("蔡徐坤", "202100103", 62);

        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head><title>学生成绩单</title></head>");
        out.println("<body>");
        out.println("<h1>学生成绩</h1>");
        out.println("<table border='1'>");
        out.println("<tr><th>姓名</th><th>学号</th><th>Java Web Score</th></tr>");
        out.println("<tr><td>" + student1.getUsername() + "</td><td>" + student1.getSno() + "</td><td>" + student1.getScore() + "</td></tr>");
        out.println("<tr><td>" + student2.getUsername() + "</td><td>" + student2.getSno() + "</td><td>" + student2.getScore() + "</td></tr>");
        out.println("<tr><td>" + student3.getUsername() + "</td><td>" + student3.getSno() + "</td><td>" + student3.getScore() + "</td></tr>");
        out.println("</table>");
        out.println("</body>");
        out.println("</html>");
    }

}

运行截图:


如果你是初学JavaWeb开发,对tomcat的使用和配置不熟悉,请参考blog:

Tomcat使用教程(超详细)-CSDN博客

如有问题,欢迎评论区留言讨论!

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值