欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2018年SSH框架面试题.docx

    • 资源ID:64480856       资源大小:187.78KB        全文页数:81页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2018年SSH框架面试题.docx

    非常有用的SSH框架面试题Hibernate工作原理及为什么要用?原理:1 .读取并解析配置文件2 .读取并解析映射信息,创建SessionFactory3 .打开 Sesssion4 .创建事务Transation5 .持久化操作6 .提交事务7 .关闭 Session8 .关闭 SesstionFactory为什么要用:1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性 代码。2. Hibernate是个基于JDBC的主流持久化框架,是个优秀的0RM实现。他 很大程度的简化DA0层的编码工作3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。4. hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。 它支持各种关系数据库,从对一到多对多的各种复杂关系。2. Hibernate是如何延迟加载?1. Hibernate2延迟加载实现:a)实体对象b)集合(Collection)2. Hibernate3提供了属性的延迟加载功能当Hibernate在査询数据的时候,数据并没有存在与内存中,当程序真正对数 据的操作时,对象存在与内存中,就实现了延迟加载,他节省了服务器的内 存开销,从而提高了服务器的性能。3. Hibernate中怎样实现类之间的关系?(如:对多、多对多的关系)类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进 行操作,我们程序中把所有的表与类都映射在起,它们通过配置文件中的 many-to-one> one-to-many、 many-to-many>4. 说下Hibernate的缓存机制1 .内部缓存存在Hibernate中又叫一级缓存,属于应用事物级缓存2 .二级缓存:a)应用及缓存b)分布式缓存条件:数据不会被第三方修改、数据大小在可接受范围、数据更新频率低、同 数据被系统频繁使用、非关键数据c)第三方缓存的实现5 . Hibernate的査询方式Sql、Criteria, object comptositionHql:1、属性查询2、参数查询、命名参数査询3、关联査询4、分页査询5、统计函数6 .如何优化Hibernate?1 .使用双向对多关联,不使用单向对多2 .灵活使用单向一对多关联3 .不用对,用多对取代4 .配置对象缓存,不使用集合缓存5 . 对多集合使用Bag.多对多集合使用Set6 .继承类使用显式多态7 .表字段要少,表关联不要怕多,有二级缓存撑腰7. Struts工作机制?为什么要使用Struts?工作机制:Struts的工作流程:在web应用启动时就会加载初始化ActionServlet, ActionServlet从 struts-config. xml文件中读取配置信息,把它们存放到各种配置对象 当ActionServlet接收到个客户请求时,将执行如下流程.- (1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径 无效信息;- (2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的 表单数据保存到ActionForm对象中;- (3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的 validate。方法;- (4)如果ActionForm的validate。方法返回nul!或返回一个不包含 ActionMessage的ActuibErrors对象,就表示表单验证成功;- (5) ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪 个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action 的 execute ()方法;- (6)Action 的 execute。方法返回"t* ActionForward 对象,ActionServlet 在 把客户请求转发给ActionForward对象指向的JSP组件;-(7)ActionForward对象指向JSP组件生成动态网页,返回给客户:为什么要用:JSP、Servlet. JavaBean技术的出现给我们构建强大的企业应用系统提供了可 能。但用这些技术构建的系统非常的繁乱,所以在此之上,我们需要一个规则、 个把这些技术组织起来的规则,这就是框架,Struts便应运而生。基于Struts开发的应用由3类组件构成:控制器组件、模型组件、视图组件8. Struts的validate框架是如何验证的?在struts配置文件中配置具体的错误提示,再在FormBean中的validate。方 法具体调用。9. 说下Struts的设计模式MVC模式:web应用程序启动时就会加载并初始化ActionServler。用户提交表 单时,个配置好的ActionForm对象被创建,并被填入表单相应的数据, ActionServler根据Struts-config. xm!文件配置好的设置决定是否需要表单验 证,如果需要就调用ActionForm的Validate 验证后选择将请求发送到哪个 Action,如果Action不存在,ActionServlet会先创建这个对象,然后调用 Action的execute ()方法。Execute ()从ActionForm对象中获取数据,完 成业务逻辑,返回1bAetionForward对象,ActionServlet再把客户请求转发 给ActionForward对象指定的jsp组件,ActionForward对象指定的jsp生成动 态的网页,返回给客户。10. spring工作机制及为什么要用?1. spring mvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的 其他模块负责负责对请求进行真正的处理工作。2. DispatcherServlet査询个或多个HandlerMapping»找到处理请求的 Controller.3. DispatcherServlet 请请求提交到目标 Controller4. Controller进行业务逻辑处理后,会返回个ModelAndView5. Dispathcher査询个或多个ViewResolver视图解析器,找到ModelAndView 对象指定的视图对象6. 视图对象负责渲染返回给客户端。为什么用:AOP让开发人员可以创建非行为性的关注点,称为横切关注点,并将它们插入 到应用程序代码中。使用A0P后,公共服务(比如日志、持久性、事务等) 就可以分解成方面并应用到域对象上,同时不会增加域对象的对象模型的复杂 性。I0C允许创建一个可以构造对象的应用环境,然后向这些对象传递它们的协作 对象。正如单词倒置所表明的,I0C就像反过来的JNDIo没有使用堆抽 象工厂、服务定位器、单元素(singleton)和直接构造(straight construction), 每个对象都是用其协作对象构造的。因此是由容器管理协作对象(collaborator) Spring即使个AOP框架,也是 I0C容器。Spring最好的地方是它有助于 您替换对象。有了 Spring,只要用JavaBean属性和配置文件加入依赖性(协 作对象)。然后可以很容易地在需要时替换具有类似接口的协作对象。其它知识点:不会涉及到2级缓存以及hql1 . Configuration读取hibernate, cfg. xml,并把.hbm. xml文件交给HbmBinder做第一次处理, HbmBinder 根据.hbm. xm! 解析出 PersistentClass, Collection,然后在创建 SessionFactory的时候,会对Collection做第2次处理塞入关联2 PersistentClass根据.hbm. xm!产生的描述要持久化的类的信息的类.主要的实例变量包括List <Property> propertiesProperty对象里的有个Value属性value,通过value来描述该property和 数据库里的哪些列对应以及获得该property对应的type3 Value主要分为SimpleValue, Collection, Component, ToOneSimpleValue主要包括Table和Columns属性,用于描述简单属性或单主键Collection主要属性包括collectionTable 表示 Collection 里面 element 对象所对应的 Tablekey表示CollectionTable里的哪几列和Collection owner所对应的表的主键 做关联element,描述了主表(referencingTable),从表的EnityName,以及从表对应的 PersistentClassComponent可以用来描述多主键,通过属性properties来表示ToOne包括被引用的属性名,被引用的实体名,columns,(被引用的属性名不能 和 columns 同时设置),用于 OneToOne, ManyToOne4 SessionFactory在创建 SessionFactory 的时候,会根据 Configuration 里 Classes 和Collections,创建 EntityPersister 和 CollectionPersister.SessionFactory 会缓存这些 persisters.EnityPersistenter 的 key 是 EntityName,CollectionPersister 的 key 是 entityName+propertyName5 Ent i tyPers i s ter分为SingleTableEntityPersister (个实体个表/个类继承结构个表) 通过一个字段做标识JoinedSubclassEntityPersister (每个子类个表)UnionSubclassEntityPersister (每个具体类个表)6 CollectionPersister封装对个Collection的crud操作.不过做 insert, update, delete, recreate 的时候,会判 Inverse 是否为 false. 如果为false会执行相应的操作,表示是由Collection维护关系.如果!nverse=true,表示关联关系是由多端来维护(即直接通过操作 Collection里的element来维护,而不是通过操作Collection来维护) 则该CollectionPersister不会做任何操作7 Type主要包括对 SqlTypes 的封装,以及 CollectionType, EntityType (ManyToOneType, OneToOneType),主要接 口 有 nullSafeGet( 从 ResultSet 拼装出对象),nullSafeSet (给 PreparedStatement setParameter).可以通过 Value. getType ()获得 Type对于 EntityType, CollectionType,就是通过 resolve 方法从ResultSet中拼装出对象EntityType的nullSafeSet,就是获取One端对象的主键所对应的 Type 进行 nullSafeSetCollectionType没有实现nullSafeSet,通过保存时的Cascade 或者 CollectionPersister,将 Collection 的Element 一个个的 set也可以自定义Type,实现UserType接口具体见http:/docs. huihoo. com/framework/hibernate/reference_v3_zh-cn/inheri tance. html封装对个entity的crud操作,在创建EntityPersister实例过程中,会产 生crud的sql,可以在以后的操作提高效率。不过如果是Dynamic Insert, DynamicUpdate,则会根据对象修改的属性动态的生成sqlDAS不支持类继承的映射,因此只会用到SingleTableEntityPersister8 StatefulPersistenceContextStatefulPersistenceContext 和 Sessionlmpl 是对应的,会缓存通过Sessionlmp!操作过的对象,包括entity和collection,主要属性有 EntitiesByKey key=EntityKey, value=entity.(EntityKey=id+EntityPersister+EntityMode entityMode)entityEntries key=entity, value=EntityEntry.EntityEntry用于描述个对象的持久化状态,如DELETED, MANAGED等等CollectionsByKeykey=CollectionKey, value=PersistentCollectionCollectionKey=CollectionPersister+key+EntityMode,这个Key 是通过 Collection, value. getType. nullSafeGet ()得到的 PersistentCollection 是 hibernate 对于 Collection 的封装, 主要用于实现延迟加载collectionEntries key=PersistentCollection, value=CollectionEntry StatefulPersistenceContext的主要用途可以实现对象之间的关联关系 的设置,动态的更新,以及对缓存的数据无需显示调用save, update, delete的 方法就可以实现这些操作,是因为在Transaction, commit ()的时候会调用 session, flush。,会保证内存对象状态和数据库的一致性9 Cascade, CascadeStyle, CascadingAction在Cascade执行级联操作的时候,会通过CascadeStyle. doCascade ( CascadingAction)来判断是否可以执行cascade,并且当要保存的对象有外键 约束的关联对象时候会通过ForeignKeyDirection来判断是应该在保存该对象 之前要保存关联对象还是在保存该对象之后再保存关联对象10 Loader, CriteriaQueryTranslator, Criteria, QueryParameters,CriteriaJoinWalker用于Criteria api对实体的查询Criteria是个査询entity的api。可以设置类似where条件的表达式,Select字段,order等等当使用 Criteria 査询时,首先会创建 CriteriaLoader, CriteriaLoader 会通过 CriteriaQueryTranslator 从 Criteria 中得到査询参数QueryParameters,通过 CriteriaJoinWalker 把 Criteria 变成 sql,然后 执行査询11 ActionQueue当调用session对实体进行insert, update, delete的时候,只是会创建相应 的action放入ActionQueue,然后在session, flush。的时候会真正操作 数据库ActionQueue的执行顺序:executeActions( insertions );executeActions( updates );executeAction s( collectionRemovals );executeActions( collectionUpdates );executeA ctions( collectionCreations ):executeActions( deletions );12 Tuplizer用于根据entityname实例化出对象,以及set/get propertyhibernate 内置的有 PojoEntityTuplizer, Dom4jEntityTuplizerDAS是在hibernate基础之上实现了 DataObject的持久化,支持DataObject对 象之间的关联,延迟加载,级联,控制反转,不支持DataObject的继承1.新实现了一个 SDOEntityTuplizer支持创建 DataObject,以及 set/get DataObject 的属性SDOEntityTuplizer实现抽象类中规定的如下方法SDOEnt i tyTupl i zer 类的 bui Idinstantiator 方法用来根据 mapping 信息来为相 应的实体建立不同的构造器,我们用SDOEntitylnstantiator来实现SDO的构 造器:2其中SDOComponentlnstantiator是用来当实体有复合主键用于实例化表示主 键的类3PropertyAccessor是Hibernate中定义的个接口,用来表达在访问mapping 的实体对象的属性的时候使用的“属性访问器”。它有两个相关的接口: Getter 接口和Setter接口。DASPropertyAccessor的内部结构如下图所示:其中getGetter方法和getSetter方法是PropertyAccessor接口定的规格。DASGetter 实现 Getter 接 口,DASSetter 类实现 Setter 接 口。4自定义type»支持blob, clob的存储BlobFileType:从个文件路径读取文件存入数据库blob字段.从数据库读取 blob字段,生成文件放在临时目录,返回路径BlobByteArrayType:把个byte口数组存入blob字段.从数据库读取blob 字段放入byteClobFileType:从个文件路径读取文件存入数据库clob字段.从数据库读取 clob字段,生成文件放在临时目录,返回路径ClobStringType:把个String存入blob字段.从数据库读取blob字段放入String5对査询实体的支持增加一个査询实体定义文件.dbquery.因为査询实体没有唯一标识,所以默认 的id的是"$queryEntityId$”.用户也可以自己指定一个列做唯一标识.在Loader. prepareQueryStatement ()里增加转换带査询实体的Sql.SelectFragment. addColumn ()做了判断,如果列名是"$queryEntityId$”,査询 的 column 就替换成queryEntityld,常量.在 Loader. getRowO 增加判断如果 key. getldentifier ()是 queryEntityld的话,则不做检査,看内存是否存在.AbstractEntityPersister. getDatabaseSnapshot ()里修改生成的査询 语句,如果有QueryEntity,则用定义的sql替换QueryEntityJava一一SSH(MVC)1. 谈谈你mvc的理解MVC是ModelViewControler的简称。即模型一视图控制器。MVC是种设计模式,它强制性的 把应用程序的输入、处理和输出分开。MVC中的模型、视图、控制器它们分别担负着不同的任务。视图:视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并接受用户的输入。视图不 进行任何业务逻辑处理。模型:模型表示业务数据和业务处理。相当于JavaBean。个模型能为多个视图提供数据。这提高了 应用程序的重用性控制器:当用户单击Web页面中的提交按钮时,控制器接受请求并调用相应的模型去处理请求。然后根据处理的结果调用相应的视图来显示处理的结果。MVC的处理过程:首先控制器接受用户的请求,调用相应的模型来进行业务处理,并返回数据给控制 器。控制器调用相应的视图来显示处理的结果。并通过视图呈现给用户。Struts1. strutsl. 2和struts2.0的区别?如何控制两种框架中的单例模式?strutsl. 2 和 struts2. 0 的对比a、Action 类:strutsl. 2 要求 Action 类继承一个基类。struts2. 0 Action 要求继承 ActionSupport 基类b、线程模式strutsl. 2 Action是单例模式的并且必须是线程安全的,因为仅有一个Action的实例来处理所有的 请求。单例策略限制了 Strutsl. 2 Action能做的事情,并且开发时特别小心。Action资源必须是线程安全 的或同步的。struts2. 0 Action为每个请求产生一个实例,因此没有线程安全问题。c、Servlet 依赖strutsl. 2 Action 依赖于 Servlet API,因为当个 Action 被调用时 HttpServletRequest 和 HttpServletResponse 被传递给 execut 方法。struts2. 0 Action不依赖于容器,允许Action脱离容器单独测试。如果需要,Struts2 Action仍然 可以访问初始的Request和Response。但是,其他的元素减少或者消除了直接访问HttpServletRequest和HttpServletResponse的必要性。d、可测性测试strutsl. 2 Action的个主要问题是execute方法暴露了 Servlet API (这使得测试要依赖于 容器)。一个第三方扩展:struts TestCase提供了一套strutsl. 2的模拟对象来进行测试。Struts2.0 Action可以通过初始化、设置属性、调用方法来测试,“依赖注入”也使得测试更容易。2. 项目中为什么使用SSH1 .使用Struts是因为struts是基于MVC模式的,很好的将应用程序进行了分层,使开发者更关注于 业务逻辑的实现;第二,struts有着丰富的taglib,如能灵活运用,则能大大提高开发效率。2 .使用Hibernate:因为hibernate为Java应用提供了一个易用的、高效率的对象关系映射框架。 hibernate是个轻量级的持久性框架,功能丰富。3 .使用Spring:因为spring基于IoC(Inversion of Control,反向控制)和AOP构架多层j2ee系统 的框架,但它不强迫你必须在每层中必须使用Spring,因为它模块化的很好,允许你根据自己的需要选 择使用它的某个模块:采用IoC使得可以很容易的实现bean的装配,提供了简洁的A0P并据此实现事务管理(TranscationManagment)»等等3. struts与spring是如何继承的不懂题目之意:是否是说的struts的action都继承自org. apache, struts, action. Action而Spring中的维承就不清楚了。4. struts如何实现国际化以下以两国语言(中文,英文)为例:1,在工程中加入Struts支持2 .编辑ApplicationResource. properties文件,在其中加入要使用国际化的信息,例如: lable. welcome, china=Weicome!3 .创建英文资源文件ApplicationResource en. properites4 .创建临时中文资源文件 ApplicationResource_temp. properites 例如:lable. welcom. china=中国 欢迎您!5 .对临时中文资源文件进行编码转换。可以使用myeclipse的插件,也可以在dos下执行:native2asci i-encodinggb2312 ApplicationResource_temp. propertiesApplicationResource_zh_CN. properties6 . 在 jsp 中加入 struts 的 bean 标记库 © tagl ib uri=*/WEB-INF/struts_bean. tld* prefix="bean"%>显不信息: <bean:message key="label, welcome. china*>可以在struts-config. xm!文件中定义多个资源包,而每个资源包可使用key属性指定包的名称。5. struts2. 0的常用标签1 . 往 action 里传值:<input name="userName type="text" class二 input6* size="15">2 .显示标签 property 用于输出指定值:<s:property value="userName "/>3 .用于从页面往 action 中(user)的对象内传值:s: text name二"user. userName " id二"username"/)4,判断s:if> </s:if> 用于在页面中判断指定数据 <s:if test="userName = admin">.</s:if> s:else>.</s:else>5 .迭代s: iterator)用于将List、Map、ArrayList等集合进行循环遍历<s:iterator value= userList" id二"user" status=*u"><s: property value二"userName"/X/a>/s:iterator>6 . URL地址标签,s:url用于生成一个URL地址,可以通过URL标签指定的s:param>子元素向URL 地址发送请求参数<s:url action=* *><s:param name=value= ></s:param></s:url>7 .超链接<a href > 般和s:url>标签起使用,用于带多个参数。<a href="<s:url action=* *><s:param name=" " value=*"></s:param><s:param name二value= ></s:param><s:param name二""value=""></s:param></s:url>超链接/a>8 . set标签,用于将某个值放入指定的范围内。例如application, session等。<s:set name="user" value="userName" scope="request" />6. struts 中怎么配置 form-bean、action、tiles此处配置的是strutsl.2的form-bean 配置:(在配置文件 struts-config. xml 中):<form-beans ><form-bean name二type二 X/form-bean>/form-beansname:指定form的名字;type指定form的类型:包名+类名;action 配置:(在配置文件 struts-config. xm! 中)<ac t i on-mapp ings ><action patattribute二input二name 二parameter二scope二 request"type=></action></action-mappings>path:请求 Action 的名字; attribute: form 的名字,与 form-bean 中的 name 对应: input:输入 页的路径;name:如果配置了 attribute, name 不起作用,与 attribute样; parameter:使用分发 Action 时, 指定调用分发Action中的方法名;scope: Action的范围; type: Action的类型:包名+类名:tites配置:1 .新建一个tiles-defs. xml文件,并在其中做如下配置:<?xml version="l. 0" encoding二"UTF-8"?><!DOCTYPE tiles-definitions PUBLIC "-/Apache Software Foundat i on/DTD Tiles Configuration 1. 1/EN* Ahttp:/Jakarta, apache, org/struts/dtds/tiles-config_l_l. dtd"><tiles_defini tions><definition name二"member-definition path二 /Jsp/layout. jsp"><put name二 top value二"/mTop. d"/<put name二'left" value二"/mLeft. d"/<put name二"main" value二"/defaultMmain. do /></definition></tiles_defini tions>2 .在 web. xm! 和 struts-config. xm! 和 web. xml 中做相应配置:在struts-config, xml中配置如下:plug-in className二 org. apache, struts, tiles. TilesPlugin"><set-property property=*definitions-config* value=*/WEB-INF/tiles-defs. xml*/> set-property property="definitions_parser_va1idate" value="true*/></plug-in>在web. xml中配置如下:<init-param><param-name>definitions-config</param-name><param-value>/WEB-INF/tiles-defs. xml</param-value></ini t-param>3 .调用Tiles组件Tiles组件是通过Struts Action来调用的,在struts-config. xml中做如下action配置:<actionpath= /member"parameter="member-definition"type="org. apache, struts, actions. ForwardAction*/>7. logic标签有哪几个?此标签库可以分为三种类型:条件、循环、转发/重定向。1 .条件类型(没标注的都比较简单) logic:empty, logic:notEmpty;Iogic:equal, logic:notEqual, logic:lessThan, logic:greaterThan, logic:lessEqual, logic:greaterEqual;logic:present, logic:notPresent;logic:match, logic:notMatch:比较两字符串是否相等,可以比较字符串的开始的、结尾的或其 中的某个部分。location属性:指定从某个位置开始进行比较。2 .循环类型 logic:iterate3 .转发/重定向类型logic:forward 和 logic:redirectlogic:forward标签和jsp:forward标签相似,但它可以使用global forward中的个 ActionForward例如:logic:forward name=*login" />与上面相关的global forward中的代码:global-forwards)<forward name="login" path=*/loginForm, jsp"/></globa1-forwards>logic:redirect标签和上面的标签类似,但它默认调用的方法是response. sendRedirect (),取代了上面的requestDispatcher. forward() 最大的不同是它支持所有html: I ink标签的属性, 所以你能够指定request参数: logic: redirect name ="login param I d=" employee Id" paramName="employee" property=" id"/> 在MVC框架下,不推荐使用这两个标签,你应该是从controller中选择下个view,而不是从view 中选择.在Jsp页面中不要过多的使用!ogic标签。8. action是单实例还是多实例,为什么?action是单实例的。当多个用户访问个请求的时候,服务器内存中只有一个与之对应的action类 对象。因为当服务器第一次加载struts的配置文件的时候,创建了一个Action后,每发送个请求,服务器都 会先去检索相应的范围内(request, session)是否存在这样个action实例,如果存在,则使用这个实例,如果不存在,则创建一个action实例。9. dispatchAction是用什么技术实现的?DispatchAction是Aci ton的个子类,主要解决了一个请求处理多个功能的问题普通的Action你只能写execute方法来处理业务,而想用这个Action处理多个任务,你必须要请求 参数进行解析,用讦语句块来处理举个小例子:有如下个 url: h11p: /1 oca 1 host: 8080/myApp/addllserAc t i on. do如果你处理这个url的是个普通的Action,那么就只能在execute里面执行插入的相关操作,如果换 成一下url:http:/loca1host:8080/myApp/UserAction. do?method=ad

    注意事项

    本文(2018年SSH框架面试题.docx)为本站会员(文***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开