Javaweb网页

上一篇博客写了“校招SP”项目的数据存储问题,现在要将存储的数据以网页的形式展现出来,具体分两部分,下面来一一介绍~~~

数据库连接

因为要将存在mysql中的数据内容以网页形式展现,所以第一步,是java连接mysql。

JDBC是连接java应用程序和数据库之间的桥梁。
Java语言访问数据库的一种规范,是一套API。

JDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类,使用这些接口和类,Java客户端程序可以访问各种不同类型的数据库。比如建立数据库连接、执行SQL语句进行数据的存取操作。

JDBC代表Java数据库连接。

JDBC库中所包含的API任务通常与数据库使用:

  • 连接到数据库
  • 创建SQL或MySQL语句
  • 在数据库中执行SQL或MySQL查询
  • 查看和修改记录

JDBC的编程顺序:

先新建Java 工程,将jar包导进去:

然后新建相应的数据库和表;

编写connection.java程序。

程序如下:
与jsp程序写在一起了

1
2
3
4
5
6
7
8
9
10
11
12
13
<body>
<%
try {
Class.forName("com.mysql.jdbc.Driver"); ////驱动程序名
String url = "jdbc:mysql://localhost:3306/javaweb"; //数据库名
String username = "root"; //数据库用户名
String password = "root"; //数据库用户密码
Connection conn = DriverManager.getConnection(url, username, password); //连接状态

if(conn != null){
out.print("数据库连接成功!");
out.print("<br />");
%>

补充:

1
2
3
//3.通过数据库的连接操作数据库,实现增删改查
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select user_name,age from imooc_goddess");//选择import java.sql.ResultSet;

补充:MVC三层架构

采用MVC三层架构:建议由下往上开发(DB->view,需求读懂以后,设计数据库,然后根据数据库映射模型,再写控制层,再写视图层)

  • View视图层——展示数据,反馈用户行为
  • Control控制层——控制数据流通过程,协调视图层和数据层
  • Model模型层——与数据库建立映射,与数据进行交互
    -(DB数据库)

网页编写

使用的是JSP语言,以表格的形式呈现,添加了一些前端语言修改一些表格的样式,让他更加美观,后面还会继续丰富网页的内容~~

程序如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<%@ page contentType="text/html"%>  
<%@page pageEncoding="GB2312"%>
<%@page import="java.sql.*" %> <%--导入java.sql包--%>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
<title >从MySQL数据库中读出javaweb表</title>
</head>
<body>
<%
try {
Class.forName("com.mysql.jdbc.Driver"); ////驱动程序名
String url = "jdbc:mysql://localhost:3306/javaweb"; //数据库名
String username = "root"; //数据库用户名
String password = "root"; //数据库用户密码
Connection conn = DriverManager.getConnection(url, username, password); //连接状态

if(conn != null){
out.print("数据库连接成功!");
out.print("<br />");
%>

<table align="center" class="table table-striped" border="2">
<thead>
<tr>
<td width="150" number="title" align="center">岗位</td>
<td width="100" name="title" align="center">公司</td>
<td width="100" age="title" align="center">地点</td>
<td width="100" age="title" align="center">详细信息</td>
</tr>
</thead>
<%
Statement stmt = null;
ResultSet rs = null;
String sql = "SELECT * FROM official;"; //查询语句
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
out.print("查询结果:");
out.print("<br/>");
while (rs.next()) {%>

<tr>

<td width="150" align="center"><%=rs.getString("job") %></td>
<td width="120" align="center"><%=rs.getString("company") %></td>
<td width="100" align="center"><%=rs.getString("location") %></td>
<td width="100" align="center"><%=rs.getString("link") %></td>
</tr>
<%
}
}else{
out.print("连接失败!");
}
}catch (Exception e) {
//e.printStackTrace();
out.print("数据库连接异常!");
}
%>
</table>

<div class="container">
<ul class="pager">
<li><a href="#">上一页</a></li>
<li><a href="#">下一页</a></li>
</ul>
</div>

</body>
</html>

最后的网页为: