在java学习中遇到的一些经典问题和解答(8)
1.Java的Swing组件使用了哪种设计模式?
MVC(模型-视图-控制器)
2.什么是JDBC?
JDBC是允许用户在不同的数据库之间做选择的一个抽象层。JDBC允许开发者用JAVA写数据库应用程序,而不需要关心底层特定数据库的细节。
3.解释驱动在jdbc中的角色?
jdbc驱动提供了特定厂商对jdbc api接口类的实现,驱动必须要提供java.sql包下面这些类的实现:Connection,Statement,PreparedStatement,CallableStatement,ResultSet和Driver。
4.Class.forName()方法有什么作用?
初始化参数制定的类,并且返回此类对应的Class对象。
5.PreparedStatement比Statement有什么优势?
PrepareStatement是预编译的,因此,性能就会更好。同时,不同的查询参数值,PreparedStatement可以重用。
6.什么时候使用CallableStatement?用来准备CallableStatement的方法是什么?
CallableStatement用来执行存储过程。存储过程是由数据库存储和提供的。存储过程可以接受输入参数,也可以有返回结果。非常鼓励使用存储过程,因为它提供了安全性和模块化。准备一个CallableStatement()的方法是:CallableStatement Connection.prepareCall().
7.数据库连接池是什么意思?
想打开关闭数据库连接这种和数据库的交互可能是很浪费时间,尤其是当客户端数量增加的时候,会消耗大量的资源,成本是很高的。可以在应用服务器启动的时候建立很多个数据库连接并维护在一个池中。连接请求由池中的连接提供。在连接使用完毕之后,把连接归还到池中,以用来满足将来更多的请求。
8.什么是RMI?
java远程方法调用(JAVA RMI)是Java API 对远程过程调用(RPC)提供的面向对象的等价形式,支持直接传输序列化的java对象和分布式垃圾回收。远程方法调用可以看做是激活远程正在运行的对象的方法的步骤。RMI对调用者是位置透明的,因为调用者感觉方法是执行在本地运行的对象上的。
9.RMI体系结构的基本原则是什么?
RMI体系结构是基于一个非常重要的行为定义和行为实现相分离的原则。RMI允许定义行为的代码和实现行为的代码相分离,并且运行在不同的JVM上。
10.RMI体系结构分哪几层?
1.存根和骨架层:这一层对程序员是透明的,它主要负责拦截客户端发出的方法调用请求,然后把请求重定向给远程的RMI服务。
2.远程引用层:用来解析并管理客户端对服务端远程对象的引用。连接是点到点的。
3.传输层:这一层负责连接参与服务的两个JVM。这一层是建立在网络上机器间的TCP/IP连接之上的。它提供了基本的连接服务,还有一些防火墙穿透策略。
- AngularJs ng-route路由详解
- JAVA获取txt文件内容
- 关于 CSS 反射倒影的研究思考
- 【Javascript】—— 1 方法function的高级特性
- Oracle基础知识-SQL简单命令
- 【java开发系列】—— spring简单入门示例
- JavaMelody应用监控使用指南
- 记录安装oracle的那些事(四)之oracle 缺包安包
- 【面试虐菜】—— JAVA面试题(1)
- JAVA增删改查XML文件
- javascript去掉字符串前后空格
- 构建通用的 React 和 Node 应用
- 有趣的 CSS 像素艺术
- 【插件开发】—— 11 窃听风云(Java事件监听原理-GEF实例讲解)
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- JDBC+MySQL实战
- LeetCode 08字符串转整数&&09回文数
- React 17 RC 版发布:无新特性,却有新期待!
- 《剑指offer》第13天:两个数组的交集
- Spring的Controller是单例还是多例?怎么保证并发的安全
- JQUERY获取loaded 宽高这么变态
- 动态规划的楼层算法
- 58.Vue 使用render方法渲染组件
- xinetd被动服务唤醒
- Bash特殊变量:$0, $#, $*, $@, $?, $$实战
- 0799-1.8-CDSW1.8的新功能
- socket.io实践干货
- 0800-5.16.2-如何禁用Hue中Oozie的部分Action
- linux ulimit 调优
- 初识ABP vNext(3):vue对接ABP基本思路