zoukankan      html  css  js  c++  java
  • Web的Java开发基础分享——学生信息管理系统(二)

        代码仓库:https://github.com/KarezaC/StudentsInformationManagerSystem

    emmmmm,坚持写博客真难啊,向哪些几百篇博文的博主大佬低头。

        接上一次,这次一定多坚持几天!

        第一件事情,把上次的index.html页面写成jsp的,为了在页面下方增加一个时间显示。代码如下:

    <!--这里是welcome.jsp-->
    <%@page import="java.text.SimpleDateFormat"%>
    <%@page import="java.util.Date"%>
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <meta name="viewport" content="width=device-width,initial-scale=1.0, 
                  minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
            <title>欢迎0.0</title>
        </head>
        <body>
            <h1 align="center">欢迎使用学生管理系统</h1>
            <a href="login.jsp"><h2 align="center">点击进入</h2></a>
            <div align="center" style="100%; position:fixed; bottom:0;">
                <%!Date time = new Date();%>
                <%
                    SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 E HH时mm分ss秒");
                %>
                <% out.println(sdf1.format(time));%>
            </div>
        </body>
    </html>
    

    效果:

    好了,第二件事情,数据库连接即基本功能实现。

    环境:mysql-8.0.11

    使用mysql可视化工具Navicat

    要连接数据库首先需要在数据库中建我们要用的库和表(这里我们不对mysql环境搭建经验做分享,如果有同学需要,博主愿意另写一篇专门分享经验的博文)

    打开Navicat,建数据库test,再建表stulist,填入一些数据,如图:

    OK!切回我们的NetBean,对上一次写的学生信息显示页面displayStuList.jsp进行完善。

    完成数据库中学生信息的展示,效果如下:

    代码如下:

    <!--这里是pages文件夹里的displayStuList.jsp-->
    <%@page import="java.sql.ResultSet"%>
    <%@page import="java.sql.PreparedStatement"%>
    <%@page import="java.sql.DriverManager"%>
    <%@page import="java.sql.Connection"%>
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <meta name="viewport" content="width=device-width,initial-scale=1.0, 
                  minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
            <title>学生信息</title>
        </head>
        <body>
            <%
                String driver = "com.mysql.jdbc.Driver";
                String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf-8"
                        + "&serverTimezone=UTC";
                String usr = "root";
                String password = "root";
    
                Class.forName(driver);
                Connection conn = DriverManager.getConnection(url, usr, password);
                String sqlString = "select * from StuList";
                PreparedStatement pstmt = conn.prepareStatement(sqlString);
                ResultSet rs = pstmt.executeQuery();
            %>
            <div align="right">欢迎你,<%=request.getParameter("username")%> 
                <a href="logout.jsp">退出</a>
            </div>
            <h2 align="center">学生信息列表</h2>
            <br>
            <table border=1 style="margin:auto">
                <tr>
                    <td class="listTable">学号</td>
                    <td class="listTable">姓名</td>
                    <td class="listTable">性别</td>
                    <td class="listTable">年龄</td>
                    <td class="listTable">年级</td>
                    <td id="profile">个人简介</td>
                    <td id="operate">操作</td>
                </tr>
                <%
                    while (rs.next()) {
                        out.println("<tr>");
                        out.println("<td>" + rs.getInt("id") + "</td>");
                        out.println("<td>" + rs.getString("name") + "</td>");
                        out.println("<td>" + rs.getString("sex") + "</td>");
                        out.println("<td>" + rs.getInt("age") + "</td>");
                        out.println("<td>" + rs.getString("grade") + "</td>");
                        out.println("<td>" + rs.getString("introduce") + "</td>");
                        out.println("<td><a href='www.baidu.com'>删除</a></td>");
                        out.println("</tr>");
                    }
                %>
            </table>
        </body>
    </html>

    这里我们先分享一下第一个<%%>之间的代码。

                String driver = "com.mysql.jdbc.Driver";
                String url = "jdbc:mysql://localhost:3306/test?characterEncoding=utf-8"
                        + "&serverTimezone=UTC";
                String usr = "root";
                String password = "root";

    上面这4个东西是什么呢?如果你还没有连接数据库的基础,那我们不妨来一起做一个假设。

    假设你现在需要使用手机登录QQ~

    driver就相当与你的手机,是你完成登录QQ的根本;url则是你手机中QQ这个app所放的位置,比如你的QQ放在主界面第三页第一排第二个,那么url就是描述这个路径的,usr和password则相对好理解,就是我们登录QQ的账号和密码。四者缺一不可。

    接下来我们继续这个例子,

    打开手机就是‘Class.forName(driver);’;(这里是步骤1)

    完成上面找到QQ图标并打开输入账号密码就是‘Connection conn = DriverManager.getConnection(url, usr, password);’;(这里是步骤2,等于创建了一个工具,未执行这一步骤)

    假设我们登录QQ是为了查找一个“honey”这个人,String sqlString = "select * from StuList";这一句代码就是描述查找“honey"这个动作的;(这里是步骤3,等于创建了一个工具,未执行这一步骤)

    PreparedStatement pstmt = conn.prepareStatement(sqlString);

    上面这句即把步骤2和3组装在一起变成一个步骤更复杂的大工具bigtool。

    我们的目的是为了找到“honey”,并把它显示出来,

    而ResultSet rs = pstmt.executeQuery();就是创建一个容器rs,把大工具bigtool执行的结果装进去。

    至于显示出来的部分,在第二个<%%>

                <%
                    while (rs.next()) {
                        out.println("<tr>");
                        out.println("<td>" + rs.getInt("id") + "</td>");
                        out.println("<td>" + rs.getString("name") + "</td>");
                        out.println("<td>" + rs.getString("sex") + "</td>");
                        out.println("<td>" + rs.getInt("age") + "</td>");
                        out.println("<td>" + rs.getString("grade") + "</td>");
                        out.println("<td>" + rs.getString("introduce") + "</td>");
                        out.println("<td><a href='www.baidu.com'>删除</a></td>");
                        out.println("</tr>");
                    }
                %>

    好了,先到这里,下一篇博客我们分享一下,数据库的增加和删除功能~

    学生信息管理系统(3),传送门:点此

  • 相关阅读:
    Saltstack module gem 详解
    Saltstack module freezer 详解
    Saltstack module firewalld 详解
    Saltstack module file 详解
    Saltstack module event 详解
    Saltstack module etcd 详解
    Saltstack module environ 详解
    Saltstack module drbd 详解
    Saltstack module dnsutil 详解
    获取主页_剥离百度
  • 原文地址:https://www.cnblogs.com/kareza/p/13393449.html
Copyright © 2011-2022 走看看