![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
撒有啦啦Q
Never be that HAPPY FLY.
展开
-
VO、DTO、Entity的区别
1、entity 里的每一个字段,与数据库相对应,2、vo 里的每一个字段,是和你前台 html 页面相对应,3、dto 这是用来转换从 entity 到 vo,或者从 vo 到 entity 的中间的东西 。(DTO中拥有的字段应该是entity中或者是vo中的一个子集)举个例子:你的html页面上有三个字段,name,pass,age你的数据库表里,有两个字段,name,pass , 注意没有 age。而你的 vo 里,就应该有下面三个成员变量 ,因为对应 html 页面上三个字转载 2020-07-25 12:11:34 · 18835 阅读 · 9 评论 -
两个线程交替执行
有线程A打印1~52的数字有线程B打印a~z的字符交替 执行打印出:12a 34b 56c 78d .... 5152zpublic class MyThread { private static int value1=1; private static char value2='a'; private static boolean flag = false...原创 2019-11-26 20:54:07 · 185 阅读 · 0 评论 -
关于HashMap常见面试考点(底层原理+扩容机制)
问:简单说说 HashMap 的底层原理?答:当我们往 HashMap 中 put 元素时,先根据 key 的 hash 值得到这个 Entry 元素在数组中的位置(即下标),然后把这个 Entry 元素放到对应的位置中,如果这个 Entry 元素所在的位子上已经存放有其他元素就在同一个位子上的 Entry 元素以链表的形式存放,新加入的放在链头,从 HashMap 中 get Entry ...原创 2019-10-01 18:10:20 · 10253 阅读 · 7 评论 -
Java 关于强引用,软引用,弱引用和虚引用
一、概述:众所周知,Java中是JVM负责内存的分配和回收,这是它的优点(使用方便,程序不用再像使用c那样操心内存),但同时也是它的缺点(不够灵活)。为了解决内存操作不灵活这个问题,可以采用软引用等方法。在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及状态,程序才能使用它。这 就像在日常生活中,从商店购买了某样物品后,如果有...转载 2019-10-01 14:54:09 · 106 阅读 · 0 评论 -
Socket通信聊天小程序(群聊,私聊)
思路:一个客户端类(其中包含成员内部类:处理服务端线程,主要用来接收服务端消息)成员属性:Socket socket;用于连接服务端的socket成员方法:无参构造:初始化Socket,绑定服务端地址和端口号start()方法:接收客户端从控制台输入的用户名和发送的消息,利用PrintWriter流进行包装,将消息发送给服务端,并开启线程类,接收服务端发来的消息。Sev...原创 2019-08-12 16:06:50 · 814 阅读 · 0 评论 -
Java集合框架常见面试题
剖析面试最常见问题之Java基础知识 说说List,Set,Map三者的区别? Arraylist 与 LinkedList 区别? 补充内容:RandomAccess接口 补充内容:双向链表和双向循环链表 ArrayList 与 Vector 区别呢?为什么要用Arraylist取代Vector呢? 说一说 ArrayList 的扩容机制吧 HashMap 和 ...转载 2019-08-01 13:41:19 · 121 阅读 · 0 评论 -
java遍历集合过程中删除元素注意的问题
看下面的代码: 1 2 3 4 5 6 7 8 9 10 11 12 publicstaticvoidmain(String args[]) { List<String> famous =newArrayList<String>(...转载 2019-08-01 13:15:30 · 932 阅读 · 0 评论 -
Java程序员面试笔试宝典
1. 基本概念1.1 Java语言有哪些优点?Java为纯面向对象的语言;平台无关性;Java提供了很多内置的类库;提供了对Web应用开发的支持;具有较好的安全性(数组边界检测和Bytecode检验等)和健壮性(强类型机制、垃圾回收器、异常处理和安全检查机制等);去除了C++语言中难以理解、容易混淆的特性(头文件、指针、结构、单元运算符重载、多重继承等)。1.2 Java与C++有什么...转载 2019-07-30 10:59:05 · 276 阅读 · 0 评论 -
C3P0数据库连接池
一、C3P0数据库 在目前的开发中,C3P0是使用较多的开源数据库连接池之一,它性能高效,支持JDBC定义的规范,扩展性好,可以和Hibernate,Spring等开源框架整合使用,很受开发者欢迎。 C3P0数据库连接池通过核心类ComboPooledDataSource实现DataSource接口,该类支撑着整个连接池的主要功能。它提供了充足的方法来实现对数据库连接池...原创 2019-06-02 18:46:26 · 267 阅读 · 0 评论 -
数据库连接池
一、为什么要使用数据库连接池我们都知道数据库的连接一般都按照:加载数据库驱动,建立数据库连接,执行sql语句,断开数据库连接的步骤来进行。然而,在实际的开发应用中,建立连接是一个费时的活动,每一次请求都要建立一次数据库连接,每次向数据库建立连接的时候都要将Connection对象加载到内存中,若遇到访问量剧增的情况,势必会造成系统资源和时间的大量消耗,严重的甚至会造成服务器的崩溃。而且,对...原创 2019-06-02 15:16:41 · 163 阅读 · 0 评论 -
StatementPreparedStatement的区别
1、statement接口:statement接口用于向数据库发送SQL语句,该接口提供了三种执行SQL语句的方法:boolean execute(String sql):运行语句,返回是否有结果集ResultSet executeQuery(String sql):运行select语句,返回结果集int executeUpdate(String sql):运行insert/up...原创 2019-06-02 14:15:00 · 456 阅读 · 0 评论 -
Java序列化和反序列化
序列化和反序列化序列化:将Java对象转化为二进制字节流反序列化:将二进制字节流转化为Java对象序列化的用途:1.对象序列化在一定程度上可以替换数据库实现数据的持久化存储,将数据存储到硬盘上,放在一个文件上。(但是不能完全取代数据库,因为它缺乏一定的安全性,一旦序列化生成的文件被不小心修改或者删除,则无法将文件内容还原为Java对象)2.对象序列化实现了跨虚拟机传递对象只有实现了S...原创 2019-03-13 19:27:11 · 202 阅读 · 0 评论 -
Java多线程同步处理 售票问题------加锁
总共有100张票这些票在3个窗口售出如何防止多个用户买到同一张票的问题呢?Java可以通过同步块或同步方法来处理,使用synchronized关键字加锁,这样当一个窗口在卖某张票时,剩下的几个窗口无法访问,就只能进入等待队列,当该窗口将票卖出后,又逐个进入就绪态开始卖票。下面是代码:package cn.ma;class SellTicket implements Runnable{...原创 2019-02-27 18:55:51 · 1674 阅读 · 6 评论