
JavaSE
文章平均质量分 83
恒奇恒毅
Javaer
展开
-
J.U.C:线程基本概念
线程基本概念原创 2022-06-08 20:26:28 · 280 阅读 · 0 评论 -
String的长度问题
String的长度问题转载 2022-05-06 17:44:15 · 261 阅读 · 0 评论 -
类的加载与类加载器
# 类的加载概述 我们编写的“.java”扩展名的源代码文件中存储着要执行的程序逻辑,这些文件需要经过java编译器编译成“.class”文件,".class"文件中存放着编译后虚拟机指令的二进制信息。当需要用到某个类时,虚拟机将会加载它,并在内存中创建对应的class对象,这个过程称之为类的加载。一个类的生命周期从类被加载、连接和初始化开始,只有在虚拟机内存中,我们的java程序才可以使用它。整个过程如下图所示:**而存在的(“拉转载 2021-05-19 19:13:42 · 649 阅读 · 0 评论 -
Java的编码与解码
编码与解码感谢黑马程序员老师深入细致的讲解什么是编码与解码电脑是由电路板组成,电路板里面集成了无数的电阻和电容, 交流电经过电容的时候,电压比较低 记为低电平 ,用0表示,交流电流过电阻的时候,电压比较高,记为高电平,用1来表示; 所以每一个1 和0 在计算机中被称为 位,也就是bit位。然而,如果使用一个位来表示计算机中的最小存储单元, 那么这个存储单元只能存储0或者1,存储的范围太小了,所以规定用8个bit位为一组 来表示 计算机的最小存储单元-byte 字节。 8个位 每个位上能存储0或者原创 2021-05-06 17:14:39 · 373 阅读 · 0 评论 -
使用CompletableFuture异步同时执行多个耗时操作
在一个业务代码中,一个接口中需要调用10个接口来获取必要的数据,数据放置于一个Map返回。伪代码如下:Map<String,Object> result = new HashMap<>();method01(result,params01);method02(result,params02);method03(result,params03);method04(result,params04);method05(result,params05);method0原创 2020-08-26 10:46:19 · 4407 阅读 · 3 评论 -
wait、notify、join和保护性暂停模式
wait和notify是Object的方法,前者用于让运行的线程阻塞进入TIMED_WAITING模式,后者用于通知相同锁对象阻塞的线程继续运行。一般地使用模式为:Object lock = new Object();function1(){ syncronized(lock){ while(条件不满足){ lock.wait(); } TODO other things... }}function2(原创 2020-07-18 21:46:15 · 317 阅读 · 0 评论 -
List遍历的正确方式
对于List一般有两种实现方式,一种基于数组,如ArrayList;一种基于链表,如LinkedList。查看其类定义,有一个非常明显的区别,就是ArrayList实现了一个特殊的接口RandomAccess。该接口是一个标记接口,指示集合类是否具备随机访问能力,什么是随机访问能力呢,就是get(i)的时间复杂度。如果实现了RandomAccess接口,get(i)的时间复杂度一般就很小,遍历的时...原创 2020-04-17 10:27:57 · 328 阅读 · 2 评论 -
关于Java.clone方法和Cloneable接口
关于Cloneable和clone方法的认识: 1.Cloneable接口是一个标记接口,没有clone方法,clone方法是在Object类中的,并且是protected的 2.一般地需要实现Cloneable和重写clone方法,并将修饰符改为public 3.如果没有实现Cloneable接口,调用clone方法就会抛出CloneNotSupportedException异常...原创 2020-02-17 21:11:56 · 454 阅读 · 0 评论 -
切面定义可配置化及重复注解
项目https://gitee.com/xxssyyyyssxx/validation在这两个方面进行了探讨。1.切面自定义一般地,切面都是这样定义的,由于@Pointcut无法通过${}注入,所以这个类很难框架化,都需要在业务方法中写,比较麻烦,下面记录一种可以配置此值的方式。@Aspect@Componentclass ParamValidateAspect implemen...原创 2020-02-10 21:08:54 · 729 阅读 · 0 评论 -
Reflection:一个反射工具包ReflectionUtils
/** * 反射的 Utils 函数集合 * 提供访问私有变量, 获取泛型类型 Class, 提取集合中元素属性等 Utils 函数 * @author Administrator * */public class ReflectionUtils { /** * 通过反射, 获得定义 Class 时声明的父类的泛型参数的类型转载 2015-11-03 12:19:22 · 5205 阅读 · 1 评论 -
JDBC:DAO(一)JDBCTools工具类
/** * JDBC 的工具类 * * 其中包含: 获取数据库连接, 关闭数据库资源,事务处理的等方法. */public class JDBCTools { //处理数据库事务的 //提交事务 public static void commit(Connection connection){ if(connection !=转载 2015-11-03 12:25:43 · 459 阅读 · 1 评论 -
JDBC:调用函数&存储过程
在JDBC中,通过CallableStatement实现调用函数或者存储过程/** * 如何使用 JDBC 调用存储在数据库中的函数或存储过程 */ @Test public void testCallableStatment() { Connection connection = null; Callab转载 2015-11-03 12:48:00 · 3342 阅读 · 0 评论 -
JDBC:数据库事务处理
•在数据库中,所谓事务是指一组逻辑操作单元,使数据从一种状态变换到另一种状态。•为确保数据库中数据的一致性,数据的操纵应当是离散的成组的逻辑单元:当它全部完成时,数据的一致性可以保持,而当这个单元中的一部分操作失败,整个事务应全部视为错误,所有从起始点以后的操作应全部回退到开始状态。•事务的操作:先定义开始一个事务,然后对数据作修改操作,这时如果提交(COMMIT),这些修改就永久地保转载 2015-11-03 11:11:00 · 834 阅读 · 0 评论 -
JDBC:数据库分页语句
•在编写Web应用程序等系统时,会涉及到与数据库的交互,如果数据库中数据量很大的话,一次检索所有的记录,会占用系统很大的资源,因此常常采用分页语句:需要多少数据就只从数据库中取多少条记录。以下是SqlServer,Oracle和MySQL的分页语句(从数据库表中的第M条数据开始取N条记录):MYSQL •Mysql数据库最简单,是利用mySQL的LIMIT函数,LIMIT [o转载 2015-11-03 12:49:54 · 535 阅读 · 0 评论 -
JDBC:Spring框架中JDBCTemplate的使用
JdbcTemplate主要提供以下五类方法:execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句;update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法用于执行批处理相关语句;query方法及queryForXXX方法:用于执行查询相关语句;call方法:用于执行存储过程、函数转载 2015-11-03 15:09:05 · 380 阅读 · 0 评论 -
JDBC:DAO(三)利用queryRunner实现一个较好的DAO架构
/** * 访问数据的 DAO 接口. * 里边定义好访问数据表的各种方法 * @param T: DAO 处理的实体类的类型. */public interface DAO { /** * 批量处理的方法 * @param connection * @param sql * @param args: 填充占位符转载 2015-11-03 12:39:24 · 1330 阅读 · 0 评论 -
JDBC:DAO(二)DAO实现增删改查(CRUD)
public class DAO { // INSERT, UPDATE, DELETE 操作都可以包含在其中 public void update(String sql, Object... args) { Connection connection = null; PreparedStatement preparedStatement转载 2015-11-03 12:33:28 · 706 阅读 · 0 评论 -
计算机编码荒漠拾遗
字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识。1. ASCII码我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到1转载 2015-11-04 08:07:11 · 360 阅读 · 1 评论 -
JDBC:参数化SQL
数据库AccessMySQLOracle SQL语句select * from UserInfo where sex=? and age>?select * from UserInfo where sex=?sex and age>?ageselect * from UserInfo where sex=:sex and age>:age转载 2015-11-03 16:01:28 · 4692 阅读 · 0 评论 -
JDBC:LOB---BLOB、CLOB
Oracle LOB•LOB,即LargeObjects(大对象),是用来存储大量的二进制和文本数据的一种数据类型(一个LOB字段可存储可多达4GB的数据)。•LOB 分为两种类型:内部LOB和外部LOB。–内部LOB 将数据以字节流的形式存储在数据库的内部。因而,内部LOB的许多操作都可以参与事务,也可以像处理普通数据一样对其进行备份和恢复操作。转载 2015-11-03 11:06:36 · 453 阅读 · 0 评论 -
Java系列一些小计
Java基础视频 张孝祥JAVA视频教程完整版RMVB东西网历经5年锤炼史上最适合初学者入门的Java基础视频传智播客张孝祥2010年贺岁视频Java高新技术传智播客Java多线程与并发库高级应用传智播客尚学堂JAVA视频下载大全持续更新中请关注尚学堂动力节点王勇JAVA系列视频教程东西网张孝祥Java高新技术学习资料网Java视频教程最适合Java初学者的经典入门视频传智播客马士兵 JAVA J转载 2015-11-03 16:04:54 · 1307 阅读 · 1 评论 -
JavaSE:JavaSE大纲
转载 2015-11-06 10:30:54 · 589 阅读 · 1 评论 -
JasperReport:几个莫名其妙的问题的解决
JasperReport各种莫名奇妙问题的解决JasperReportC/S报表struts2struts2-jasperreport-plugin也许你不曾遇到如题问题,那恭喜你,但你是否会疑惑为何我没有遇到而你们却遇到这种问题呢,我们可都是应用的struts2框架哦!!!是啊,为什么呢?有兴趣的不妨看看这篇博文http://peterliuye.javaeye.com...原创 2019-07-27 20:01:10 · 7399 阅读 · 3 评论 -
Java:Java2D高级绘图
Java 2D高级绘图知识要点: 第一节 Java 2D的增强功能 概述、AWT图形能力的不足、Java 2D API 第二节 图形绘制的基本方法 转换Graphics2D对象、Graphics 类特性、绘图的属性和基本编程方法 第三节 曲线问题的高级应用开发 直线问题深入研究、贝塞尔(Bezier)曲线、自定义样条曲线编程、 用户原创 2015-11-09 10:17:13 · 4799 阅读 · 1 评论 -
Java:Java程序员进阶
Java进阶路线图,你到哪一步了?转载 2015-11-09 10:07:11 · 699 阅读 · 1 评论 -
Java:JfreeChart一些重要的函数
*/ class DataGenerator extends Timer implements ActionListener { private static final long serialVersionUID =3977867288743720505L; public void actionPerformed(ActionEventactionevent) { cpuValu原创 2015-11-09 10:20:13 · 804 阅读 · 0 评论 -
曹胜欢,java那些事儿
java那些事:csh624366188.每天一篇java相关的文章http://blog.youkuaiyun.com/csh624366188/article/list转载 2015-11-12 12:18:42 · 820 阅读 · 1 评论 -
WebService:常用的API
API集市原创 2015-11-06 10:38:51 · 1239 阅读 · 1 评论 -
设计模式之创建模式
模式定义: 创建复杂产品交给具体的工厂,指导者角色总的入口。遵循原则: 分步骤创建复杂的对象; 构建和表示相分离; 单一职责原则。适用场合: (1)当产品内部具有比较复杂的内部结构的时候; (2)当复杂产品需要与表现相分离,可能需要不同的表现时; (3)当需要向客户原创 2015-12-10 12:58:23 · 300 阅读 · 0 评论 -
设计模式之代理模式
静态代理public interface IRedWine { public void product(); public void sell();}public class RedWineFactory implements IRedWine { @Override public void product() { Sy原创 2015-12-10 13:28:18 · 240 阅读 · 0 评论 -
设计模式之责任链模式
模式定义: 责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家 的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。 发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影 响客户端的情况下动态地重新组织和分配责任。责任链可能是一条直线、一个原创 2015-12-10 13:37:01 · 256 阅读 · 0 评论 -
设计模式之中介模式
模式定义: 用一个中介对象来封装一系列对象之间的交互,使各个对象中不需要显式地 引用其他对象实例,从而降低对象之间的耦合度,并且可以独立地改变对象 之间的交互关系。中介拥有各个对象的引用,对象与对象通信通过中介的转达。遵循原则: 集中控制,提高类的复用性; 将一对多的复杂关系转换成一对一的简单关系。使原创 2015-12-10 13:53:28 · 318 阅读 · 0 评论 -
设计模式之备忘录模式
/** * 备忘录 * @author 熊诗言 * */public class Memento { private int blood; private int sword; public Memento(int blood, int sword) { this.blood = blood; thi原创 2015-12-10 13:56:59 · 257 阅读 · 0 评论 -
设计模式之观察者模式
public interface IObserver { public void update(IObserverable observerable);}public class PersonObserver implements IObserver { @Override public void update(IObserverable observer原创 2015-12-10 13:59:12 · 243 阅读 · 0 评论 -
设计模式之状态模式
public class Context { public final static int PREVIEW_MODE = 0; public final static int EDIT_MODE = 1; private IState currentState; public void changeState(IState state) {原创 2015-12-10 14:01:49 · 313 阅读 · 0 评论 -
设计模式之策略模式
public interface IStrategy { public double realPrice(double consumePrice);}public class PromotionalStrategy implements IStrategy { @Override public double realPrice(double consu原创 2015-12-10 14:04:45 · 271 阅读 · 0 评论 -
设计模式之模板方法模式
ClassLoader就是模板方法模式,我的微信公众号也使用了模板方法模式算法框架已经搭建好,你只需要实现你不一样的东西就可以了。public abstract class AbstractPeople { private void getUp(){ System.out.println("起床了"); } protected abstr原创 2015-12-10 14:06:42 · 323 阅读 · 0 评论 -
MySQL:数据表的基本操作
【例4.1】创建员工表tb_emp1。首先创建数据库,SQL语句如下:CREATE DATABASE test_db;选择创建表的数据库,SQL语句如下:USE test_db;创建tb_emp1表,SQL语句为:CREATE TABLE tb_emp1(id INT(11),name VARCHAR(25),deptId INT(11),转载 2015-11-18 12:08:02 · 688 阅读 · 1 评论