day07【Jsp,el,jstl】综合案例-查询所有联系人分析

day07【Jsp,el,jstl】综合案例-查询所有联系人分析

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试驱动开发

1:新建模块添加git
在这里插入图片描述
2:建一个test文件
test代码:

public class TestContactService {
    @Test
    public void test01(){
            //1:创建业务类对象
            ContactService contactService = new ContactService();
            //2:调用查询
            List<Contact> contactList = contactService.queryAll();
            //3:遍历
            for(Contact contact:contactList){
                System.out.println(contact);
            }
    }
}


service层

public class ContactService {
    //1:创建数据层访问对象
    private ContactDao dao = new ContactDao();
    public List<Contact> queryAll() {
        //2:调用全查方法
        return dao.findAll();
    }
}

contact层

//联系人实体类
public class Contact {
    private int id;
    private String name;
    private String sex;
    private int age;
    private String address;
    private String qq;
    private String email;

Dao层

//数据访问层
public class ContactDao {
    public List<Contact> findAll() {
        //创建集合
        List<Contact> list = new ArrayList<>();
        for (int i = 0; i < 10; i++) {
            //添加元素
            Contact contact = new Contact(i,"name"+i,"男",10,"bj","QQ","xx@qq.com");
            list.add(contact);
        }
        return list;
    }
}


运行一下test测试,只要数据没有问题,增加页面显示是比较容易的,将文件push到远程仓库

servlet

@WebServlet("/list")
public class ContactListServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            doGet(request,response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //1:创建业务类对象
        ContactService contactService = new ContactService();
        //2:调用查询
        List<Contact> contactList = contactService.queryAll();
        //3:遍历打印,改成请求转发,并且使用el与jstl来展示
        request.setAttribute("list",contactList);
        request.getRequestDispatcher("/list.jsp").forward(request,response);
    }
}

1:带数据到页面:请求转发‘
2:更新地址:重定向

jsp页面:
添加jstl的jar包,并且项目识绑定(右击-》add as libray
在这里插入图片描述
在这里插入图片描述
引用库,一定为jsp(蓝色标记)

<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<%--        1:判断一下,当前的集合是否为空--%>

<%--        2:没有元素,提示没有查询结果--%>
            <c:if test="${empty list}">
                没有查询到联系人
            </c:if>
<%--        3:有元素,使用循环标签显示所有的元素--%>
            <c:if test="${!empty list}">
                <table border="1" width="100%">

                        <tr>
                            <td>编号</td>
                            <td>姓名</td>
                            <td>性别</td>
                            <td>年龄</td>
                            <td>籍贯</td>
                            <td>QQ</td>
                            <td>email</td>
                            <td>操作</td>
                        </tr>

                    <c:forEach items="${list}" var="item">
                        <tr>
                            <td>${item.id}</td>
                            <td>${item.name}</td>
                            <td>${item.gender}</td>
                            <td>${item.age}</td>
                            <td>${item.address}</td>
                            <td>${item.qq}</td>
                            <td>${item.email}</td>
                            <td>删除</td>
                        </tr>
                    </c:forEach>

            </c:if>
</body>
</html>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值