1、(1)怎么连接数据库答案:通过 JDBC_ODBC 桥连接数据库(2)数据库有几个表几张表看一下自己论文的物理设计(3)数据库的表之间的联系看一下自己论文中的 ER 图(4)数据库的连接代码怎么写/找到数据库的连接代码连接数据库的代码在 WEB_INF 下的 applicationContext.xml(5)数据库删除是逻辑删除还是物理删除数据库删除是物理删除。(6)分页显示怎么实现分页显示是通过分页标签实现的(7)系统测试(什么是黑盒、白盒测试)黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况
2、下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。(8)解释 CSSCSS(Cascading Style Sheet,可译为 “层叠样式表”或“级联样式表” )是一组格式设置规则,用于控制 Web 页面的外观。(9)webapp 怎么配置只要放到 tomcat 下面的 webapps 下面即可,因为 webapp 是编译后的代码(10)w
3、eb.xml 中位置文件什么作用web.xml 是初始化工程配置信息(11)servlet 怎么配置需要在 web.xml 中配置(12)解释 actionaction 是 mvc 框架中的控制层,主要实现系统的增删改查(13)do get/post 区别Get 是用来从服务器上获得数据,而 Post 是用来向服务器上传递数据。(14)系统采用 DreamweaverMX 作为开发工具 ? 是吗? 页面是用 DreamweaverMX 开发,整个程序是利用 eclipse 开发。(15)系统采用什么数据库进行开发?答案:SQL Server2000 数据库(16)系统采用什么架构进行设计?答案
4、:采用 B/S 架构进行设计。(17)系统用到的技术是什么?答案:JAVA,JSP,Struts 框架(18)系统用的框架是什么?Struts 框架(19)系统服务器是什么?答案:Tomcat5.5(20)系统的开发工具是什么?答案:Myeclipse 或 Eclipse(21)MVC 框架中的 MC 分别代表什么?M-model-模型层V-View-显示层C-controller-控制层(22)用户登录怎么实现的或前台用户登录提示错误信息怎么实现的?这是利用 JAVASCRIPT 脚本语言实现的,首先提交用户名和密码到后台,后台经过判断该用户名和密码在用户信息表中是否存在,如果存在则进入到系
5、统页面,如果不存在则会返回错误信息,前台取得错误信息的值,通过判断错误信息是否为空,如果不为空则提示错误信息。(23)删除一条记录用什么方法?利用传递主键的方法,也就是 delete from 表名 where 主键=”传递过来的主键的值”.(24)我们正常写完一个 JAVA 文件都需要自动编译一下,这是为什么?因为我们运行程序的时候用到的不是 java 程序而是 class 程序.(25)tomcat 读的是 java 文件还是什么?是 class 文件,不是 java 程序(26)链接 sqlserver 的一般端口是什么?SQL Server2000 数据库的端口是 1433, tomc
6、at 的 8080 端口(26)如果我要给页面加过滤器控制乱码,我应该怎么做?1.Jsp 文件页面显示乱码,这种情况比较好处理,在页面的 Page 指令加上如下一项就 OK 了:2.Jsp 页面采用表单提交时,提交的数据中含有中文,这时我们获取表单数据后,展示到其它页面时也会出现乱码,解决方案是在提交处理的 Servlet 里接收数据时,先加上如下一行代码:request.setCharacterEncoding(“gb2312“);这是其中的一种作法,当页面较少时还好,如果页面较多,我每添加新的页面就要加上这句话,所以可以采用过滤器来解决。(27)在存取数据库时发生乱码现象,这种现象比较郁闷
7、,处理起来相对复杂一点.首先要在数据存入数据库时,进行如下编码的转换:如我们要把含有中文的字符串存入数据库,首先:String s=request.getParameter(“author“); String author=new String(s.getBytes(“ISO8859_1“),“gb2312“);在从数据库取出展示到页面时,也要经过如下转换:String s=rs.getString(“author“);String author=new String(s.getBytes(“GB2312“),“ISO8859_1“);(28)在数据库定义字段的时候,可以选择 char 还有
8、varchar,你一般选择什么,为什么?选择 varchar,因为 varchar 是可变长的字符型,而 char 是定长的(29)如果我要实现上传图片,然后再另一个页面显示,我应该怎么做?应该把上传的图片输出到服务器下面的某一个文件夹,这样可以保证本机图片删除以后任何页面都可以访问并且显示.(30)在获取一个从数据库查询回来的数组,你一般是怎么知道它里面存储了多少数据?利用数组.size()方法就可以知道其数目是多少.(30)你在开发中用过 JAVASCRIPT 么,你为什么要用这个,它与 JAVA 有什么关系?用到了, JAVASCRIPT 可以减轻服务器的访问频率,从而提高服务器的运行速
9、度.达到了前台校验的效果. 它和 java 没有任何关系,属于一种脚本语言.(31)B/S 的优点?B/S 最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。(32)如何实现的页面间的跳转?简略回答就是通过 forward 进行跳转.详细解答就需要从页面请求开始一直到响应页面,就是通常说的找代码.Struts 的跳转是通过.do 请求,然后根据请求在 struts 里面找到响应的请求,根据请求就可以看到下面的 forward 转向页面是哪一个,通常有成功页面和错误页面,只要看标示就可以,例如;而 jsp 页面则可以直
10、接转向,form 表单上面直接写明了请求的 jsp 页面.(33)如何设置背景颜色,字体大小?/image/tt.gif“这是设置背景图片这是设置背景颜色以上两种是对整个页面进行设置,如果对于 td 和 tr 来讲也是同理,运用 background 和 bgcolor即可.(34)设置文本框的代码?(35)购物车是不是用 SESSION 做的?答案:是用 session 做的.购物车主要是通过 session 进行操作,和数据库没有关系.(36)查询分为几种模式?分为两种,一种是精确查询,一种是模糊查询。模糊查询代码:select * from 表名 where 字段 like %前台传过来
11、的值%精确查询代码:select * from 表名 where 字段 =“前台传过来的值”(37)系统有几个模块?答案:看自己的功能结构图.(38)什么是数据溢出?在 计 算 机 中 , 当 要 表 示 的 数 据 超 出 计 算 机 所 使 用 的 数 据 的 表 示 范 围 时 , 则 产 生数 据 的 溢 出 。(39)JSP、JDBC、ODBC、SQL、B/S、C/S 等各种缩写的英文完整表示及含义?1.JSP(JavaServer Pages)是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP 技术有点类似 ASP 技术,它是在传统
12、的网页 HTML 文件(*.htm,*.html)中插入 Java 程序段(Scriptlet)和 JSP 标记(tag),从而形成 JSP 文件(*.jsp)。2.JDBC(Java Data Base Connectivity,java 数据库连接)是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库提供统一访问,它由一组用 Java 语言编写的类和接口组成。JDBC 为工具 /数据库开发人员提供了一个标准的 API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC 也是个商标名。3.ODBC(Open Dat
13、abase Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准 API(应用程序编程接口) 。这些 API 利用SQL 来完成其大部分任务。ODBC 本身也提供了对 SQL 语言的支持,用户可以直接将SQL 语句送给 ODBC。4.SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。5.C/
14、S windows 的应用程序 Client/Server ,就如 QQ Client:客户端 B/S=Brower/Server 通过网页来实现的应用程序 Brower:浏览器 Server:服务器 (40)你的数据库有几个表?都是什么?相互关系?数据库有几张表看自己的论文上的数据库表(数据库物理设计), 数据库设计那章会说明都有几张表,至于关系,主要看主外键的联系.主键就是每个表的编号,比如,人员信息表中的人员编号就是主键,但是在线路信息表中如果存在人员编号则人员编号在线路信息表里就是外键,线路信息表和人员信息表就是通过人员编号联系起来的.(40)什么是主键?外键?数据字典?意义?主关键字
15、(主键,primary key)是被挑选出来,作表的行的惟一标识的候选关键字。一个表只有一个主关键字。主关键字又可以称为主键。 主键可以由一个字段,也可以由多个字段组成,分别成为单字段主键或多字段主键。作用:1)保证实体的完整性;2)加快数据库的操作速度3) 在表中添加新记录时,不允许该值与其他记录的主键值重复。外键(Foreign Key)如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。外键的作用:保持数据一致性,完整性,主要
16、目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值!数据字典(Data dictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由 DBMS 自动更新的数据字典。被动数据字典是指修改时必须手工更新其内容的数据字典。数据字典是一个预留空间,一个数据库,这是用来储存信息数据库本身。数据字典的组成: 1、数据项2、数据结构 3、数据流 4、数据存储 5、处理过程(41)E-R 图是什么?E 和 R 分别代表什么?E-R 图也即实体-联系图(Entity Relationship Diagra
17、m),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。构成 E-R 图的基本要素是实体型、属性和联系,其表示方法为: 实体型(Entity):用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。如果是弱实体的话,在矩形外面再套实线矩形。 属性(Attribute):用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果是多值属性的话,再椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。 联系 (Relationship):用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1
18、 : 1,1 : n 或 m : n) 。 比如老师给学生授课存在授课关系,学生选课存在选课关系。如果是弱实体的联系则在菱形外面再套菱形(42)数据库的连接方法有几种?你用的是哪一种?关键代码要了解。大家 90%用的都是 JDBC-ODBC 桥连接数据库方法.JDBC 直接连接数据库代码:public Bean1() public synchronized Connection getcon() throws Exception tryClass.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver“);con=DriverManager.
19、getConnection(“jdbc:microsoft:sqlserver:/127.0.0.1:1433;DatabaseName=db_Cars“,“sa“,“sa“);return con;catch(Exception ex)ex.printStackTrace();return null;JDBC-ODBC 连接数据库public class CondbString Sd=“sun.jdbc.odbc.JdbcOdbcDriver“;/建立一个联接机String Sc=“jdbc:odbc:Business“;/建立一个 Odbc 源Connection con=null;/Co
20、nnection 对象ResultSet rs=null;/建立一个记录集public Condb()tryClass.forName(Sd);/用 classforname 方法加载驱动程序类catch(java.lang.ClassNotFoundException e)/当没有发现这个加载这个类的时候抛出的异常System.err.println(e);/执行系统的错误打印连接池连接数据库:public static Connection getConnection() Connection conn = null;try Context initCtx = new InitialCon
21、text();Context ctx = (Context) initCtx.lookup(“java:comp/env“);/ 获取连接池对象Object obj = (Object) ctx.lookup(“jdbc/lo“);/ 类型转换javax.sql.DataSource ds = (javax.sql.DataSource) obj;conn = ds.getConnection(); catch (Exception e) e.printStackTrace();return conn;(43)开发的系统有何特色及不足之处,有何待改进的地方?系统开发特色可以从系统的功能角度说,
22、比如系统实现上传图片功能,上传文件,下载文件功能,系统采用了 B/S 架构,系统采用了 Struts 框架等.(44)需求分析阶段主要做什么?所谓“需求分析 “,是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。可以说,在软件工程当中的“需求分析”就是确定要计算机“做什么” 。(45)总体设计阶段主要做什么?即对有关系统全局问题的设计,也就是设计系统总的处理方案,又称系统概要设计。它包括:计算机配置设计、系统模块结构设计、数据库和文件设计、代码设计以及系统可靠性与内部控制设计等内容。(46)你在毕业设计期间遇到最大的技术困难是什么?怎样解
23、决的?第二周主要遇到的问题就是如何选择开发方法,由于操作系统的不同,所以要选用一种适用于任何系统的开发语言则成为首要的问题,开始选用 vb 语言,但是由于 vb 不支持 linux 系统,不具有跨平台的特性。为了解决该方法,选用跨平台的 java 和 jsp 语言。在概要设计阶段遇到的难点是如何对不同身份的用户进行区分,最后确定利用用户信息表的一个字段作为标示,根据不同的标示区分用户不同的身份。在开发过程中遇到了中文乱码问题,最后通过 String str=new String(str.getBytes(“开发环境编码“),“ISO-8859-1“)解决中文乱码问题。(47)使用数据库设计程序
24、的优点(安全) 、缺点(速度慢)是什么?数据可以快速更新,数据可以备份,可以恢复.(48)界面设计应注意哪些原则?一 、 明 确 建 立 网 站 的 目 标 和 用 户 需 求二、 网 页 设 计 总 体 方 案 主 题 鲜 明三、 网 站 的 版 式 设 计四、 色 彩 在 网 页 设 计 中 的 作 用五、 网 页 设 计 形 式 与 内 容 相 统 一(49)毕业设计期间学习了哪些新知识点?学到了怎么利用 java 连接数据库,怎么利用数据库三范式设计数据库,怎么使用 SQL server2000,怎么实现实体和实体之间的联系(50)结构化方法的需求分析:主要包括需求分析说明,业务流程图
25、,数据流程图,数据字典(51)问题 1:业务流程图是根据什么画出来的?业务流程图是根据需求分析画出来的。(52)问题 2:数据流程图是根据什么画出来的?数据流程图是根据业务流程图画出来的。(53)问题 3:数据字典是根据什么画出来的?数据字典是根据数据流程图画出来的。(54)问题 4:数据字典属于整个论文的哪一部分?数据字典是属于论文的需求分析部分。(55)问题 5:业务流程图英文简称和全称是什么?全称:Transaction Flow Diagram, 简称 TFD(56)问题 6:数据流程图英文简称和全称是什么?简称 DFD,全称 data-flow diagram(57)问题 7:数据字
26、典英文简称和全称是什么?简称 DD,全称 data dictionary(58)问题 8:结构化方法简介?结构化分析是面向数据流开展需求分析工作的一种有效方法。一般采用自顶向下,逐层分解的演义分析法来定义系统的需求,即先把分析对象抽象成一个系统,然后自顶向下的逐层分解,将复杂的系统分解成简单的、能够清楚地被理解和表达的若干个子系统(59)问题 9:数据字典都包括什么?1 数据流 2 数据流分量,即数据元素 3 数据存储 4 处理 5 数据项(60)问题 10:数据字典定义:数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合.(61)问题 11:了解并记住一下业务流程图
27、图例:处理单位处理过程单据表格 / 单据业务处理单位业务处理功能描述 信息传递过程问题 12:了解并记住一下数据流程图图例:外部实体 处理过程 数据流 数据存储(62)问题 1:数据库设计分为哪几个阶段,最为重要的阶段是什么?1.规划 2.需求分析 3.概念模型设计 4. 逻辑设计 5.物理设计 6.程序编制及调试 7.运行及维护。最为重要的三个是.概念模型设计, 逻辑设计,物理设计(63)问题 2:ER 图是属于数据库设计的哪个部分?ER 图设计属于数据库设计的概念设计阶段。(64)问题 3:ER 图反映了什么?ER 图反应了实体与实体之间的关系。(65)问题 4:一定要整明白自己 ER 图
28、实体与实体之间的关系?是 1:1,还是 1:N,还是 N:N问题 5:int 类型有几个字节?Int 类型有 4 个字节。(66)问题 6:varchar 和 Nvarchar 的区别是什么?char、varchar、text 和 nchar、nvarchar、ntext char 和 varchar 的长度都在 1 到 8000 之间,它们的区别在于 char 是定长字符数据,而 varchar 是变长字符数据。所谓定长就是长度固定的,当输入的数据长度没有达到指定的长度时将自动以英文空格在其后面填充,使长度达到相应的长度;而变长字符数据则不会以空格填充。text 存储可变长度的非Unicod
29、e 数据,最大长度为 231-1(2,147,483,647)个字符。 后面三种数据类型和前面的相比,从名称上看只是多了个字母“n“,它表示存储的是 Unicode 数据类型的字符。(67)问题 7: datetime 和 smalldatetime 的区别:datetime:从 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和时间数据,精确到百分之三秒。 smalldatetime:从 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和时间数据,精确到分钟。(67)页面文字滚动是利用什么实现的:答案:滚动是通过 marquee 标签实现的,marqu
30、ee 是 HTML 的标签。(67)上传图片或者文件以及下载图片或者文件是怎么实现的:答案:最简单的方法是通过输入输出流的方法实现的,再具体一点是通过InputStream 和 outPutStream 实现的。(67)可能问你某一页面的代码在哪?如果问页面是哪个页面直接到 tomcat 下面的 webapps 下面找到你访问的 8080后面的工程名的工程下找到对应的 jsp 页面如果是要找 java 代码则需要在 src 下面找到对应的 java 代码。这也答辩中最难的问题,可以利用以下方法进行寻找代码,右键页面属性,可能出现的为 http:/localhost:8080/XXXProject/user/add.do首先进入 WEB_INF 下面找到 configs,configs 下面找到 user 文件夹,然后找到 user_control.xml,打开找到 path=”add”的配置文件,forward 对应的就是该页面的 JSP 页面,java 代码直接去 src 下面的 user 文件夹里面找到userDAO.java 即可。(68)页面的日期动态显示是怎么实现的?是通过 javascript 脚本语言的 Date()函数实现的。