面试问答整理——抽空补充

本文深入讲解Java中的关键概念,包括序列化、Spring框架、Hibernate数据库操作、Maven项目管理、Socket编程、接口设计等,同时探讨了不同类型的Java对象如POJO和JavaBean的区别,以及在高并发场景下的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.@JsonIgnore
2.序列化:https://blog.youkuaiyun.com/ixuhangyi/article/details/78493491
3.@Scope(value = "prototype")
4.@Controller(value = "loadProfile"),value有什么作用
5.@Transactional在service上注释有什么作用


1. io异步 (
    同步IO和异步IO是针对应用程序和内核的交互而言的。
    同步IO指的是用户进程触发I/O操作并等待或者轮询的去查看I/O操作是否就绪。
    异步IO是指用户进程触发I/O操作以后就立即返回,继续开始做自己的事情,而当I/O操作已经完成的时候会得到I/O完成的通知)
2. 怎么创建socket服务,然后怎么做 (
    //创建Socket 客户端对象
    Socket s = new Socket("127.0.0.1",6666);

    //创建ServerSocket 服务器端对象。。
    ServerSocket ss = new ServerSocket(6666);
    //监听服务器连接
    s = ss.accept(); )
3. socket怎么收取多个客户端的消息(https://blog.youkuaiyun.com/DuanLiuchang/article/details/70151203)
4. hibernate怎么操作数据库,怎么引入实体类,参数有哪些 (https://www.cnblogs.com/lubolin/p/7761551.html)
    创建实体类-创建实体类与数据库表对应的配置文件-hibernate核心配置文件-测试(configuration-sessionFactory-seesion-transaction-实体-session.save()-tx.commit()-session.close()-sessionFactory.close())
5. spring管理对象,
怎么创建(https://www.cnblogs.com/lyb0103/p/7611826.html),三种:1.构造方法创建2.静态工厂方法创建3.动态工厂方法创建
怎么管理 (https://blog.youkuaiyun.com/shangboerds/article/details/72590146、https://blog.youkuaiyun.com/qiesheng/article/details/60869592)
Spring Framework 精萃:https://blog.youkuaiyun.com/shangboerds/article/details/72589642
    XML:定义类-定义xml配置文件(<beans>)-测试(实例化Spring IoC容器,读取配置文件,ApplicationContext)、Java配置元数据:定义类-定义java配置类(@Configuration、@Bean(new 类();))-测试()、Spring基于注解的配置元数据:定义类(@Component)-XML配置文件(引入context:component-scan)-测试()、java配置元数据:定义类(@Component)-java配置类(@Configuration、@ComponentScan)-测试()
6. maven管理项目有什么好处
    maven是一个构建工具,服务与构建.使用maven配置好项目后,输入简单的命令,maven会帮我们处理繁琐的任务;maven是跨平台的;maven最大化的消除了构建的重复;maven可以帮助我们标准化构建过程,所有的项目都是简单一致的,简化了学习成本;总之,maven作为一个构建工具,不仅帮我们自动化构建,还能抽象构建过程,提供构建任务实现.它跨平台,对外提供一致的操作接口,这一切足以使它成为优秀的流行的构建工具,但是maven不仅是构建工具,它还是一个依赖管理工具和项目信息管理工具,它还提供了中央仓库,能帮我们自动下载需要的jar包。
7.apache和tomcat (https://www.cnblogs.com/zaifeng0108/p/7226380.html)
    APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等动态网页的就不行,如果要在APACHE环境下运行jsp 的话就需要一个解释器来执行jsp网页 而这个jsp解释器就是TOMCAT, 为什么还要JDK呢?因为jsp需要连接数据库的话,apache可以支持php\cgi\perl,但是要使用java的话,你需要tomcat在apache后台支撑,将java请求由apache转发给tomcat处理。apache是web服务器,Tomcat是应用(java)服务器,它只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行.
8. pojo和bean :
    “POJO”它是一个普通java对象,而不是一个特殊的对象。主要用来指代那些没用遵从特定的Java对象模型,约定或框架如EJB的Java对象;
    JavaBean 是一种JAVA语言写成的可重用组件。它的方法命名,构造及行为必须符合特定的约定:
        这个类必须有一个公共的缺省构造函数。
        这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。
        这个类应是可序列化的。
    当一个Pojo可序列化,有一个无参的构造函数,使用getter和setter方法来访问属性时,他就是一个JavaBean
序列化:
把对象转换为字节序列的过程称为对象的序列化。
把字节序列恢复为对象的过程称为对象的反序列化。
对象的序列化主要有两种用途:
1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;
2) 在网络上传送对象的字节序列。
9.什么情况下用接口?写过接口文档吗?
    接口分为四部分:方法、url、请求参数、返回参数
    在项目开发中,web项目的前后端分离开发,APP开发,需要由前后端工程师共同定义接口,编写接口文档,之后大家都根据这个接口文档进行开发,到项目结束前都要一直维护。
    1、项目开发过程中前后端工程师有一个统一的文件进行沟通交流开发
    2、项目维护中或者项目人员更迭,方便后期人员查看、维护
10. 数据库一对多多对一
11. 写个链表的合并吧
12. jsp什么时候编译的

树是怎么遍历的

对接口的理解。

答接口分为两种:一种是数据型接口,一种是应用型接口。 数据型接口:是比抽象类更抽象的某种“结构”,它不是类,但是跟类有一样的结构规范,规范我们接口要以什么格式进行定义,一般用于团队比较大,分支比较多的情况下才使用。 应用型接口:就是API数据对外访问的一个入口。请求方需要什么样的数据,我们就提供相应的数据,并且配以相应的接口文档


ActiveMQ与webservice的相同之处? 2、有应用过哈希算法吗?

答1、都可以进行分布式应用; 2、只了解过数据结构里的排序算法。

servlet基础,框架基础

tcp udp有什么区别。

答tcp是面向连接,需要先打招呼,连接上了才能通信,udp只需要将文件发送到指定地址,不需要连接。

问设计一个高并发秒杀程序。

答没回答上来。

说下JAVASE

问了一个ajax主要作用是什么。

答提供异步刷新的效果,提高用户体验度我响应时间。

数据库中唯一索引和主键的区别

答唯一索引保证存储的每一条数据的唯一性,主键约束只是对主键本身这个字段的约束,且不能为空,而唯一约束可以为空

struts1和struts2的区别。

答struts2不是struts1的升级,而是继承的webwork的血统,它吸收了struts1和webwork的优势。

sequence的属性。

答步长,最大值,最小值。

请模拟写出一个类实现栈

StringBuff和Stringbulid的区别

答线程安全和不安全

线程的工作方式

多态、依赖注入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值