更多
2021年09月21日 09点53分 作者:叶飞 修改

JDBC:driver(mysql) / Connection / Statement / 参数化 / ResultSet / HikariCP

接口和驱动Java DataBase Connectivity是Java程序访问数据库的标准接口(标准)JDBC接口是Java标准库自带的而具体的JDBC驱动(实现了这些接口的类,jar包)是由数据库厂商提供的MySQL的JDBC驱动由Oracle提供。访问某个具体的数据库,我们还需要引入该厂商提供的JDBC驱动,就可以通过JDBC接口来访问,这样保证了Java程序编写的是一套数据库访问代码,却可以访问各种不同的数据库,因为他们都提供了标准的JDBC驱动:java.sqlJava的标准库演示:里面大部分都 ……

JDBC
2021年09月20日 19点26分 作者:叶飞 修改

J&C:多线程:current / 属性状态 / 异步和并发 / 异常捕获 / 线程安全 / join / 锁 / 池

复习: 进程 / 线程 / 并行 / 并发 同步 / 异步 / 非阻塞 / DMA 理解单线程在此之前,我们的代码都是运行在一个线程中,这被称之为“单线程编程”。这个线程又被称为主(primary)线程,或者启动线程。(我们默认使用的)更具体的说,代码运行在线程的栈(stack)中(复习):一个线程对应着一个栈,这个栈又被称之为线程栈。单个线程中,Java和C#代码都是同步(依次)运行的。PS:为什么强调Java和C#,因为JavaScript是单线程都可以异步的,^_^创建新线程Java和C#运行开 ……

多线程 线程池
2021年09月20日 19点24分 作者:叶飞 修改

Java:多线程:查看堆栈 / FutureTask / 非阻塞 / wait()&notify() / Executor

当前线程使用Thread.currentThread()可以获取:Thread current = Thread.currentThread();然后,可以获取线程的相关信息:System.out.println(current.getId()); //线程IdSystem.out.println(current.getName()); //名字System.out.println(current.getPriority()); //优先级System.out.println(cur ……

java 多线程
2021年09月17日 17点00分 作者:叶飞 修改

Java:JavaMail / properties / log4j

// 获取默认session对象Session session = Session.getDefaultInstance(properties);JavaMail类库下载地址:https://github.com/javaee/javamail/releases除了jar包(复习),还有sample,以及source code,无微不至啊!演示:在eclipse中引入javax.mail.jar包设置SMTP服务器Properties:继承自HashTable用于存放配置//1、连接邮件服务器的参数配置P ……

email 电子邮件 javamail
2021年09月17日 11点05分 作者:叶飞 修改

J&C:Email和短信:SMTP / 服务接口 / 日志log

发送EmailEmail并不能在用户之间直接传递,而是依赖于邮件的:发送服务器(如下图:smtp.163.com)接收服务器(如下图:pop.qq.com)发送方(sender)将email推送给邮件发送服务器。这一过程可以由用户登录邮箱网站完成,或使用其他邮箱软件(如outlook)推送163.com按邮件收件人地址将email推送到qq.com服务器收件方(receiver)从服务器拉取自己的email上述3个过程,1和2都是推送,使用SMTP(Simple Mail Transfer Protoco ……

Java C# email 短信
2021年09月10日 20点07分 作者:叶飞 修改

Java:IO操作:File / Stream / AWT绘图

复习:操作系统:文件FileJava的IO操作包都需要导入:import java.io.*;Java不区分文件(file)和文件夹(directory),即文件夹仍然被当做文件处理(同Linux)实例化一个File类得到File对象,可以在构造函数中指定其文件路径斜杠可以是正斜杠(同Linux),也可以是反斜杠(同Windows)String path = "D:\\sample.txt"; //@想一想@:为什么是两个\\?String path = "D:/sample.txt";如果表示文件 ……

Java IO stream AWT
2021年09月03日 23点29分 作者:叶飞 修改

Java:Stream:filter / forEach / sorted / 聚合 / group / 延迟执行……

概览复习:函数式编程 / 回调函数 / 重用……在Java 8中被引入(类似于但远弱于C#中的Linq),可以通过Lambda完成集合中元素的查询等。List<Person> adults = people.stream().filter(p -> p.Age > 18).collect(Collectors.toList());F3源代码演示: 首先,Collection中定义了stream()默认方法,由此,所有集合(Map先转成Set)都可以转换成Stream;然后,Stre ……

Stream Java8
2021年08月31日 15点57分 作者:叶飞 修改

J&C:集合概述 / 迭代器模式 / ER模型 / 仓储模式

集合概览集合是同一类型元素的组合,本身也是一个类/对象,就像一个容器一样,(可以)装着它的元素。PS:早期的集合元素类型都是Object,但现在我们都使用泛型。(@想一想@:为什么?)数组就是一种集合。除此以外,Java和C#还内置了:存储单个元素的:Collecition,根据其内部元素排列方式(数据结构),又分为:有序的、可以根据下标找到元素的:List(类似于数组,但比数组更强大)无序的、没有下标的、但元素不重复的Set队列Queue存储键值对的:Map/Dictionary。成绩单就是典型的键值 ……

集合 迭代器 设计模式 仓储模式
2021年08月31日 15点54分 作者:叶飞 修改

Java:集合:List / Map / foreach

复习:J&C:集合概述 / 迭代器模式 Java中所有常用集合都在java.util包下,所以可以import java.util.*;ListJava中List本身是一个泛型接口,继承自Collection,最常用的实现类是ArrayList。演示: 除ArrayList以外,还有LinkedList、vector下的Stack List中定义的方法:get()/set()/add()/remove()/indexOf()……ArrayList千万不要忘了初始化!ArrayList<I ……

Java 集合
2021年08月27日 11点10分 作者:叶飞 修改

时间漫谈:时区 / 日历 / 计算机简单粗暴处理

时间是什么?千年虫问题 千禧年前后出生的青少年们或许很少有人知道“千年虫”。大约在 20 世纪 80 年代中期以前投用的系统上,囿于存储空间有限,再加上人们普遍觉得系统更新会很快,所以程序员大多采用两位数来表示年份,比如 06/15/98,而不是 06/15/1998。但是到了 2000 年,系统只知道是 01/01/00,不知道这是 1900 还是 2000。嗯,总有一天,程序员会毁灭地球的。严谨的新闻播报今天是2021年8月27日,农历七月二十当地时间晚8点说明了什么问题?历法:(太)阳历/阴(月亮 ……

日期 时间
关键字



帮助

反馈