java后台
跟java后台有关的知识点
buptpxy
技术小白在成长
展开
-
Spring的Bean声明、初始化、使用、销毁
Bean是由Spring IoC容器实例化、组装和管理的对象。先通过一个简单的例子来了解把对象声明为Bean的作用。1. Bean声明在applicationContext.xml中配置bean的定义<bean id="screwDriver" class="com.pxy.ScrewDriver"></bean>//ScrewDriver.javapubli...原创 2020-05-02 15:51:19 · 391 阅读 · 1 评论 -
Java泛型
#1. 泛型带来的好处在没有泛型的情况的下,通过对类型 Object 的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是本身就是一个安全隐患。那么泛型的好处就是在编译的时候能够检查类型安全,并且所有的强制转换都是自动和隐式的。#2...原创 2020-05-02 15:43:50 · 228 阅读 · 0 评论 -
使用obj.getClass()获取对象类型时注意基本类型
获取Class对象的三种方法使用 Class 类的 forName 静态方法;直接获取某一个对象的 class;调用某个对象的 getClass() 方法public class ClassTest { public static void main(String[] args) throws ClassNotFoundException, IllegalAccessExcep...原创 2020-05-02 15:42:19 · 2944 阅读 · 0 评论 -
在java中实现将函数赋值给另一个对象
在c#中有委托类型delegate的对象,可将任意类的函数赋值给此对象,则此对象就可表现出与函数相同的行为。在Java中没有delegate类型的对象,但可以使用lambda表达式或::操作符实现将函数赋值给另一个对象。public class LambdaTest { //Event接口只能有一个方法,否则将无法通过lambda表达式后::操作符找到此方法 //@Functi...原创 2020-05-02 15:41:50 · 1576 阅读 · 0 评论 -
IDEA新建和运行SpringMVC项目
使用springBoot的项目是通过运行@SpringBootApplication注解的类来启动项目(spring-boot-starter-web中内置了一个Tomcat),使用了SpringMVC框架的项目却不是通过直接运行某个类来启动项目,而是将项目打包成war包放入Tomcat,由Tomcat来启动项目。下面介绍下使用IDEA生成一个SpringMVC项目和启动此项目的步骤。1. 安...原创 2020-05-02 15:40:44 · 13171 阅读 · 1 评论 -
使用Socket实现简单的RPC协议框架
在使用springboot,http实现简单的RPC协议框架这篇文章中我们了解了RPC的基本原理,就是根据本地接口来创建远程类的代理实现类,然后使用反射机制调用远程类的方法。在这篇文章中我们使用Socket作为两个服务的通信方式,Socket支持TCP和UDP通信,本文中的例子使用TCP通信。项目代码地址:https://github.com/buptpxy/rpcBySocket1. 创建工...原创 2020-05-02 15:38:16 · 412 阅读 · 0 评论 -
使用springboot,http实现简单的RPC协议框架
#一、 RPC协议的作用RPC(Remote Procedure Call),远程过程调用,就是像调用本服务中的函数一样去调用别的服务中的函数。二、RPC与HTTP的区别远程过程调用这一功能也可用HTTP协议实现,例如服务B暴露Restful接口,然后让服务A调用它的接口。基于Restful的调用方式因为可读性好(服务B暴露出的是Restful接口,可读性当然好)而且HTTP请求可以通过各种...原创 2020-05-02 15:36:50 · 4283 阅读 · 0 评论 -
据说一套阿里Java工程师答题正确率只有50%的题目-10道Java题测试挑战
题目一: float a = 0.125f; double b = 0.125d; System.out.println((a - b) == 0.0); 代码的输出结果是什么?A. trueB. false题目二: double c = 0.8; double d = 0.7; double e = 0.6; 那么c-d与d-e是否相等?A. trueB. false题目三: Sys...转载 2020-04-26 20:31:25 · 683 阅读 · 2 评论 -
Java开发手册-集合处理
关于List的坑1.【强制】关于hashCode和equals的处理,遵循如下规则:只要重写equals,就必须重写hashCode。因为Set存储的是不重复的对象,依据hashCode和equals进行判断,所以Set存储的对象必须重写这两个方法。如果自定义对象作为Map的键,那么必须重写hashCode和equals。说明:String正因为重写了hashCode和equals...转载 2020-04-26 20:30:13 · 372 阅读 · 0 评论 -
《java开发手册》中关于日期时间的编程规约
1.【强制】日期格式化时,传入pattern中表示年份统一使用小写的y。说明:日期格式化时,yyyy表示当天所在的年,而大写的YYYY代表是week in which year(JDK7之后引入的概念),意思是当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,返回的YYYY就是下一年。正例:表示日期和时间的格式如下所示:new SimpleDateFormat("yyyy-MM...转载 2020-04-22 12:18:32 · 395 阅读 · 0 评论 -
可使用System.getProperty(String key)获得的环境变量
key 可以为:java.version #Java 运行时环境版本java.vendor #Java 运行时环境供应商java.vendor.url #Java 供应商的 URLjava.vm.specification.version #Java 虚拟机规范版本java.vm.specification.ven...原创 2020-04-15 09:52:38 · 211 阅读 · 0 评论 -
滴滴java后台面经
总共三面,都主要根据简历上的项目来问的。一面1. 描述秒杀系统的秒杀逻辑过程?1)首先秒杀系统中有商品列表页和商品详情页,当用户在商品列表页点击想要秒杀的商品,会跳转到商品详情页,商品详情页会有一个倒计时,如果未到秒杀时间或者秒杀时间结束或者商品已卖完,立即秒杀的按钮是灰的,不能点击的。2)如果到了秒杀时间,用户点击立即秒杀的按钮,请求到达后端后会先判断用户是否登录(从cookie...原创 2019-10-01 23:57:30 · 1462 阅读 · 0 评论 -
招银网络java面经
1. java有哪些基本类型?byte:1B,short:2B,int:4B,long:8B,float:4B,double:8B,boolean:1B2.有了基本类为什么还有有包装类?首先,java是面向对象的语言,而基本类型并不具有对象的性质,为了让基本类型也具有对象的特征,就出现了包装类型,它相当于将基本类型“包装起来”,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基...原创 2019-09-30 23:59:40 · 7124 阅读 · 0 评论 -
美团java后台面经
美团一面1. 自我介绍我叫xxx,来自xxx大学,xxx专业研二,在实验室主要做区块链技术的研究与应用,我写过xxx,了解了xxx。暑假在xx实习,参与了xxx项目,实现了xxx。我觉得自己java基础还可以,希望之后能继续从事后台开发方面的工作。2. 堆和栈的区别堆是存放实例化后的对象的,被一个进程内所有线程共享,堆是垃圾回收的主要区域。栈是存放当前线程相关的信息,被每个线程...原创 2019-09-20 23:38:56 · 968 阅读 · 0 评论