j2ee面试题郭蕾.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Spring 1.什么是spring Spring是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目得是简化企业开发。 2.什么是控制反转? 以一个例子来说明: public class PersonServiceBean { private PersonDao personDao = new PersonDaoBean(); public void save(Person person){ personDao.save(person); } } PersonDaoBean是在应用内部创建及维护的。所谓控制反转就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转。 3.spring优点 1)降低组件之间的耦合度,实现软件各层之间的解耦。(通过控制反转) 2)可以使用容器提供的众多服务,如:事务管理服务,AOP 3)容器提供单例模式支持,开发人员不再需要自己编写实现代码。 4容器提供的众多辅作类,使用这些类能够加快应用的开发,如: JdbcTemplate、 HibernateTemplate。 5)Spring对于主流的应用框架提供了集成支持,如:集成Hibernate、JPA、Struts等,这样更便于应用的开发。 4.实例化spring容器 ApplicationContext ac=new ClassPathXmlApplicationContext(new String[]{bean.xml}); bean的作用域 1)singleton(默认) 我们得默认配置就是singleton,当然也可以通过scope属性去指定相应的作用域,sigleton作用域会在容器启动时初始化bean(可以通过在构造函数中打印得出结论),当然我们也可以通过指定指定Bean节点的lazy-init=true 来延迟初始化bean,这时候,只有第一次获取bean才会初始化bean(当然不建议这样做)。在默认为singleton的情况下,我们获得的多个bean都是同一个(打印p1==p2为true)。 2)prototype 每次从容器获取bean都是新的对象。只有在调用getBean方法的时候才会初始化bean,并且每次获得的bean都不一样。 DI public class PersonServiceBean implements PersonService private PersonDao personDao; public void setPersonDao(PersonDao personDao) { this.personDao = personDao; } public void save(){ personDao.add(); }} 大致可以分为三种方式:1)构造器注入 2)set方法注入 3)注解方式注入 AOP 我觉得AOP技术主要会用于权限拦截,比方说我们要根据用户的权限判断用户能不能执行某一个方法,这里就会用到AOP jdbctemplate与hibernatetemplate以及他们的事务管理 AOP实现原理——为目标对象创建代理对象。 Hibernate 1.什么是hibernate hibernate是一个开源的ORM框架,它对JDBC进行了非常轻量级的对象封装,通过它我们可以使用对象编程思维来操纵数据库。 2.hibernate与jdbc的区别 首先先从他们俩的来历说起,由于java是一门面向对象的语言,而数据库采用的是关系模型,要在他们之间建立起关系,就必须解决模式不匹配的问题。有两种方法:一是jdbc手工配置(setString(),getString());二是使用ORM框架,比方说hibernate。 1)jdbc使用效率高,但是在java代码中嵌入了过多的sql逻辑 2)hibernate使用效率没有jdbc高,但是使用它程序员可以用面向对象的思维来操作数据库 3)hibernate可以实现跨数据库平台,只需要改方言以及驱动等。 3.session接口 Save,get,load,update,delete,这些方法进行简单说明 query接口 List,uniqueResult,setString,setParameterList POJO类 1)瞬时(与session没有关系,与数据库也没有关系) 2)持久(与session有关系,与数据库也有关系) 3)脱管(与session没有关系,与数据库有关系,一般主键都有值) 6.Hibernate的Generator属性 Iden

文档评论(0)

82393aa + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档