Web -查询表中所有的用户信息并展示在页面上。

例: 在浏览器中输入地址之后 , 查询出所有的用户信息 !ubmV0L3FxXzQyOTg2MTA3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
1.准备工作.

1.web - > WEB-INF - > lib包下导入jia包.
2.创建数据库和表 , 初始化表中数据 .
3.将c3p0工具类 , 放在src下 , 修改表名.
4.编写用于展示的jsp页面 .
5.创建好三层架构 .
在这里插入图片描述

Web层 -> UserServlet.java

@WebServlet("/findAll")
public class UserServlet 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 {
        // 创建UserService对象 , 使用其方法.
        UserService us = new UserService();
        // 返回一个List集合 , 把user对象放到集合中.
        List<User> list = us.findAll();

        // 将返回的list集合 , 添加到域对象中.
        request.setAttribute("user",list);

        // 成功之后 , 请求转发到jsp页面 , 给用户展示.
        request.getRequestDispatcher("/list.jsp").forward(request,response);
    }
}

Service层 -> UserService.java

public class UserService {
    // 创建UserDao对象 , 调用其方法 , 并返回 .
    UserDao dao = new UserDao();
    public List<User> findAll() {
        return dao.findAll();
    }
}

Dao层 -> UserDao.java

public class UserDao {
    // 查询数据库中所有的用户信息.
    public List<User> findAll() {
        // 1.创建QueryRunner对象.
        QueryRunner qr = new QueryRunner(DataSourceUtil.getDataSource());
        // 2.创建sql语句.
        String sql = "select * from user ";
        // 3.使用query方法执行sql语句.
        try {
            return qr.query(sql, new BeanListHandler<>(User.class));
        } catch (SQLException e) {
            e.printStackTrace();
            throw new RuntimeException(e);
        }
    }
}

javaBean -> User.java

属性名  ==========  字段名
创建getter/setter方法 !

jsp页面 -> list.jsp

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<!-- 网页使用的语言 -->
<html lang="zh-CN">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <title>用户信息管理系统</title>

    <!-- 1. 导入CSS的全局样式 -->
    <link href="resource/css/bootstrap.min.css" rel="stylesheet">
    <!-- 2. jQuery导入,建议使用1.9以上的版本 -->
    <script src="resource/js/jquery-2.1.0.min.js"></script>
    <!-- 3. 导入bootstrap的js文件 -->
    <script src="resource/js/bootstrap.min.js"></script>
    <style type="text/css">
        td, th {
            text-align: center;
        }
    </style>
</head>
<body>
<div class="container">
    <h3 style="text-align: center">用户信息列表</h3>
    <table border="1" class="table table-bordered table-hover">
        <tr class="success">
            <th>编号</th>
            <th>姓名</th>
            <th>性别</th>
            <th>年龄</th>
            <th>籍贯</th>
            <th>QQ</th>
            <th>邮箱</th>
            <th>操作</th>
        </tr>
        <c:forEach items="${user}" var="user">
            <tr>
                <td>${user.id}</td>
                <td>${user.name}</td>
                <td>${user.sex}</td>
                <td>${user.age}</td>
                <td>${user.address}</td>
                <td>${user.qq}</td>
                <td>${user.email}</td>
                <td><a class="btn btn-default btn-sm" href="update.jsp">修改</a>&nbsp;<a class="btn btn-default btn-sm" href="">删除</a></td>
            </tr>
        </c:forEach>
        <tr>
            <td colspan="8" align="center"><a class="btn btn-primary" href="add.jsp">添加联系人</a></td>
        </tr>
    </table>
</div>
</body>
</html>

©️2021 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值