java
菜极的墨墨
这个作者很懒,什么都没留下…
展开
-
java锁样例
reentrantLockimport java.util.concurrent.locks.Condition;import java.util.concurrent.locks.ReentrantLock;public class reentrantLockTest { volatile private static int nextPrintWho = 1; private static ReentrantLock lock = new ReentrantLock();原创 2021-10-14 09:45:08 · 233 阅读 · 0 评论 -
SpringMVC--注解开发
1.新建web项目2.导入相关jar包3.编写web.xml,注册DispatcherServlet4.编写springmvc配置文件5.创建对应控制类,controler6.最后完善前端视图和controller直接的对应7.测试运行调试web.xml<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi=原创 2021-05-21 09:57:40 · 138 阅读 · 0 评论 -
SpringMVC
Spring:IOC + AOPSpringMVC:SpringMVC的执行流程SSM框架整合原创 2021-05-11 21:22:06 · 131 阅读 · 0 评论 -
网络编程
IP对象——InetAddresspackage my.demo;import java.io.IOException;import java.net.*;public class IPdemo { public static void main(String[] args) throws UnknownHostException { //获取本地主机的ip地址对象 InetAddress ip = InetAddress.getLocalHos...原创 2021-03-19 09:11:32 · 115 阅读 · 0 评论 -
GUI
public static void windowsDemo(){ Frame f = new Frame(); int width = 500; int height = 400; f.setSize(width,height);//窗体大小 f.setLocation(400,150);//窗体在桌面显示的位置 f.setBounds(400,200,500,400); f.setLayout(new FlowLayout());//设置流式布局.原创 2021-03-18 16:33:28 · 72 阅读 · 0 评论 -
IO流6(ObjectoutputStream)
public static void writeObj() throws IOException{ ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("print.object")); //对象序列化.被序列化的对象必须实现Serilizable oos.writeObject(new Person("pp", 24)); oos.close(); System.out.原创 2021-03-16 21:23:27 · 100 阅读 · 0 评论 -
IO流5
文件切割/** * 文件切割器 * @throws IOException */public static void splitFile(File file) throws IOException{ //用读取流关联源文件 FileInputStream fis = new FileInputStream(file); //定义一个1M的缓冲区 byte[] buf = new byte[SIZE];//1M //创建目的 FileOutputStr原创 2021-03-15 21:06:34 · 92 阅读 · 0 评论 -
IO流(打印流)
打印流PrintStream/*** PrintStream:* 1.他提供了打印方法可以对多种数据类型值进行打印,并保持数据的表示形式* 2.不抛IOException* 构造函数接受三种类型的值:字符串路径,File对象,字节输出流*/PrintStream out = new PrintStream("print.txt");out.write(609);//只写最低8位 609和97写进去都是aout.print(97);//将97先变成字符保持原样将数据打印到目的地out.c.原创 2021-03-15 10:55:08 · 123 阅读 · 0 评论 -
IO流4(Properties集和)
111原创 2021-03-10 21:34:11 · 208 阅读 · 0 评论 -
IO流3(File对象-构造函数&字段)
构造函数//IO流(File对象-构造函数&字段)//构造函数public static void demo_1(){ //可以将一个已存在或不存在的文件或目录封装成file对象 File file = new File("F:/buf.txt"); File f2 = new File("F://"); File f3 = new File(f2,"F://buf.txt"); File f4 = new File("c:/"+System.getP.原创 2021-03-09 21:14:31 · 119 阅读 · 0 评论 -
IO流2
//读取一个键盘录入,并打印在控制台上/*键盘本身就是一个标准的输入设备对于java而言,对这种输入设备都有对应的对象 */public static void demo_1() throws IOException{ InputStream in = System.in; int ch = in.read();//阻塞式方法 System.out.println(ch); //回车符两个字节 // in.close();不用关,随系统消失而消失}//获取原创 2021-03-02 22:58:28 · 103 阅读 · 0 评论 -
IO流1
FileWriter/***输入流和输出流是相对于内存设备而言* * 字符流的由来:* 字节流读取文字字节数据后,不直接操作而是先查指定的编码表,获取对应的文字。* 再对这个文字进行操作,简单说:字节流+编码表* --------------------------------------* 字节流的两个顶层父类:* 1.InputStream 2.OutputStream* 这些体系的子类都以父类名作为后缀。* 而且子类名的前缀就是该对象的功能。* * 字符流的两个顶层父类.原创 2021-02-25 13:33:55 · 89 阅读 · 0 评论 -
其他对象API(Date+Calendar+System+Runtime+Math)
System类/*** system:类中的方法和属性都是静态的。* 常见方法:* long currenTimeMillies();获取当前时间的毫秒值。*/long l1 = System.currentTimeMillis();System.out.println(l1);//1613828011974long l2 = System.currentTimeMillis();System.out.println(l2-l1);System.out.println(l2/1000/6原创 2021-02-23 16:29:16 · 97 阅读 · 0 评论 -
常用对象API(集和框架--工具类)
对list集和进行指定顺序的排序import java.util.ArrayList;import java.util.Collection;import java.util.Collections;import java.util.Comparator;import java.util.Iterator;import java.util.List;//通过字符串长度进行比较的比较器class ComparatorByLength implements Comparator<Strin原创 2021-02-10 21:56:58 · 98 阅读 · 0 评论 -
常用对象API(集和框架--泛型)
import java.util.ArrayList;import java.util.Iterator;import java.util.TreeSet;/** * 泛型: * jdk1.5出现的安全机制。 * 好处: * 1.将运行时期的问题ClassCastException转到了编译时期。 * 2.避免了强制转换的麻烦。 * <>什么时候用:当操作的引用数据类型不确定的时候。就使用<>。将要操作的引用数据类型传入即可。 * 其原创 2021-02-04 22:50:48 · 110 阅读 · 0 评论 -
常用对象API(集和框架--Map)
import java.util.Collection;import java.util.Comparator;import java.util.Iterator;import java.util.Map;import java.util.Set;import java.util.TreeMap;import java.util.HashMap;/** * Map:一次添加一对元素,Collection一次添加一个元素。 * Map也称为双列集和,Collection集和称为单列原创 2021-02-03 16:46:59 · 155 阅读 · 1 评论 -
常用对象API(集和框架--Collection)
/*集和类的由来: 对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定。 就使用集和容器进行存储。集和特点: 1.用于存储对象的容器。 2.集和的长度是可变的。 3.集和中不可以存储基本数据类型值。集和容器因为内部数据结构不同,有多种具体容器,不断向上抽取,形成集和框架。框架的顶层Collection接口:Collection常见方法: 1.添加 boolean add(Object obj); boole原创 2021-01-28 16:36:56 · 171 阅读 · 0 评论 -
基本数据类型对象包装类
import java.util.Arrays;/*基本数据类型对象包装类。为了方便操作基本数据类型值,将其封装成了对象,在对象中定义了属性和行为丰富了该数据的操作。用于描述该对象的类就称为基本数据类型对象包装类byte Byteshort Shortint Integerlong Longfloat Floatdouble Doublechar Characternoolean Boolean该包装对象主要用于基本类型和字符串之间的转换。 基本类型---&原创 2021-01-27 21:43:22 · 97 阅读 · 1 评论 -
常用对象API(StringBuffer)
StringBuffer常用方法public static void bufferMethodDemo1(){ StringBuffer sb = new StringBuffer(); StringBuffer s1 = sb.append(4).append("s"); s1.insert(1, " hello "); System.out.println(s1==sb);//true System.out.println原创 2021-01-26 10:08:45 · 193 阅读 · 0 评论 -
String类
/*** String类的特点:* 字符串对象一旦被初始化就不会被改变*/String s1 = "abc";//在常量池中创建字符串对象String s2 = new String("abc");//创建两个字符串对象,一个new,一个在堆内存中System.out.println(s1==s2);//比较地址:falseSystem.out.println(s1.equals(s2));//比较内容:true//String类中的equals复写Object中的equals建立了Stri原创 2021-01-23 22:05:51 · 89 阅读 · 0 评论 -
多线程2
线程间通信线程间通信–等待唤醒机制线程间通信–多生产者多消费者问题线程间通信–wait和sleep的区别线程间通信–停止线程方式interrupt线程间通信–守护线程setDaemon原创 2021-01-20 21:37:37 · 95 阅读 · 4 评论 -
多线程1
/** * 进程:正在进行中的程序(直译) * 线程:进程中一个负责程序执行的控制单元(执行路径) * 一个进程中可以多执行路径,称之为多线程 * 一个进程中至少有一个线程 * 开启多个线程是为了同时运行多部份代码。 * 每一个线程都有自己运行的内容。这个内容可以称之为线程要执行的任务。 *///系统垃圾处理/** * 其实应用程序的执行都是cpu在做着快速的切换完成的。这个切换是随机的。 * JVM启动时就启动了多个线程,至少有两个线程可以分析得出来。 * 1.执行main函数的原创 2021-01-18 18:26:36 · 110 阅读 · 2 评论 -
包(package)
明天再写原创 2021-01-14 20:39:08 · 112 阅读 · 0 评论 -
异常
自定义异常/** * 异常:在运行时期发生的不正常的情况 * java用类的形式对不正常情况进行了描述和封装 * 描述不正常的情况的类叫异常类 * 异常分为两大类: * Throwable:都继承自java.lang.Throwable * 1.一般不可处理的,error * 2.可以处理的,exception * Runable: */class exception{ public static void main(String[] args) throw原创 2021-01-13 17:18:59 · 116 阅读 · 1 评论 -
JAVA学习笔记
break和continue//break通过标号跳出循环 da:for(int i=0;i<3;i++) { xiao:for(int j=0;j<3;j++) { System.out.println("j:"+j); if(j==2) { break da;原创 2020-12-22 20:23:46 · 164 阅读 · 0 评论