小区ADSL上网记费系统毕业设计(论文).doc
毕业设计(论文) 小区ADSL上网记费系统-ADSL用户自查询模块 摘 要 本小区ADSL上网记费系统是一个应用于小区ADSL上网管理的软件,实现了向ADSL用户提供各种各样的满足个性化需求的应用服务的功能 。本设计完成了系统中的用户自查询模块,实现了用户对个人需求查询的功能。 该系统使用Java语言,采用Oracle(10g)、PL-Sql、Hibernate,Spring,Struts,Jsp,Javascript,Html等技术,基于 Tomcat + Eclipse + Sun OS 5.8开发平台开发设计的,整个系统基于MVC模式(M-模型层,V-视图层,C-控制器)完成了程序界面的设计及自查询功能模块的具体实现.使用Oracle(10g)完成了数据库具体设计,进行从而完成了整个系统的开发。 用户通过本模块可以在线查询自身的信息(个人信息、上网记录、记费帐单、使用品牌)。它具有良好的可操作性,可靠性高、健壮性好,可扩充性和可维护性的特点。完全可以满足用户自助服务的需求。关键词:Java Jsp Hibernate Struts Oracle(10g)Abstract This NetCT OSS is a soft applied to the management of the Telecommunication enterprise. It provides the enterprise administrator kinds of services by establishing a whole system platform ,it can provider the different users with different application services, meets the requirements of different users. The system uses the Java language eclipse environment for development,using the technology of JSP,Oracle,Html, Servlet, JDBC,EJB, based on the platform ofWeblogic + Eclipse + JBuider + Sun OS 5.8 .Complying with the MVC Model it accomplishes the design of the framework of the program and the select function ,Using Oracle to accomplish the detail design of the Database , by the Jdbc and EJB to link Database . By the combination of all the techniques,makes the system credible, expandable, strong, and friendly .The System support the function of selection information after get the power by the right user name and password . It accomplishes select the all the information of users. Therefore,the users can get their consumption information efficiently and easily. The good features of the system is its security, credibility and strong . It can accomplish the purpose to meet the personality requirement of the user。Key Words:Java Jsp Hibernate Struts Oracle(10g) 目 录摘 要IAbstractII1.1 Java技术简介V1.1.1 Java语言的特点V1.1.2 Java开发工具VI1.2 Struts技术简介VII1.2.1 什么是Struts?VII1.2.2 Struts的功能VIII1.3 Hibernate技术简介IX1.3.1 Hibernate概述 IX1.3.2 Hibernate的特点IX第2章 系统分析和总体规划102.1系统的必要性和可行性 102.2 需求分析102.3 总体设计112.3.1系统功能设计112.3.2 运行过程设计122.3.3系统流程图13 132.3.4 数据库设计14第3章 系统具体设计153.1 数据库表设计153.2 系统界面设计21第4章 运行与测试354.1 软件测试的目的和原则354.2 软件的运行与安装364.2.1 J2EE应用程序的构建与部署 364.2.2 具体运行过程以及的期维护36结 论38参考文献39谢 辞40前 言近年来,随着计算机走进千家万户,标志着现代社会已经进入了信息时代,单独的一台孤立的计算机已不能满足人民日益增长的需求,于是,互联的进入了人民的生活、工作,使得人与人之间的信息交流突破了地域,国界的限制。因此,在数字化通讯的时代里,互联网运营也受到了极大的挑战。在小区物业管理方面,面临着成本的增高的状况。从市场的角度看,通信领域竞争在不断加剧,传统的单纯出售基础的通话服务的利润正在逐步减少,未来市场的竞争将不只是基础的通话服务的竞争,更是服务方式和服务种类的竞争。 为了更好的为用户服务,小区物业都会提供户管理系统,来对客户资料进行管自理,使管理突破时空限制,提高管理效率与水平,使用户在时候任何地点都可以通过网络进行与电信运营系统的信息交流,满足用户需求,实现电信运营管理系统朝碰上网络化,信息化,现代化方向发展。本课题就试图使用java技术来实现一个最基本的小区ADSL上网记费系统。本系统通过设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理、信息的发布与管理,从而方便电信运营商和客户之间的信息交流和信息共享。第1章 开发语言和开发工具简介1.1 Java技术简介Java是近代出现的新一代面向对象程序设计语言,由Sun公司推出,起初用于家电产品上的软件编程。后来,经过Sun公司的不断推出新的版本,目前版本已达到1.6。Java是一种简单的、面向对象的、分布式的、解释的、健壮的、安全的、结构中立的、可移植的、性能很优异的、多线程的、动态的语言。1.1.1 Java语言的特点 1.简单Java与C的区别是C是面向过程的语言,而Java是面向对象的语言,Java与C+语言非常相近,但比C+简单,在Java中取消息了对指针的操作,抛弃了C+中的一些不是绝对必要的功能,如头文件、预处理文件、指针、结构、运算符重载、多重继承以及自动强迫同型。Java实现了自动的垃圾收集,简化了内存管理的工作。2. 面向对象 Java是面向对象的语言,将世间万物都看成对象,将对象所具有的共性抽取出来,就是对象的类。Java提供了简单的类机制和动态的构架模型。对象中封装了它的状态变量和方法,很好地实现了模块化和信息隐藏;而类则提供了一类对象的原型,通过继承和重载机制,子类可以使用或重新定义父类或超类所提供的方法,从而既实现了代码的复用。3. 多线程 多线程的实现方式可以通过软件或硬件实现,Java是语言级别的多线程,通过JVM实现,多线程使应用程序可以同时进行不同的操作,处理不同的事件。在多线程机制中,不同的线程处理不同的任务,他们之间互不干涉,不会由于一处等待影响其他部分,这样容易实现网络上的实时交互操作。4. 分布式Java是面向网络的语言。通过它提供的类库可以处理TCP/IP协议,用户可以通过URL地址在网络上很方便的访问其他对象。5. 跨平台Java是通过JVM实现其跨平台的,JVM通过不同的接口与操作系统交互,上层通过相同的接口与Java语言交互,Java是一种网络语言,为使Java程序能在网络的任何地方运行,Java解释器生成与体系结构无关的字节码结构的文件格式。Java语言环境还提供了用于访问底层操作系统功能的类组成的包,当程序使用这些包时,可以确保它能运行在各种支持Java的平台上。6. 安全性用于网络、分布环境下的Java必须要防止病毒的入侵,Java不支持指针,一切对内存的访问都必须通过对象的实例变量来实现,这样就防止了程序员使用欺骗手段访问对象的私有成员,同时也避免了指针操作中容易产生的错误。1.1.2 Java开发工具JDKJDK(Java Development Kit)是一个写Java的applet和应用程序的程序开发环境。它由一个处于操作系统层之上的运行环境还有开发者编译,调试和运行用Java语言写的applet和应用程序所需的工具组成。1. Java编译器(Javac命令)Java编译器将Java源代码文件编译成可执行的Java字节码。Java源代码文件的扩展名为 .java,Java编译器把这种扩展名的文件编译成扩展名为.class的文件。源文件中的每个类在编译后都将产生一个class文件,这意味一个Java源代码文件可能编译生成多个class文件。2. Java解释器(java命令)Java解释器对编译生成的字节码格式的可执行程序的运行提供支持,它是运行非图形Java程序的命令行工具。ECLIPSE根据需求分析及功能分析,选用Eclipse集成开发工具及Oracle数据库来开发此系统。1.Eclipse的起源和发展Eclipse的前身是IBM的Visual Age。由于意识到Visual Age存在难以扩展、底层技术较为脆弱、很难与WebSphere Studio软件集成等诸多问题,进一步发展甚为困难,同时也面临包括Symantec公司的Visual Café、Borland公司的JBuilder等开发工具的竞争压力,IBM决定创建一个更开放的,并且可以为IBM其他开发工具提供支持的一体化开发平台。1998年11月,IBM专门成立了一个项目开发小组,开始开发该平台,2000年新一代开发平台诞生,这就是大家所熟悉的Eclipse。2000年11月,IBM做出了一个重大决定,将Eclipse采用开放源码的授权和运作模式发布,以增强业界对Eclipse的关注度并加快其推广应用速度。随后,IBM于2001年12月向外界宣布,捐赠价值4千万美元的Eclipse源码给开源社区;成立由成员公司组成的Eclipse协会(Eclipse Consortium),以便支持并促进Eclipse开源项目。事实证明,IBM的决策非常英明。Eclipse受到广泛关注,蜂拥而至的用户使得其下载服务器一度阻塞,给业界带来了久违的震撼!IBM趁热打铁,在EclipseCon 2004上宣布成立一个独立的、非盈利性的基金会,由该基金会负责管理和指导Eclipse开发,目前其成员多达近百家知名公司,其中包括Borland、Rational Software、Red Hat、Sybase、Google和Oracle等业界巨头。Eclipse开发状态非常活跃,目前成熟稳定的版本是3.2,正在开发的版本是3.3,已经成为业界主要的非微软软件开发平台。2.Eclipse的优势目前全球有上百万人在使用Eclipse进行开发。为什么Eclipse拥有如此众多的用户?这与Eclipse集众多特性于一身有很大关系。Eclipse是开放源代码的软件。这意味着Eclipse不仅可以免费使用,还可以通过研究源代码学习世界上顶尖开发人员的编程技术,并可以共享遍布全球的开发人员所贡献的公共开放源代码库。Eclipse是真正可扩展并可配置的。Eclipse采用插件机制,犹如一个花瓶,你可以随时向花瓶里面插花,也可以很容易将不再需要的花取出。Eclipse支持众多的开发语言而不仅仅是Java。Eclipse只是给开发人员提供了一个能够扩展系统功能的最小核心,基于扩展点的插件体系结构使得Eclipse支持多种语言成为可能。只要安装相应语言的插件,Eclipse就可以支持该种语言的开发。目前,Eclipse已经可以支持C、COBOL、PHP、Perl、Python等多种语言。Eclipse提供了对多重平台特性的支持。开发者可以使用他们感觉最舒适、最熟悉的平台,例如Windows、Linux等。Eclipse对每个平台都有其单独的图形工具包,这使得应用程序具有接近本地操作系统的外观和更好的性能。1.2 Struts技术简介1.2.1 什么是Struts?Struts是Apache软件基金支持下的开源的MVC框架,在多年的WEB应用开发实践中,Struts作为一个经典的Web应用开发框架始终一枝独秀.。用Struts实现MVC架构。MVC(Model-View-Controller)由Trygve Reenskaug提出,首先被应用在SmallTalk-80环境中,是许多交互和界面系统的构成基础。根据界面设计可变性的需求,MVC把交互系统的组成分解成模型、视图、控制器三部分。6模型(Model)是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,独立于具体的界面表达和I/O操作。视图(View)把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。控制器(Controller)是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。通常一个视图对应一个控制器。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论 何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化传播机制。Struts框架最早是作为Apache Jakarta项目的组成部分问世运做,它继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts框架很好的结合了Jsp,Java Servlet,Java Bean,Taglib等技术。在Struts中,承担MVC中控制器角色的是ActionServlet。ActionServlet是一个通用的控制组件。这个控制组件提供了处理所有发送到Struts的HTTP请求的入口点。它截取和分发这些请求到相应的动作类(这些动作类都是Action类的子 类)。另外控制组件也负责用相应的请求参数填充Action Form(FromBean),并传给动作类(ActionBean)。动作类访问核心商业逻辑,即访问Java Bean或调用EJB。最后动作类把控制权传给后续的JSP文件,由JSP文件生成视图。所有这些控制逻辑利用Struts-config.xml文件来配置。在Struts框架中,视图主要由JSP生成页面完成,Struts提供丰富的JSP标签库,这有利于分开表现逻辑和程序逻辑。模型以一个或多个Java Bean的形式存在。在Struts中,主要存在三种Bean,分别是:Action,ActionForm,EJB或者Java Bean。Struts框架没有具体定义模型层的实现,在实际开发中,模型层通常是和业务逻辑紧密相连的,并且要对底层数据进行操作。下面介绍一种开发策略,将Hibernate引入到Struts框架的模型层中,使用它来进行数据封装和映射,提供持久化的支持。1.2.2 Struts的功能(1) 在显示层,Struts使用Jsp页面和用户进行交互,Struts具有丰富的标签提供给用户使用。 (2) 在控制层,对于用户的.do请求统一由RequestServlet处理,用户只要继承Action父类即可。 (3) 在模型层,使用Javabean封装业务逻辑。 (4) 对于客户端提交到服务器端的数据,用户可以使用ActionForm进行封装。 (5) Struts对于国际化的处理相当容易,使用自带的标签就可以实现。 (6) Struts对于表单的验证也很简单,即可在客户端实现,也可在服务器端实现。 1.3 Hibernate技术简介1.3.1 Hibernate概述 在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦和浪费时间的。Hibernate是一个面向JAVA的对象/关系数据库的映射工具,用来把对象模型表示的对象映射到基于SQL关系模型数据结构中去。Hibernate不仅仅管理JAVA类到数据库表的映射(包括JAVA数据类型SQL数据类型的映射),还提供数据查询和数据获取的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。Hibernate的目标是对于开发者通常的数据持久化相关的编程任务,解放其中的95%。对于以数据为中心的程序来说,它们往往只在数据库中使用存储过程来实现商业逻辑。Hibernate可能不是最好的解决方案。但对于那些基于JAVA中间层应用中实现面向消息的业务模型和商业逻辑的应用,Hibernate是最有用的。1.3.2 Hibernate的特点(1)程序开发者不需要自己编写SQL语句,以面向对象的形式和数据库交互。(2)Hibernate对Jdbc进行了轻量级的封装。但是,效率不如Jdbc。(3)通过脏检查和延迟加载机制减少和数据库的交互次数,提高效率。(4)对JDBC事物和JTA的分布式事物和JNDI也做了封装。(5)可使用Criteria进行动态查询。小区ADSL上网记费系统第2章 系统分析和总体规划2.1 系统的必要性和可行性 一、必要性: 随着人们生活水平的不断提高,信息技术的飞速发展,传统的通讯业务服务已不能满足人们的生活节奏。对于物业管理部门来说,由于服务种类的增多,必须急于降低成本。对于电信行业,未来市场的竞争将不只是基础的通话服务的竞争,更是服务方式和服务种类的竞争。由于IP技术在通信领域中统治地位的确立,未来通信市场的竞争,将围绕着互联网及其相关服务展开,并且由于信息时代个性化需求的特征。目前电信运营商面对日益激烈的全方位市场竞争,提高竞争力、增加客户满意度、减少客户流失、提高效益成为电信运营商必须要考虑的问题。因此,设计这个系统, 通过网络资源的整合,使电信运营商需要在提供基础服务的同时,广泛开拓增值服务市场,向用户提供各种各样的满足个性化需求的应用服务,是有其必要性的。 二、可行性: (1)经济可行性:该系统需要两台服务器,一台NAS网络接入服务器,一台AAA服务器,运行安装TOMCAT服务器即可,但对于物业管理部门来说,其产生的效益是完全可行的。 (2)操作可行性:计算机在生活小区居民的家庭中已有一定的比例,而这些计算机已不在单单是一个孤立的计算机,而是网络中的一个结点,而此系统可方便这些用户查询自身的上网记录和自身信息等,所以是可行的。 (3)技术可行性:本系统采用Java语言,基于Tomcat+ Eclipse + Sun OS 5.8开发平台,采用JSP,Oracle,Hibernate技术,使用Struts框架,开发者掌握这些技术就可以具备开发此系统的能力,这些技术都是公开的,且开发者容易掌握的。所以,技术方面也是可行的。2.2 需求分析1. 数据需求: 此系统主要完成用户自身信息的查询功能,因此,需要的数据信息包括:用户信息:包括用户帐号和密码等信息。帐单信息,包括用户日帐单信息,月帐单信息,年帐单信息。品牌信息,包括包月,流量,小时等。2.功能需求: 功能需求分析的任务是弄清用户对目标系统数据处理功能所提出的需求。本系统的功能需求有: (1)用户通过自已的用户名和密码进入系统。 (2)用户可以查询自已的上网记录。 (3)用户可以查询日报表。 (4)用户可以查询月报表。(5)用户可以查询年报表。(6)用户可以查询品牌类型信息。2.3 总体设计2.3.1 系统功能设计1. 功能定义:(1)日报表:按小时从RadAcct流水帐表中整合到UserDay。 (2)月报表:按天合并日报表UserDay生成所有用户计费数据月表UserMonth (3)年报表:按月合并月表UserMonth生成所有用户计费数据年表UserYear;2. 系统功能:本模块的主要功能是客户端通过个人用户帐号和密码登录系统,实现对个人所有信息的查询,是用户利用网络通过此系统对用户个人信息查询的主要途径。 其主要功能如下:(1)用户登录ADSL用户通过合法帐号和密码进入系统,实现对用户信息的查询操作。通过设置用户密码保证用户信息的安全性。(2)日清单查询查询用户在某一时段的上网历史记录。(3)日帐单查询用户可以输入指定的某天查询某日的消费情况(4)月帐单查询用户可以输入指定的月份查询某月的消费情况(5)年帐单查询用户可以查询输入指定的年份查询某年的总的消费情况(6) 品牌查询 用户可以查询品牌类型信息3 .系统功能结构图:此系统基于Struts框架进行设计,利用JSP+JavaBean+Action进行编程。通过对所做模块的功能需求分析,该模块主要功能可分为六大部分,系统用例如图2-1所示。 图2-1 系统用例图2.3.2 运行过程设计 本系统使用Struts框架搭建而成,基于MVC的模式,在客户端使用jsp和用户进行交互,对于用户的请求由action进行处理,转而调用相应的模型层。在模型层调用业务逻辑层,对于处理后的结果再由action转发到相应的jsp,呈现给用户。客户端登录:(1)jsp页面接收用户转入的用户名、密码等信息。(2)通过http发送到服务器端。(3)服务器端接收用户的请求,交给WEB容器,由容器调用相就的Action。(4)服务器端验证通过后,将处理的结果返回给客户端。.图2-2 Struts模型图2.3.3 系统流程图 开始进入用户登录界面填写身份验证信息身份验证是否通过进入用户主界面结束图2-3 系统流程图流程图详解:ADSL用户打开浏览器,输入网址,进入登陆界面,输入用户名和密码,点击登陆后,由浏览器发出一个登陆请求,容器获得请求后,转发到相应的action中,在action中调用登陆的业务逻辑层中的方法,判断用户身份的合法性,如果用户为合法用户,在action中跳转到用户主界面,如果不成功而返回到登陆界面,并提示用户错误信息。用户进行重新登陆。 2.3.4 数据库设计数据库设计就是设计程序所需数据的类型、格式、长度和组织方式。因为数据库应用系统主要是处理大量的数据,所以数据库设计的优劣,直接影响整个数据库应用系统的性能和执行速率。 根据本系统的功能需求分析,本系统的数据库可包括七个表,分别是用户表(users),帐单明细表(radacct),日帐单信息表(userday), 月帐单信息表(usermonth), 年帐单信息表(useryear),品牌信息表(products),品牌类型表(productstype),用户帐号表(radcheck)。第3章 系统具体设计3.1 数据库表设计1. 年帐单信息表 该表包含用户登录名,登录服务器名,退出时间,资费代号,登录时间长度等信息。具体如表31。表 3-1 UserYear 表字段名类型字段宽度小数位数索引Login_name字符型20Login_ip字符型32logout_date日期型8lab_ip字符型32time_duration数值型82建表语句:create table USERYEAR( ID NUMBER primary key, USERNAME VARCHAR2(30) not null,/用户名 NASIPADDRESS VARCHAR2(15),/IP地址 ONDATE DATE,/登陆时间 TIME_DURATION NUMBER,/时长 FLUX NUMBER/流量);2. 月帐单信息表 该表包含用户登录名,登录服务器名,退出时间,资费代号,登录时间长度等信息。具体如表32表3-2 UserMonth 表 字段名类型字段宽度小数位数索引Login_name字符型20Login_ip字符型32logout_date日期型8lab_ip字符型32time_duration数值型82建表语句:create table USERMONTH( ID NUMBER primary key, USERNAME VARCHAR2(30) not null, /用户名 NASIPADDRESS VARCHAR2(15),/ip地址 ONDATE DATE,/时间 TIME_DURATION NUMBER,/时长 FLUX NUMBER/流量);3. 日帐单信息表 该表包含用户登录名,登录服务器名,退出时间,资费代号,登录时间长度等信息。具体如表33。表3-3 UserDay 表字段名类型字段宽度小数位数索引Login_name字符型20Login_ip字符型32logout_date日期型8lab_ip字符型32time_duration数值型82建表语句:create table USERDAY( ID NUMBER primary key, USERNAME VARCHAR2(30) not null,/用户名 NASIPADDRESS VARCHAR2(15),/IP地址 ONDATE DATE,/登陆时间 TIME_DURATION NUMBER,/时长 FLUX NUMBER/流量 );4. 资费信息表 该表包含资费号,资费名,月租费base_fee,资费单价,折扣等信息;其中资费号作为主键,资费名唯一。具体如表34。表3-4 Product 表字段名类型字段宽度小数位数索引price_id数值型10主键pricing_name字符型32唯一base_fee数值型82rate_fee数值型42pricing_Desc字符型642建表语句:create table PRODUCTS( ID NUMBER primary key, NAME VARCHAR2(32) not null unique,/品牌名 BASE_FEE NUMBER(8,2) default 0,/基本费率 RATE_FEE NUMBER(8,2) default 0,/费率 DAILY_LIMIT NUMBER,/每日限制时长 MONTH_LIMIT NUMBER,/月限制时长 UP_LIMIT NUMBER,/上行限制 DOWN_LIMIT NUMBER,/下行速率 SFEE NUMBER(8,2), REMARK VARCHAR2(2000),/备注 PRODUCTSTYPEID NUMBER references PRODUCTSTYPE(ID);5. 用户表 该表包含用户号,用户名,用户登录名,用户登录密码等用户的详细信息。用户号作为主键,不可重复,不为空;用户登录名是用户登录的唯一标识,唯一;登录密码和用户登录名一起,作为安全性验证。只有用户登录名和密码都正确才可以登录系统。具体如表35。表3-5 User 表字段名类型字段宽度小数位数索引user_id数值型20主键user_name字符型32login_name字符型10唯一login_password字符型32user_status数值型2user_phone字符型32user_email字符型32enroll_date日期型close_date日期型payment_style数值型2career数值型2nationality数值型2sex数值型2company字符型32mail_address字符型32phone_code字符型16建表语句:create table USERS( ID NUMBER primary key, LOGIN_NAME VARCHAR2(20) not null unique,/登陆名 REAL_NAME VARCHAR2(20) ,/真实姓名 LOGIN_PASSWORD VARCHAR2(20) not null,/登陆密码 EMAIL VARCHAR2(50) not null unique,/EMAIL地址 SEX NUMBER(1),/性别 ADDRESS VARCHAR2(200) not null,/住址 REGISTER_DATE DATE,/注册日期 TELEPHONE VARCHAR2(20),/电话 POSTCODE VARCHAR2(10),/邮编 REMARK VARCHAR2(1000),/备注 ROLEID NUMBER(10) references ROLES(ID);6. 品牌类型表 该表包含品牌名,注释。具体如表36。表3-6 ProductsType 表字段名类型字段宽度小数位数索引id数值型10主键name字符型10remark字符型32建表语句:create table PRODUCTSTYPE( ID NUMBER primary key, NAME VARCHAR2(32) not null unique,/品牌类型名 REMARK VARCHAR2(2000)/备注);7. 帐单明细表 该表包含用户登录号,登录时间,离开时间,服务器名,和登录时间长度等信息。具体如表37。表3-7 RadAcct 表字段名类型字段宽度小数位数索引login_ip字符型32login_date日期型logout_date日期型lab_ip字符型42time_duration数值型82建表语句: create table RADACCT( RADACCTID INTEGER primary key, ACCTSESSIONID VARCHAR2(32) not null, ACCTUNIQUEID VARCHAR2(32), USERNAME VARCHAR2(32) not null, REALM VARCHAR2(30), NASIPADDRESS VARCHAR2(15) not null,/IP地址 NASPORTID NUMBER(12),/NAS端口地址 NASPORTTYPE VARCHAR2(32),/NAS端口类型 ACCTSTARTTIME DATE,/上线时间 ACCTSTOPTIME DATE,/下线时间 ACCTSESSIONTIME NUMBER(12), ACCTAUTHENTIC VARCHAR2(32), CONNECTINFO_START VARCHAR2(32), CONNECTINF