聊一聊

简介: 聊一聊

输出结果是???(欢迎大家各抒己见,说出自己的见解)

public class Test{   
    public static void main(String[] args) {       
        int a[] = {2,3,45,6};
        System.out.println(Arrays.asList(a).contains(2));
   }
}

1,  Hibernate中get和load方法的区别


       hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,如果在使用过程中发现了问题,只能抛异常;


       hibernate对于get方法,hibernate一定要获取到真实的数据,否则返回null。


具体介绍:


       1. 对于get方法,hibernate会确认一下该id对应的数据是否存在,首先在session缓存中查找,然后在二级缓存中查找,还没有就查询数据库,数据库中没有就返回null。


       2.  load方法加载实体对象的时候,根据映射文件上类级别的lazy属性的配置(默认为true)。


分情况讨论:


       (1)若为true,则首先在Session缓存中查找,看看该id对应的对象是否存在,不存在则使用延迟加载,返回实体的代理类对象(该代理类为实体类的子类,由CGLIB动态生成)。等到具体使用该对象(除获取OID以外)的时候,再查询二级缓存和数据库,若仍没发现符合条件的记录,则会抛出一个ObjectNotFoundException。


       (2)若为false,就跟get方法查找顺序一样,只是最终若没发现符合条件的记录,则会抛出一个ObjectNotFoundException。

 

2,  列举一下你知道的实现spring事务的几种方式


       (1),编程式事务管理:需要手动编写代码,在实际开发中很少使用,


       (2),基于TransactionProxyFactoryBean的声明式事务管理,需要为每个进行事务管理的类做相应配置


       (3),基于AspectJ的XML的声明式事务管理,不需要改动类,在XML文件中配置好即可


       (4),基于注解的声明式事务管理,配置简单,需要在业务层类中添加注解

 

3,Java中equals和contains的区别


   

  equals是判断字符串的是不是相等。

       

例如:"abc".equals("abc"),返回结果是Boolean类型的true;

                  "abc".equals("ab")返回结果是Boolean类型的false。

   

 contains是包含的意思。

     

例如:"abc".contains("a"),返回结果是Boolean类型的true;

                 "abc".contains("d"),返回结果是Boolean类型的false。

相关文章
|
JavaScript 测试技术
Webpack - Vue 配置开发环境与正式环境
Webpack - Vue 配置开发环境与正式环境
230 1
|
JSON 前端开发 Java
Spring MVC入门必读:注解、参数传递、返回值和页面跳转(下)
Spring MVC入门必读:注解、参数传递、返回值和页面跳转(下)
177 0
|
7月前
|
机器学习/深度学习 计算机视觉
RT-DETR改进策略【卷积层】| ICCV-2023 LSK大核选择模块 包含ResNetLayer二次独家创新
RT-DETR改进策略【卷积层】| ICCV-2023 LSK大核选择模块 包含ResNetLayer二次独家创新
157 13
RT-DETR改进策略【卷积层】| ICCV-2023 LSK大核选择模块 包含ResNetLayer二次独家创新
|
数据采集 Java 数据处理
Java流与链表:探索java.util.stream与LinkedList的交汇点
本文探讨了Java中流(Streams)与链表(LinkedList)的结合使用,展示了如何通过流处理LinkedList以实现高效数据操作。示例代码包括LinkedList的基本操作、使用Stream进行过滤和映射,以及结合HttpClient和代理IP实现网络爬虫。代理IP有助于绕过反爬机制,提高爬取效率。通过结合这些技术,开发者能编写出更简洁、高效的代码。
192 2
Java流与链表:探索java.util.stream与LinkedList的交汇点
|
12月前
|
JavaScript 前端开发 索引
|
人工智能
aigc
aigc
276 0
理解dtsi中的&
理解dtsi中的&
244 0
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的高校教师科研信息展示网站附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的高校教师科研信息展示网站附带文章和源代码部署视频讲解等
79 1
|
Linux
linux中服务管理
在Linux服务管理中,从传统的System V init到Upstart,再到广泛采用的systemd,管理方式不断发展。systemd以其强大的功能和依赖解决成为现代Linux的核心。`systemctl`是管理服务的关键命令,如启动(`start`)、停止(`stop`)、重启(`restart`)服务及设置开机启动(`enable`)或取消(`disable`)。了解和服务管理,特别是systemd和`systemctl`的使用,对系统管理员至关重要。其他如xinetd用于控制网络服务,而特定环境下有OpenRC等工具。
139 2
|
缓存 网络安全 开发工具
极简并优雅的在IDEA使用Git远程拉取项目和本地推送项目
极简并优雅的在IDEA使用Git远程拉取项目和本地推送项目
3554 0