java第七章jdbc课后简答题_Java周测题08.13

1.关于Mybatis的描述正确的是:Mybatis是持久层框架,Mybatis封装了JDBC,Mybatis简化了代码的编辑和使用,Mybatis是一个半ORM(对象关系映射)框架,

Mybatis采用了OCP(对象关系映射)的方式封装了数据 错误

Mybatis采用的是ORM(对象关系映射)的方式封装数据,不是OCP

2.关于JDBC的缺点描述缺点是:每次操作数据时,都需要频繁的开关连接///操作比较繁琐,很多代码需要重复写很多次,比如获取传输器对象///如果遇到批量操作,频繁与数据库进行交互,容易造成效率的下降//

优点是:直接底层操作,提供了很简单、便捷的访问数据库的方法,跨平台性比较强。灵活性比较强,可以写很复杂的SQL语句

3.关于spring描述正确的是:Spring是一个轻量级的框架.轻量级是相对于重量级的一种对于组件的评判标准,它用来衡量组件对其环境的依赖程度,如果这个依赖越小,就越轻量,反之就越重量。///Spring框架可以整合所有的第三方框架//利用IOC和AOP极大的简化了程序的配置和调用的方式//让程序员编码时更加专注于业务的实现

Spring是一个重量级的控制反转(IoC)和面向切面(AOP)的容器框架 错误

4.关于IOC如何实例化对象涉及到的反射机制,描述正确:反射机制通过调用对象的无参构造实例化对象///

反射机制是通过调用对象的无参构造来实例化对象的,

所以想让Spring来创建对象时,必要的一步就是添加无参构造

5.spring四种注入方式:Set方法注入,构造函数(构造器)注入,注解方式注入,静态/实例工厂方法注入的方式///

装饰者方式注入 不属于

6.注解@SpringBootApplication表示让springBoot自动给程序进行必要的配置//

注解@EnableAutoConfiguration表示自动配置///注解@SpringBootTest表示使用单元测试

7.若启动SpringBoot时,POM.XML报错,经检查jar包不完整,必须操作是:

必须解决jar包不完整问题,//检查缺少的JAR包并补充//强制更新Maven文件//修改Maven连接镜像

8.STS(Spring Tool Suite):STS是一个集成开发工具///STS是一个针对于高级Spring开发的工具///STS是基于Eclipse开发的工具//STS可以创建JAVA工程,可以创建创建Web工程

9.关于servlet缺点:

在Servlet3.0版本之前,每一个Servlet都需要在web.xml文件中至少做八行配置信息,配置内容多且繁琐客户端提交参数到服务器,Servlet一律按照字符串进行接收,后期需要进行类型转换,比较麻烦///servlet具有容器依赖性,必须放在服务器中运行,不利于单元测试///通常情况下,一个Servlet类只负责处理一个请求,若项目中有成百上千个请求需要处理,就需要有成百上千个Servlet类,这样会使得项目中Servlet类的个数暴增;

10.关于MVC设计模式:
M(模型)负责处理请求并返回处理结果

V(视图)负责视图渲染

C(控制器)负责接收请求

控制器的作用:接收请求,调用业务类(即把请求交给模型层处理),派发页面,控制器不直接处理请求

11.

95448474ef10866a91258105d778961a.png

12.关于yml文件的语法:使用yml文件有层级结构(缩进),支持空格缩进,不支持Tab缩进使用yml文件key value 之间使用冒号":"连接在yml中,数组用“[]”包括起来,hash用“{}”来包括

13.关于SpringBoot中使用@Value的描述: 若要给静态变量赋值,可以使用set()方法,其中需要在类上加入@Component注解 ///SpringBoot中使用@Value()只能给普通变量赋值,不能直接给静态变量赋值 //

给普通变量赋值时,直接在变量声明之上添加@Value()注解即可 注解@Value只能给普通变量赋值,不能直接给静态变量赋值.若要赋值, 可以使用set()方法,还需在类上加@Component注解

14.关于@Value注解的取值注解写法: 格式:@Value(“${key}”)

简答题:

1. Spring Bean的作用域之间有什么区别?

Spring容器中的bean可以分为5个范围,

singleton:这种bean范围是默认的,这种范围确保不管接受到多少个请求,每个容器中只有一个bean的实例,单例的模式由bean factory自身来维护。

prototype:原形范围与单例范围相反,为每一个bean请求提供一个实例。

request:在请求bean范围内会每一个来自客户端的网络请求创建一个实例,在请求完成以后,bean会失效并被垃圾回收器回收。

Session:与请求范围类似,确保每个session中有一个bean的实例,在session过期后,bean会随之失效。

global-session:global-session和Portlet应用相关。当你的应用部署在Portlet容器中工作时,它包含很多portlet。如果你想要声明让所有的portlet共用全局的存储变量的话,那么这全局变量需要存储在global-session中。

全局作用域与Servlet中的session作用域效果相同。

2. 在Spring AOP 中,关注点和横切关注的区别是什么?

关注点是应用中一个模块的行为,一个关注点可能会被定义成一个我们想实现的一个功能。

横切关注点是一个关注点,此关注点是整个应用都会使用的功能,并影响整个应用,比如日志,安全和数据传输,几乎应用的每个模块都需要的功能。因此这些都属于横切关注点。

3. mybatis的基本工作流程

1.读取配置文件,配置文件包含数据库连接信息和Mapper映射文件或者Mapper包路径。

2.有了这些信息就能创建SqlSessionFactory,SqlSessionFactory的生命周期是程序级,程序运行的时候建立起来,程序结束的时候消亡

3.SqlSessionFactory建立SqlSession,目的执行sql语句,SqlSession是过程级,一个方法中建立,方法结束应该关闭

4.当用户使用mapper.xml文件中配置的的方法时,mybatis首先会解析sql动态标签为对应数据库sql语句的形式,并将其封装进MapperStatement对象,然后通过executor将sql注入数据库执行,并返回结果。

5.将返回的结果通过映射,包装成java对象。

4.session和cookie的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。

2、cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。

3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。

4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

5、可以考虑将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值