1.java与C#相比,Java的优势在哪里?答:开源跨平台2.struts运作过程,hibernate的作用答:hibernate持久层的框架,用于实现ORM。用来对数据库实现增、删、改、查,封装了SQL语句,封装的jdbc把表影射成类,然后对类进行操作来修改数据库3.hibernate中,怎么判断是插入还是更新?答:根据delegate是为true或false判断.4.怎么使用javascript进行页面跳转?答:按钮式:INPUTname=pclogtype=buttonvalue=GOonClick=location.href='链接式:ahref=javascript:history.go(-1)返回上一步/aahref=%=Request.ServerVariables(HTTP_REFERER)%返回上一步/a直接跳转式:scriptwindow.location.href='怎么使用javascript将一个页面的一个参数传递到另外一个页面?答:情况一:页面一与页面二完全无关,无法通过javascript进行,当然此种情况一般不会用到;情况二:页面二由页面一打开或者相反;可通过window.opener.document.all.***.value(借助某个控件的值)情况三:其他关系,可通过window.parent.document.***.value或window.top.document.***.value再次举例:页面一inputtype=textid=page01value=页面二inputtype=textid=page02value=3onblur=send(3);页面二由页面一打开把3赋给page01functionsend(what){window.opener.document.all.page01.value=what;}6.使用存储过程进行分页,页面使用javascript分页答:存储过程分页:ALTERPROCEDURE[dbo].[SelectTeacher]@startIndexint,@pagesizeintASBEGINWITHteacherListAS(selectROW_NUMBER()OVER(ORDERBYteacher_idasc)ASRow,*fromteacher)selectteacher_id,teacher_namefromteacherListwhereRowbetween@startIndexand@startIndex+@pageSize-1ENDJavascript分页:xmlid=usersuserGroupuserid=1useriduser1/useridnamename1/name/useruserid=2useriduser2/useridnamename2/name/useruserid=3useriduser3/useridnamename3/name/useruserid=4useriduser4/useridnamename4/name/useruserid=5useriduser5/useridnamename5/name/useruserid=6useriduser6/useridnamename7/name/useruserid=7useriduser7/useridnamename7/name/useruserid=8useriduser8/useridnamename8/name/useruserid=9useriduser9/useridnamename9/name/user/userGroup/xmltableid=datatabledatasrc=#usersDATAPAGESIZE=3width=400border=1theadth数据userid/thth数据name/thth属性id/th/theadtrtdspandatafld=userid/span/tdtdspandatafld=name/span/tdtdspandatafld=id/span/td/tr/tablebuttononclick=document.all.datatable.previousPage()PreviousPage/buttonbuttononclick=document.all.datatable.nextPage()NextPage/button7.什么是自定义控件?动态如何传数据?答:自定义控件是指编译后直接可以放到工具箱中用,就像TextBox,DataGrid一样。在设计器中可以用鼠标拖动到页面上使用。自定义服务器控件分为两种:一种是用*.aspx代码和*.cs代码编译后生成DLL,再添加引用到工具箱使用。一般用于WebForm中。另一种是只用*.cs实现,再编译生成DLL,添加到工具箱使用。一般用于WinForm中。动态传数据:在控件内部公开属性,通过给属性赋值进行数据的交互;控件最终体现在界面上的样式是靠重写父类的Render方法来实现的8.正规表达式只许输入整数答:Regexrg=newRegex(“\d*”);Matchm=rg.Match(this.textbox.Text);.If(m.success){MessageBox.show(m.index,m.length);}9.xml引用空间包括哪几个类?如何理解和应用?答:System.Xml。随着互联网的迅猛发展和普及,人们可以通过计算机与互联网联接,从世界各地实时的接收和发送大量、最新的信息,但在信息交换的过程中存在着一个突出的问题,就是多种多样的数据格式,给信息的有效使用带来了障碍。所以在信息时代,如何以最便捷、最可靠、最有效的方式获取所需的信息是一个很大的困扰。人们期待着能够找到一种可以描述任何逻辑关系的数据格式来统一电子数据的存储,从而不再因为数据格式的不统一而苦恼和困惑。目前,能够担当此任的就是xml(extensiblemarkuplanguage,可扩展符号化语言)。-XML是用来传递数据的-XML让这些数据有了结构--一个树型结构-xml有全套的操作这种结构的方法-xml规范(或者说的实际点,xmlparser)帮你确定你创建的字符串是合法的-xml规范(或者说的实际点,xmlparser)中有办法验证这个合法性-对于拿到这个字符串的servercomponent来说,可以用xml中现成的方法来操作它,10.DataSet和DataReader的区别答:ADO.NET提供以下两个对象,用于检索关系数据并将其存储在内存中:DataSet和DataReader。DataSet提供一个内存中数据的关系表示形式,一整套包括一些表在内的数据(这些表包含数据、对数据进行排序并约束数据),以及表之间的关系。DataReader提供一个来自数据库的快速、仅向前、只读数据流。当使用DataSet时,经常会利用DataAdapter(也可能是CommandBuilder)与数据源进行交互。当使用DataSet时,也可以利用DataView对DataSet中的数据应用排序和筛选。也可以从DataSet继承,创建强类型DataSet,用于将表、行和列作为强类型对象属性公开。当设计应用程序时,要考虑应用程序所需功能的等级,以确定使用DataSet或者是DataReader。要通过应用程序执行以下操作,就要使用DataSet:r在结果的多个离散表之间进行导航。r操作来自多个数据源(例如,来自多个数据库、一个XML文件和一个电子表格的混合数据)的数据。r在各层之间交换数据或使用XMLWeb服务。与DataReader不同的是,DataSet能传递给远程客户端。r重用同样的记录集合,以便通过缓存获得性能改善(例如排序、搜索或筛选数据)。r每条记录都需要执行大量处理。对使用DataReader返回的每一行进行扩展处理会延长服务于DataReader的连接的必要时间,这影响了性能。r使用XML操作对数据进行操作,例如可扩展样式表语言转换(XSLT转换)或XPath查询。对于下列情况,要在应用程序中使用DataReader:r不需要缓存数据。r要处理的结果集太大,内存中放不下。r一旦需要以仅向前、只读方式快速访问数据。注填充DataSet时,DataAdapter使用DataReader。因此,使用DataAdapter取代DataSet提升的性能表现为节省了DataSet占用内存和填充DataSet需要的循环。一般来说,此性能提升只是象征性的,因此,设计决策应以所需功能为基础。11.用一条语句将第一和第二张表连接成第三张表答:SELECT*FROM表一FULLJOIN表二ON表一.id=表二.id12.1+1+2+3+5+8+…到第30位多少?答:int[]b=newint[30];for(inti=0;i30;i++){if(i==0||i==1){b[i]=1;}else{b[i]=b[i-1]+b[i-2];}}messagebox.show(b[29]);b[29]=832040;13.简单叙述委托答:C#委托可以看做是方法引用,或者叫方法指针委托声明时必须将方法的返回值和详细的参数列表列出来,这样在为委托指定方法时,可以进行类型安全的检查。委托声明的方式如下:publicdelegateintAddHandler(intvalue);委托的关键字是delegate,除去这个关键字,其余部分就是一个完整的方法签名的格式,包括了委托返回类型、委托名称和委托所需的详细参数列表使用委托可以在运行时动态设定要调用的方法,不知道方法名称也可以调用方法,执行一个委托将执行该委托引用的方法.但是,委托要求方法的实现和委托必须具有相同数量和类型的参数和相同类型的返回值.出现以下情况时宜用委托:当使用事件设计模式时。当封装静态方法可取时。当调用方不需要访问实现该方法的对象中的其他属性、方法或接口时需要方便的组合。当类可能需要该方法的多个实现时14.重载和重写的区别答:重写一般是指父类和子类之间,子类重写了父类的一个方法,方法名是一样的,而且不能改变父类方法的返回值,比如说父类是返回String,子类重写了这个方法,想返回一个int,那是不行的,也得返回String。重载是一个类里面,写了多了同名的方法,各个方法的返回值类型可以不一样。要注意区分重载方法可以通过参数列表的个数,类型和顺序.15.AJAX的优点答:它将JavaScript和XML技术结合在一起,用户每次调用新数据时,无需反复向服务器发出请求,而是在浏览器的缓存区预先获取下次可能用到的数据,减轻了服务器的处理量界面的响应速度因此得到了显著提升。局部刷新,还有异步调用很方便.16.简单说说MVC,在ASP.NET里怎么实现答:MVC作为一种开发模型,通常用于分布式应用系统的设计和分析中,以及用于确定系统各部分间的组织关系。对于界面设计可变性的需求,MVC(Model-View-Controller)把交互系统的组成分解成模型、视图、控制器三种部件。视图部件把表示模型数据及逻辑关系和状态的信息以特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。控制器部件是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型