资源预览内容
第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
第9页 / 共33页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第 1 章 绪论第 0 页 共 31 页第 1 章 绪论 1.1 选题背景Internet 是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。作为 Internet 上一种先进的,易于被人们所接受的信息检索手段,World Wide Web(简称 WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。据估计,目前 Internet 上已有上百万个 Web 站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的 Web 站点对于一个机构的发展十分重要。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet 中的广泛应用,Web 站点向用户提供的服务将越来越丰富,越来越人性化。我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。这点启发了我们,如果能根据用户的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。一些站点已经在这方面作出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站点进行一些自主的设置。这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户了解一个站点前让其对站点进行设置,其结果未免有些粗糙。于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用户点击一个主题(链接)之后,系统能够自动生成一页面,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户作出任何额外工作的情况下实现了为用户量身订做的个性化页面。要实现这样的功能,离不开后台数据库的支持。用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了 MySql 数据库作为 JDBC 数据源,并以先进的 JDBC 技术进行数据库存取等操作,使 Web 与数据库紧密联系起来。整个个性化页面生成系统主要由使用 Dreamweaver_MX 开发的关联规则采掘系统和利用 Freemarker+Tomcat 技术实现的个性化 Web 页面生成器两部分组成。关联规则采掘系统对数据库中的历史记录进行分析,产生用户关联规则表;页面生成器则负责记录用户行为和根据关联规则表动态生成用户个性化Web 页面。二者通过数据库服务器和 Web 服务器连接。本文作者主要完成 Web 服务器端的用户管理、帖子管理、版面管理、数据库管理、浏览和查找、短消息功能等设计、实现与完善以及整个实验网站的组织建立和测试工作。河北师范大学职技学院学士学位论文第 2 页 共 31 页第 2 章 系统技术及运行环境2.1 Freemarker 技术简介FreeMarker 允许 Java servlet 保持图形设计同应用程序逻辑的分离,这是通过在模板中密封 HTML 完成的。模板用 servlet 提供的数据动态地生成 HTML。模板语言是强大的直观的,编译器速度快,输出接近静态HTML 页面的速度。FreeMarker 是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java 编写。FreeMarker 被设计用来生成 HTML Web 页面,特别是基于 MVC 模式的应用程序 。虽然 FreeMarker 具有一些编程的能力,但通常由 Java 程序准备要显示的数据,由 FreeMarker 生成页面,通过模板显示准备的数据 。FreeMarker 不是一个 Web 应用框架,而适合作为 Web 应用框架一个组件 。FreeMarker 与容器无关,因为它并不知道 HTTP 或 Servlet;FreeMarker 同样可以应用于非 Web 应用程序环境。FreeMarker 更适合作为 Model2 框架(如 Struts)的视图组件,你也可以在模板中使用 JSP 标记库,FreeMarker 是免费的。Freemarker 程序的优点:1 1、通通用用目目标标(1)能够生成各种文本: HTML、XML、RTF、Java 源代码等等。(2)易于嵌入到你的产品中:轻量级;不需要 Servlet 环境。(3)插件式模板载入器:可以从任何源载入模板,如本地文件、数据库等等。(4)你可以按你所需生成文本:保存到本地文件;作为Email 发送;从 Web 应用程序发送它返回给 Web 浏览器。2 2、强强大大的的模模板板语语言言(1)所有常用的指令: include、if/elseif/else、循环结构。(2)在模板中创建和改变变量。(3)几乎在任何地方都可以使用复杂表达式来指定值。(4)命名的宏,可以具有位置参数和嵌套内容。(5)名字空间有助于建立和维护可重用的宏库,或者将一个大工程分成模块,而不必担心名字冲突。(6)输出转换块:在嵌套模板片段生成输出时,转换HTML 转义、压缩、语法高亮等等;你可以定义自己的转换。 3 3、通通用用数数据据模模第 2 章 系统技术及运行环境第 3 页 共 35 页(1)FreeMarker 不是直接反射到 Java 对象,Java 对象通过插件式对象封装,以变量方式在模板中显示。(2)你可以使用抽象(接口)方式表示对象( JavaBean、XML 文档、SQL 查询结果集等等),告诉模板开发者使用方法,使其不受技术细节的打扰 。4 4、为为 W We eb b 准准备备(1)在模板语言中内建处理典型 Web 相关任务(如 HTML 转义)的结构。(2)能够集成到 Model2 Web 应用框架中作为 JSP 的替代。(3)支持 JSP 标记库。(4)为 MVC 模式设计:分离可视化设计和应用程序逻辑;分离页面设计和程序员。5 5、智智能能的的国国际际化化和和本本地地化化(1)字符集智能化(内部使用 UNICODE)。(2)数字格式本地化敏感。(3)日期和时间格式本地化敏感。(4)非 US 字符集可以用作标识(如变量名)。(5)多种不同语言的相同模板。6 6、强强大大的的 X XM ML L 处处理理能能力力(1) 和指令(2.3 版本)用于递归遍历 XML 树。(2)在模板中清楚和直觉的访问 XML 对象模型。2.2 MySql 技术简介MySql 就是关系数据库开发工具 ,数据库能汇集各种信息以供查询 ,存储和检索。那么什么叫数据库呢 ?数据库(Database)是由一些有意义和有关系的数据 (data)所组合而成。一个数据库中,包含了许多条记录 (Record),而每条记录是由多个字段(Field)所组成,不同的字段存放这不同的数据 。所以数据库的严格定义是一组相关记录的集合 ,而字段则是最基本的数据项 ,也是数据库中最小的单位。在计算机中用来帮我们管理数据库的系统 ,我们称之为数据库管理管理系统(Database Management System DBMS)。数据库管理系统是架构在一个或多个数据库之上,并针对数据库中的数据进行管理运用 。MySql 的优点在于它能使用数据表示图或自定义窗体收集信息 ,数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然 。另外,MySql 允许创建自定义报表用于打印或输出数据库中的信息 。MySql 也提供了数据存储库 ,可以使用桌面数据库文件把数据库文件置于网络文件服务器 ,与其他网络用户共享河北师范大学职技学院学士学位论文第 4 页 共 35 页数据库。如上所述,MySql 作为关系数据库开发具备了许多优点 ,可以在一个数据河北师范大学职技学院学士学位论文第 4 页 共 35 页中同时拥有桌面数据库的便利和关系数据库的强大功能 。2.3 利用 JDBC 访问数据库JDBC(Java Data Base Connectivity,java 数据库连接)是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库提供统一访问,它由一组用Java 语言编写的类和接口组成。 JDBC 为工具/数据库开发人员提供了一个标准的 API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC 也是个商标名。有了 JDBC,向各种关系数据发送 SQL 语句就是一件很容易的事。换言之,有了 JDBC API,就不必为访问 Sybase 数据库专门写一个程序,为访问 Oracle 数据库又专门写一个程序,或为访问 Informix 数据库又编写另一个程序等等,程序员只需用 JDBC API 写一个程序就够了,它可向相应数据库发送 SQL 调用。同时,将Java 语言和 JDBC 结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java 语言“编写一次,处处运行”的优势。Java 数据库连接体系结构是用于 Java 应用程序连接数据库的标准方法。 JDBC对 Java 程序员而言是 API,对实现与数据库连接的服务提供商而言是接口模型。作为 API,JDBC 为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。 JDBC 使用已有的 SQL 标准并支持与其它数据库连接标准,如 ODBC 之间的桥接。JDBC 实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。 Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java 应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制 ,是应用程序和数据库之间的桥梁。二、创建数据库链接 (Connection) 链接用以保持一些关于正在访问的数据的一些状态信息,以及链接者信息。在本系统中如果要访问数据,必须首先创建与数据库的链接,其语法如下:Class.forName(“com.mysql.jdbc.Driver“);Connectionconn=DriverManager.getConnection(“jdbc:mysql:/localhost:3306/forum?user=root这条语句创建了链接对象 Conn,接下来: Statement p = conn.createStatement();第 2 章 系统技术及运行环境第 5 页 共 31 页三、定义数据对象 (Record Set)ResultSet rs = null;四、操作数据库我们通过调用链接对象的 ExecuteQuery 方法来将查询结果返回给一个数据对象。例如:rs = p.executeQuery(“select * from class”);执行查询操作或通过调用链接对象的 Execute 方法进行插入、删除等操作例如:p.execute(“INSERT INTO tab1 VALUES(1,2)”);执行插入操作五、关闭数据对象和链接对象在使用了数据库操作对象之后要关闭它,因为它使用了一定的服务器资源。通过调用方法 close 实现关闭,然后再释放它。if (rs != null) try rs.close();catch (Exception e) 关闭创建的数据对象if (p != null) try p.close();catch (Exception e) if (conn != null) try conn.close();catch (Exception e) 关闭创建的链接对象河北师范大学职技学院学士学位论文第 6 页 共 31 页2.4 SQL 语句简介1,SQL 语句简介SQL 全称是“结构化查询语言(Structured Query L
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号