java中SSM框架面试题,spring的使用

BSO 2020-10-13 16:01:36 java常见问答 4165

java由于其内容的丰富性以及知识群的庞大性,受到了很多年轻人的欢迎,并且努力学习。今天就来为大家介绍一些常见的面试题,也就是java中SSM框架面试题,spring的使用,一起来了解一下吧。

首先说一下为什么使用Spring(优缺点)

①方便解耦,简化开发(IOC:通过Spring提供的IoC容器,我们可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。)

②AOP编程的支持(通过Spring提供的AOP功能,方便进行面向切面的编程)

③声明式事务的支持(可以从单调烦闷的事务管理代码中解脱出来,)

④方便程序的测试(Spring对Junit4支持,可以通过注解方便的测试Spring程序。)

⑤方便集成各种优秀框架(Spring不排斥各种优秀的开源框架如Struts,Hibernate)

然后介绍一下,spring容器创建对象的时机

第一种:默认情况下,启动spring容器便创建对象(遇到bean便创建对象)

第二种:在spring的配置文件bean中有一个属性lazy-init=“default/true/false”

①如果lazy-init为"default/false"在启动spring容器时创建对象(默认情况)

②如果lazy-init为"true",在context.getBean时才要创建对象。

最后补充一下,Spring MVC的常用注解解释

@Controller用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller对象。

@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。

@PathVariable用于将请求URL中的模板变量映射到功能处理方法的参数上,即取出uri模板中的变量作为参数

@RequestMapping(value="/product/{productId}",method = RequestMethod.GET)

public String getProduct(@PathVariable(“productId”) String productId)

@Responsebody注解表示该方法的返回的结果直接写入HTTP响应正文(ResponseBody)中,一般在异步获取数据时使用;

在使用@RequestMapping后,返回值通常解析为跳转路径,加上@Responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP响应正文中。例如,异步获取json数据,加上@Responsebody注解后,就会直接返回json数据。

@RequestParam在SpringMVC后台控制层获取参数的方式主要有两种,一种是request.getParameter(“name”),另外一种是用注解@RequestParam直接获取 。spring会自动根据参数名字封装进入,我们可以直接拿这个参数名来用。代码展示如下:

 @RequestMapping("testRequestParam") 参数同名
 public String filesUpload(@RequestParam String inputStr, HttpServletRequest request)
     {
         int inputInt = Integer.valueOf(request.getParameter("inputInt"));
         前
         1. < form action = "/gadget/testRequestParam"
         method = "post" >
             2. 参数inputStr: <input type="text" name="inputStr">    
      参数intputInt:<input type="text" name="inputInt">    
 </form>  

可以对传入参数指定参数名
 @RequestParam(value="aa") String inputStr  

可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传
public String filesUpload(@RequestParam(value="aa", required=true) String inputStr, HttpServletRequest request)

以上就是关于java中SSM框架面试题,spring的使用的主要内容了。如果你对java知识感兴趣,想要了解更多java面试题,敬请关注奇Q工具网。

推荐阅读:

java spring依赖注入有哪些缺点?升级版新特征是什么?

java开发如何用spring简化?详细图解

java spring中Setter方法注入怎么操作?实例代码展示