java基础
文章平均质量分 83
程序猿的玻璃心
这个作者很懒,什么都没留下…
展开
-
Java的23个设计模式(ChatGPT)
Java中的23个设计模式是经典的面向对象设计模式,它们为Java程序员提供了许多可重用的解决方案。当你在开发Java应用程序时,你应该熟悉这些模式,并选择适当的模式来解决问题。这些模式分为三种类型:创建型模式、结构型模式和行为型模式。每种模式都有其独特的用途和特点。在实践中,你可以将多个模式结合起来使用,以满足你的具体需求。最后,要注意不要过度使用设计模式。在某些情况下,它们可能会增加代码的复杂性和不必要的开销。因此,你应该仔细考虑每个模式的适用性,并选择最佳的解决方案。原创 2023-02-23 19:45:55 · 1803 阅读 · 1 评论 -
WeakReference(内存泄漏的时候使用)
WeakReference是什么: 先不看官方doc,让我们举个例子: 对象a非常的消耗内存,我有一个WeakReference对象(wra),并且和对象a关联:(wra & a are good friends) 那么,在虚拟机看来是什么样子呢:wra对象不是个垃圾,但是和wra对象相关联的对象(对象a)被认为是垃圾 是的,垃圾就是垃圾,但是:垃圾并不会立刻被清理 也就意味着:...转载 2018-07-02 17:40:37 · 1525 阅读 · 0 评论 -
FastJson与Jackson对比
以前一直用FastJson,最近一个项目里,由于引入的第三方包里导过fastjson,如果再次引用会导致重包,很尴尬,我就用Jackson。 json字符串中,如果key的字母是大写,Jackson好像不能解析成功。Fastjson没问题。 下面是我的demo maven中导包 dependency> groupId>com.fasterxml.jackson.c原创 2018-02-03 17:06:06 · 7494 阅读 · 1 评论 -
Maven开发
基于上次使用springMvc+mybatis+maven开发的接口,居然一点笔记都没写,这次好好把使用方法补上。 1,使用MyBatis Generator 要先把下面第三步的mysql安装好,这步才能做。 这其实就是一个jar包,作用是通过这个包可以依照数据库中表生成mybatis中的mapping,dao,model等文件。 具体使用方法: 先下载MyBatis Generato原创 2018-01-11 18:38:48 · 270 阅读 · 0 评论 -
Java 递归结束
需求: 希望递归结束后去更新UI界面。那什么时候才是递归结束呢。网上有人去判断一个固定参数,然后结束,简直莫名其妙,这个固定参数居然是随便乱取的,不科学。 思路: 根据判断i=0,收集size的值。通过i=0,收集到循环的长度,因为每个循环都有i=0的时候,而且都只有唯一一个,根据num能收集到循环总长度。 代码:for (int i = 0; i < ((List)data).size()原创 2017-11-27 17:28:31 · 7472 阅读 · 0 评论 -
Windows安装多个Tomcat服务
主要来源:http://blog.csdn.net/czx2282885707/article/details/50518734 1.下载tomcat解压,并复制三份(用压缩版的不要用安装版的) 2.配置环境变量CATALINA_HOME和CATALINA_BASE 3.改端口 修改文件server.xml,修改3个端口号 <Server port="8005" shutdo原创 2017-12-06 09:08:23 · 2638 阅读 · 1 评论 -
使用Mybatis遇到的错误
问题一、Parameter Maps collection does not contain value for Caused by: java.lang.IllegalArgumentException: Parameter Maps collection does not contain value for com.hman.water.model.RiverCollectorCgDataInf原创 2017-10-13 16:36:48 · 543 阅读 · 0 评论 -
java Socket阻塞问题
一、问题描述 客户端接收消息的时候,如果服务端没有发送数据过来,在读取数据的时候会被阻塞,停在这步不进行下去。reader.read(chars)我调试的时候,发现,socket连接成功,并且在接收线程的地方设置断点的时候可以正常接收到消息,如果不设置断点就无法接收到消息,说明在什么地方被阻塞了。就找到是上面的原因。 二、代码实例 两个线程,输入和输出new Thread(tKeepThrea原创 2017-10-10 10:43:30 · 6344 阅读 · 0 评论 -
MyBatis映射器
1,select a,resultType和resultMap只能使用一个 b,parameterType的几种用法() 2,原创 2017-09-27 20:39:36 · 309 阅读 · 0 评论 -
java生成N位随机数
突然想做一个生产6位或者9位的随机数。 long start = System.currentTimeMillis(); Random rd = new Random(); String[] radmon = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" }; // for(int j = 0; j < 100; j++)原创 2017-04-06 14:44:54 · 5246 阅读 · 0 评论 -
Socket报错
Socket报错,如下:java.net.SocketException: Software caused connection abort: recv failed at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(SocketInputStream.ja原创 2017-03-31 14:39:57 · 1044 阅读 · 0 评论 -
java回调再回首
一、什么是回调? 1、按调用来方式来分类,调用分三类,同步调用,异步调用和回调。 同步好理解,是一种阻塞式调用。 回调是一种双向调用。 而异步是非阻塞式调用。二、回调怎么用?首先创建一个回调接口,让老板得告知干完活如何找到他的方式:留下老板办公室地址:[java] view plaincopy package net.easyway.test; /**原创 2016-03-01 10:12:09 · 390 阅读 · 0 评论 -
同一个Thread启动第二次会报错java.lang.IllegalThreadStateException
先实现Thread代码public class TestThread { public static void main(String[] args) { for (int i = 0; i < 100; i++) { myThread.start(); System.out.println(myThread.getName()原创 2016-07-27 09:43:41 · 12432 阅读 · 2 评论 -
Android的Fragment的学习和使用
学习使用Fragment。1,Fragment是什么?为了让界面可以在平板上更好地展示,Android在3.0版本引入了Fragment(碎片)功能,它非常类似于Activity,可以像 Activity一样包含布局。2,Fragment有什么用?为了满足平板等大屏显示。3,怎么使用Fragment?All subclasses of Fragment must inc原创 2016-11-28 17:44:41 · 275 阅读 · 0 评论 -
判断日期Calendar大小
protected boolean isBefore(String date) { if(date == null) { return false; } Calendar cal = Calendar.getInstance(); SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); Calendar ca原创 2016-10-26 14:57:28 · 8678 阅读 · 0 评论 -
Android Service的学习和总结
1、Service与Acitivity一样,都是从Context里派生出来的,所以均可调用getResources()、getContentResolver()方法。 2、Service中重要的方法: - IBinder onBind(Intent intent),该方法是Service子类必须实现的方法,而且该方法返回一个IBinder对象,应用程序主要通过该对象实现与Service组原创 2016-02-17 17:01:27 · 440 阅读 · 0 评论