抓取网页数据(【招聘】java与数据库相连接的两张表(一))

优采云 发布时间: 2021-11-08 10:18

  抓取网页数据(【招聘】java与数据库相连接的两张表(一))

  所谓JDBC就是利用java连接数据库技术,从数据库中获取现有信息或将网页上的信息存储在数据库中。

  下面简单介绍一下公司的一个小项目的一部分。由于代码较多,所以以图片的形式展示。源码请查看源码仓库,稍后上传。

  

  

  图 1-信息图 图 2-用户图

  上图所示的两个模块对应数据库中的两个表。第一个表用于显示部分帖子信息,第二个是用户信息表,我们用来显示部分用户信息。

  这次使用的数据库是ORACLE,所以首先要在数据库中建表。

  

  图 3-建表

  在oracle中创建两张表,对应上图的两张图。第一个表java02_xp_table1是用户信息表。当您填写信息并点击提交按钮时,填写的信息将保存在数据库中,可以立即在PLSQL中查询。第二个表 java02_xp_table2 是一个信息表。数据库中已有该表的数据。您只需要查询数据库中的信息即可在页面上显示出来。显示的信息如图1所示。

  

  图4-项目*敏*感*词*

  上面的图 4 显示了 web 项目的*敏*感*词*。在eclipse下,我们首先创建两个实体类,即两个javaBeans,分别对应两张表的信息。用户信息之一

  公共类用户{

  私人字符串 xp_id;

  私人字符串 xp_name;

  私人字符串 xp_email;

  私人字符串 xp_subject;

  私人字符串 xp_message;

  //使用eclipse自动生成get和set方法。我不会在这里重复。

  }

  同样的,对于第二张表也生成了get和set方法

  公共类信息{

  私人字符串表_id;

  私人字符串表名;

  私人字符串表_价格;

  私有字符串 table_info1;

  私有字符串 table_info2;

  私有字符串 table_info3;

  私有字符串 table_info4;

  私有字符串 table_info5;

  //使用eclipse自动生成get和set方法。我不会在这里重复

  }

  在成功建立javaBean的基础上,我们建立了三个dao类。

  1.BaseDao---Unchangeable,封装了数据库的基本操作,是其他Dao类的父类。

  2.UserDao---继承了BaseDao,提供了从数据库中的用户表操作的接口,由UserDaoImpl实现,UserDaoImpl---实现UseroDao接口。大致结构就是这样。

  3. InformationDao 实现与 UserDao 相同的功能。其他 Dao 类也继承自 BaseDao。实现对不同表的操作。

  

  图 5-BaseDao

  如图5所示,建立了一个基础dao类,从这个基础dao继承了下面两个dao。注意上图中的driver_oracle。使用oracle驱动必须添加对应的jar包。这次用到的题是ojdbc6.jar。通过构建路径将其添加到项目文件中。url_oracle 是数据库的连接字符串。通过localhost,我们知道连接的数据库是本地数据库,1521是oracle数据库的*敏*感*词*端口,mysql一般是3306,下面的ORACLE是我的数据库名。class.forName() 方法加载数据库的驱动程序。DriverManager.getConnection(url_oracle,"user2","12345")是连接数据库,user2是当前数据库的用户名,12345是密码。

  这就是使用JDBC连接数据库。

  

  图 6-UserDao

  上面的图 6 是 UserDao 类。该类继承了BaseDao类,主要定义了一个addUser()方法,目的是通过点击submit向java02_xp_table1表中添加数据。使用预编译的方法来操作数据库。如果不明白,请参考:。

  executeUpdate 方法用于执行 INSERT、UPDATE 或 DELETE 语句和 SQL、DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。INSERT、UPDATE 或 DELETE 语句的作用是修改表中零行或多行中的一个或多个列。executeUpdate 的返回值是一个整数,它只返回受影响的行数(即更新计数)。对于不操作行的语句,例如 CREATE TABLE 或 DROP TABLE,executeUpdate 的返回值始终为零。

  

  图 7-InformationDao

  InformationDao继承自BaseDao,主要对Information表进行数据操作,实现查询数据库JAVA02_XP_TABLE2表内容的功能。查询执行完毕后,对数据进行封装,封装成列表,通过get和set方法实现数据转换。

  

  

  图 8-信息服务 图 9-用户服务

  上图显示了两个服务,主要用于实现两种方法。InformationService是获取更新次数,UserService是实现addUser()方法。

  最重要的是两个servlet,两者的方法相同,只是doPost()方法中实现的功能不同。

  

  图 10-UserServlet

  在 UserServlet 中,通过 request.getParameter() 方法从页面中获取相应的数据。数据格式使用JSON,需要添加对应的jar包才能使用JSON。获取到页面上对应的数据后,通过set方法传递给用户,实现addUser()方法。row的值是确认传输的数据量,通过这个值来确认传输是否成功是一个小亮点。

  

  图 10-InformationServlet

  IformationServlet 的主要功能是查询数据和查询数据库中已经存在的信息。

  

  

  图11-jquery 图12-ajax

  这两种方法都是在 Html 中使用的技术。这也是模板的固定形式。用于页面数据的传输。

  这个项目的结构大概是这样的,别忘了在web.xml中配置。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线