自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 setAccessible()方法

有时候我们在当前类需要获取操作另一个类声明为private的成员变量值时,我们需要用到setAccessible()方法。关于setAccessible():Method、Field和Constructor对象都有setAccessible()方法。 setAccessible作用是启动和禁用访问安全检查的开关。 setAccessible()方法需要一个布尔值的参数。 参数值为true则指示反射的对象在使用时抑制Java语言访问检查。 参数值为false则指示反射的对象执行Java语.

2020-12-18 15:59:03 2961 1

原创 Java反射获取类对象的五种方法

Reflection (反射)是Java被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。在使用反射之前最先要做的就是获取到反射的类。下面列举五种获取类对象的方法1.若已知具体的类,通过类的class属性获取(该方法最为安全可靠,程序性能最高)。Class classa = Cats.class;通过类名.class获取2.已知某个类的实例,调用该实例的getClass()方法...

2020-12-08 10:57:31 7536

原创 Java注解(Annotation)

注解(Annotation) Annotation是JDK5.0引入的 Annotation的作用: ~ 不是程序本身,可以对程序作出解释(这点与注释(comment)类似) ~可以被其他程序(编译器)读取 Annotation的格式:注解是以“@注解名”的形式在代码中存在的,还可以添加一些参数值,例:@SuppressWarnings("all") Annotation用在哪里?可以附加在package、class、method、field等上面,相当于给他们添加了额.

2020-11-27 16:52:19 174

原创 ReentrantLock的简单使用与区别

从JDK5.0开始,Java提供了更强大的线程同步机制——通过显式定义同步锁对象来实现同步。在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。java.util.concurrent.locks.Lock接口是控制多个线程对共享资源进行访问的工具。锁提供了对共享资源的独占访问,每次只能有一个线程对Lock对象加锁,线程开始访问共享资源之前应先获得Lock对象。ReentrantLock(可重入锁)类实现了Lock,它拥有与synchroniz

2020-11-18 16:09:05 228 1

原创 插入排序法

插入排序,一般也被称为直接插入排序。插入排序算法是基于某序列已经有序排列的情况下,通过一次插入一个元素的方式按照原有排序方式增加元素。这种比较是从该有序序列的最末端开始执行,即要插入序列中的元素最先和有序序列中最大的元素比较,若其大于该最大元素,则可直接插入最大元素的后面即可,否则再向前一位比较查找直至找到应该插入的位置为止。插入排序的基本思想是,每次将1个待排序的记录按其关键字大小插入到前面已经排好序的子序列中,寻找最适当的位置,直至全部记录插入完毕。执行过程中,若遇到和插入元素相等的位置,则将要插人的元

2020-10-19 16:41:14 635

原创 选择排序法

选择排序算法是为每一个位置选择当前最小的元素。选择排序的基本思想是,基于直接选择排序和堆排序这两种基本的简单排序方法。首先从第1个位置开始对全部元素进行选择,选出全部元素中最小的值给该位置,再对第2个位置进行选择,在剩余元素中选择最小的值给该位置即可,以此类推,重复进行“最小元素”的选择,直至完成第(n-1)个位置的元素选择,第n个位置就只剩唯一的最大元素,此时无需再进行选择。public class SelectionSort { public static void main(String

2020-10-09 14:33:16 433

原创 Java用线程休眠模拟龟兔赛跑

众所周知,龟兔赛跑这个故事中塑造了一只骄傲的兔子和一只坚持不懈的小乌龟,也正是因为兔子的骄傲才导致兔子最后输掉了比赛。不知道你们有没有想过这个故事放在我们的代码中该怎么去实现。想要通过代码来还原这个比赛其实并不难。1.创建一个类,该类实现Runnable接口进而实现多线程,即可实现让乌龟与兔子在同一跑道与相同规则下开始。(java中常用的实现多线程的方式有两种1.继承Thread类,重写run方法2.实现Runnable接口,重写run方法。推荐使用Runnable接口实现多线程)2.需要在该类

2020-09-28 15:50:40 458

原创 用Java实现网络资源的下载

下面以获取微软Bing搜索的背景图片为例来用Java实现该背景图片的下载。 在浏览器中打开微软Bing搜索->鼠标右键选择检查->打开Network(网络)界面->找到背景图片对应的网址。记录该网址用于下面代码来下载背景图片。注:第一次打开Network会没有内容显示,因为在打开Network之前页面已经加载完成,刷新页面可以解决这个问题。下面是用Java实现该背景图片下载的代码,具体代码解释均以在注释处说明。import java.io.FileOutp...

2020-09-18 15:30:58 355

原创 Set集合元素的唯一性

HashSet实现Set<E>接口,所以HashSet保证元素唯一性的做法与Set的做法一致,下面用HashSet为例子来说明Set集合是如何确保元素的唯一性的。public static void main(String[] args) { HashSet<Integer> integers = new HashSet<>(); integers.add(1); integers.add(2); i...

2020-09-08 16:41:40 1719

原创 AOP切入点表达式

在面向切面编程中(AOP),往往最先要做的事是配置切入点,官方文档中的切入点表达式如下所示:语法:指示符(访问修饰符(可选) 返回值类型(必须) 包名类名(可选) 方法(必须) 参数)execution(modifiers-pattern? ret-type-pattern declaring-type-pattern?name-pattern(param-pattern) throws-pattern?) 例如execution (public * com.ljb.servic...

2020-09-04 15:16:24 1462

原创 JAVA可变参数

Java可变参数是JDK1.5版本的新特性,在JDK1.5之后,Java允许定义形参长度可变的参数从而允许为方法指定数量不确定的形参。也就是说如果用户想定义一个方法,但是在定义这个方法之前并不知道后面使用这个方法的时候会传几个参数进去,在方法的参数列表中写参数类型或者数组名,然后在方法内部用操作数组的方式操作该可变参数。可变参数(Varargs)的简单语法格式为:methodName([argumentList], dataType... argumentName);下面用一个比较参..

2020-08-28 16:16:59 157

原创 JS的setTimeout计时器

使用JavaScript可以使我们做到在一个设定的时间间隔之后再来执行相应的代码,而不是在函数被调用后就立即执行,这个功能就是 JavaScript中的计时事件。而要使用计时事件就需要用到JavaScript中的一个计时事件方法setTimeout,该方法可以使代码在未来的某个时间执行。setTimeout方法需要用到两个参数,第一个参数是含有 JavaScript 语句的字符串。这个语句可以...

2019-08-17 21:30:32 490

原创 C#实现文件下载

这里写个用C#来做文件下载的功能,功能如下图所示,用户点击模板下载按钮后弹出新建下载任务的弹框进行文件的下载。HTML代码:<div class="row setPadding"> <div class="col-lg-6 col-md-6 col-sm-6 text-left"> <button class="btn bt...

2019-08-14 16:58:26 1746

原创 判断选择文件类型的技巧

开发过程中偶尔会遇到一些信息是无法用文本框或者是下拉框来进行信息输入的,比如一些短视频、图片、word文档或者excel表格等等,对于这些文件型的文件就需要用到与之对应的<input>标签类型才能进行选择,<input> 标签的 type="file" 属性规定了应该把输入作为文件来处理。但是允许用户上传文件是一个巨大的安全风险,所以在允许用户上传文件的时候需要对用户上传的...

2019-08-07 17:07:29 895

原创 C#联想下拉框

通常在做项目的时候需要考虑用户操作简单、使用方便、效率高等等问题,而要达到这些效果就需要在代码或者逻辑上面下点功夫。文本框是最常用也是最基础的,文本框的输入就会存在效率问题,对于一些需要输入的数据是已知的文本框,就可以通过联想下拉框来提高输入的效率。文本框用上联想下拉框就可以在输入的时候显示与输入相符的信息显示在下拉框内供用户选择,联想下拉框的效果图如下:插件:<link hr...

2019-08-07 17:04:57 597

原创 冒泡排序法

冒泡排序法是一种较为简单的排序算法。它反复地遍历要排序的元素,依次比较两个相邻的元素,比较两个相邻的元素后根据比较的方式把他们交换过来。反复地遍历要排序的元素直到没有相邻元素可以交换,这时候就已经排序完成。这个算法在运行的时候会把两个相邻的元素大的或者小的往一端移动,就像在水里的泡泡一样,在水下往上面冒出来一样,故而取名叫冒泡排序法。下面举一个用Java做的冒泡排序法的例子:...

2019-07-28 20:14:24 180

原创 用FluentScheduler做定时任务

FluentScheduler是一个简单好用的任务调度框架,FluentScheduler提供了一个类库还有任务调度的基本功能,同时又没有依赖项,适用于各种.net框架。用FluentScheduler可以实现一些简单的定时任务。1)从NuGet程序包中搜索下载FluentScheduler。2)创建一个用来做定时任务的类,这个类要引用FluentScheduler的命名空间(u...

2019-07-28 20:10:22 946

原创 单用户模式打开SQL Server

SQL Server数据库登录的时候提供了两种登录方式,一种是Windows身份验证登录,另一种是SQL Server身份验证登录。Windows身份验证登录无需账号密码直接就可以登录,SQL Server身份验证登录就需要账号密码才可以登录。有时候会存在Windows身份验证登录被禁用无法登录同时用SQL Server身份验证登录又忘记密码的情况,对于这种情况就可以设置单用户模式来打开数据库。...

2019-07-16 09:28:11 674

原创 将数据保存在Web.config中及从中取数据

项目完成之后发布到IIS发现有些数据是需要改动的,而这个数据在发布的时候就已经是封装了的,对于这种数据可以写到配置文件中。用户使用的时候只要改动配置文件的值就可以用,而不需要在项目中改了之后再发布。例如:IP地址、端口号、账号密码等等。我们可以将这些值写入到web.config配置文件中。然后就可以在控制器中去获取到这个值。 首先在web.config配置文件中的appSe...

2019-07-16 09:24:44 368

原创 Bsgrid表底扩展属性

jQueryBsgrid插件的特点是简单、轻量,基于jQuery及HTML Table。jQueryBsgrid插件内置有多套表格皮肤与很多实用便捷的功能,其中这里要讲的就是实用功能里的表底聚合功能。 表底聚合功能通俗的说就是将表格上已有的内容在表格的底部进行汇总,比如上图所示的合计,将表中对应列的金额求和后显示出来。jQueryBsgrid插件里的表底聚合功能简单易用且代码量小。...

2019-07-07 17:07:10 323

原创 导入新旧版Excel表格的共用代码

导入Excel表格需要用到NPOI,而旧版的NPOI只支持导入xls格式的Excel表格,这时候就是需要先把NPOI更新至最新的版本。鼠标右键点击项目名称,选择管理解决方案的NuGet程序包。 打开NuGet程序包管理器之后在搜索栏输入NPOI进行搜索,点击NPOI右边会有个安装的按钮,如果已经安装过的显示的就是卸载的按钮,然后点击安装进行NPOI的安装。...

2019-06-28 09:32:54 304

原创 final修饰符

final从字面上的意思理解就是最终的、终态的,常用于修饰内部类,同时JAVA中的String类就是被final修饰符所修饰的一个final类。在JAVA中,final修饰符可以用来修饰变量(成员变量与局部变量)、方法、类。1)修饰变量成员变量:用final修饰的成员变量表示常量,即只能被赋值一次,赋值之后值将不能再被改变。final修饰成员变量需要初始化,可以在声明变量的时候就进行...

2019-06-28 09:29:37 195

原创 JAVA用bsgrid绑定表格

jQuery.bsgrid是一个轻量强大易用的jQuery Grid控件,支持json、xml数据格式,皮肤丰富并且容易定制,支持表格编辑、本地数据、导出参数构建等实用便捷的功能,容易扩展,更拥有丰富的示例以及问题反馈的及时响应。 Bsgrid功能的强大显而易见,那么在JAVA中该如何用bsgrid来绑定表格呢? 在JAVA中用bsgrid绑定表格首先需要把JSP页面的表格样式...

2019-06-17 08:33:59 305

原创 JDBC中SQL语句条件查询的技巧

这里讲的这些条件查询的技巧主要是应对某些特定的情况,例如页面在加载的时候只需要查询出全部的内容然后再绑定显示出来,但是又允许用户选择不同的条件来对这些内容进行筛选显示,这种情况下就可以用到下面要讲的条件查询技巧来解决。1)整型String findData = "SELECT * FROM table ";if (id>0) { StrBuilder build...

2019-06-17 08:24:56 2957

原创 JAVA封装下拉框绑定的方法

在写封装方法之前需要准备好要用到实体类。创建一个名叫SelectVo的实体类,同时声明两个变量id与name用来接收需要用于绑定下拉框的选中值与显示值。public class SelectVo implements Serializable { public Integer id; public String name; public Integer getI...

2019-06-08 17:57:11 558 1

原创 JAVA中的“Razor引擎”

在ASP.NETMVC3中引入了一种新的名为Razor的视图引擎,Razor引擎的语法简单清晰,可以最小化输入,。使用Razor引擎可以让我们在HTML页面标签里面编写代码,Razor引擎应用得当可以大大的减少代码量。Razor引擎在MVC中的用处广泛,它能做的事情很多,例如给页面绑定个简单的下拉框。<div class="col-lg-6 col-md-6 col-sm-6 t...

2019-06-08 17:53:45 733

原创 查询存储过程报错TDS协议流无效

用JDBC连接SQL数据库,同时查询多个存储过程时报TDS协议流无效的异常与下图中用JDBC连接mysql数据库,同时查询多个存储过程报的Operation not allowed after ResultSet closed异常是一样。存储过程的执行结果是按照特定格式放在ResultSet里解析的,这个格式就是查询结果的格式。如果存储过程执行时遇见它的查询操作被其他进程占用时...

2019-06-08 17:51:03 3122

原创 Java数组

对于编程语言来说数组是众多重要的数据结构中的一种。在Java中,数组用来存储固定大小的同类型数据。1)声明数组在使用数组之前需要先声明数组变量才能够使用数组。Java声明数组有两种写法。第一种:dataType[] arrayName;第二种:dataType arrayName[];dataType指定声明的数组是什么类型,byte[]类型、int[]类型、long[]...

2019-05-27 09:00:51 119

原创 Java用反射获取与设置成员变量的值

我们在编程的过程中经常会涉及到数据的存取,很多时候我们需要从另一个类中获取数据,而这些类之间可能还没有任何的联系。对于这种情况,就可以用反射来解决。JAVA语言的反射机制在运行状态中,对于任意一个类,都能够获取到这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性,包括私有的方法和属性。在这个名叫Data的类里面准备了四个变量,并且都已经赋上了值。同时又使用了p...

2019-05-27 08:59:29 4330 2

原创 Java基本数据类型

Java有八种基本数据类型,这八种基本数据类型可以分为三类,数值类型(byte、short、int、long、float、double)、字符类型(char)、布尔类型(boolean)。数值类型又可以分为两类,整数类型(byte、short、int、long)和(浮点类型float、double)。一、基本数据类型1)数值类型(byte、short、int、long、float、d...

2019-05-17 08:20:30 317

原创 Java运算符

JAVA中的运算符大致分为五种:算术运算符、关系运算符、逻辑运算符、赋值运算符和其他运算符。一、算术运算符加法(+):运算符两侧的值相加;减法(-):左操作数减去右操作数;乘法(*):相乘操作符两侧的值;除法(/):左操作数除以右操作数;取余(%):左操作数除以右操作数的余数;自增(++):操作数的值增加1;自减(--):操作数的值减少1;+ :用在数值类...

2019-05-17 08:16:36 134

原创 Oracle权限

权限是Oracle的主要组成之一。Oracle的权限分为系统权限和对象权限,拥有系统权限的用户就可以对数据库进行操作,拥有对象权限的用户只能操作该对象权限允许的操作。Oracle中有一百多种有效的权限。系统权限:允许用户执行特定的数据库动作,如创建表、创建索引、连接实例等一、创建用户系统管理员可以创建新的用户。语法:CREATE USER (用户名) IDENTIFIED ...

2019-05-07 20:28:26 428

原创 Oracle表的数据处理

SQL语句主要分为三个类别。DDL(Data Definition Languages)数据定义语言、DCL(Data Control Language)数据控制语句和DML(Data Manipulation Language)数据操纵语句。其中DML用于添加、修改和删除数据库记录,常用的语句关键字主要包括INSERT、UPDATE和DELETE。COPYEMP表:INS...

2019-05-06 19:35:31 214

原创 OracleSET运算符

SET操作符可以将多个查询组合成一个新的查询。在使用SET操作符时,特别需要注意的是查询的两个集合字段要互相对应,即数量和数据类型要相互对应。SET操作符有UNION、UNION ALL、INTERSECT、MINUS。查询出来的结果默认排序顺序是升序排序,可以用ORDER BY改变排序方式,而且ORDER BY语句只能出现在最后。NUMONE表与NUMTWO表:一、UNI...

2019-05-06 18:34:04 476

原创 Oracle创建与管理表

表是数据库对象,数据库中存储数据都需要依赖于表,表由行和列组成。数据库中的表分为两种,一种是Oracle自动创建的表,另一种是用户自己创建的表。 在PLSQL中可以通过SELECT * FROM USER_TABLES来查询用户自己创建的所有表以及这些表的属性。1)命名规范 在日常生活中,我们对于新的事物都会给其起个名字。数据库的表也不例外,在创建一个表之前也要先...

2019-04-27 08:05:44 195

原创 窗体控件获取拖拽文件的路径

首先新建一个项目,选择Windows窗体应用。新建完成进去之后可以把窗体大小调小,这里只需要接受拖拽的文件数据,不需要其他的操作。然后在窗体里面点击鼠标右键再点属性,在属性窗口最上面选择事件(闪电图标),往下拉会有一栏是拖放,这里选择DragOver事件(将对象拖过控件的边界时发生),然后创建事件。在DragOver事件后面给事件命名Drag之后按回车键就会跳转到系统自动生成的事件...

2019-04-27 08:01:36 2649

原创 Oracle子查询

在SQL语言中,由SELECT-FROM-WHERE组成的语句称为查询块。当需要获得一个未知的但又在数据库中存在的值时,将一个查询块嵌套在另一个查询块的WHERE子句的条件中的查询块称为子查询。子查询中还可以嵌套子查询。子查询的结果可以是一个值也可以是多个值。学生表(STUDENT):1)子查询 学生表中有学号(SNO)、姓名(SNAME)、性别(SSEX)、出生...

2019-04-22 21:18:10 465

原创 Oracle分组函数

分组函数简单的说就是一个函数作用于一组数据,并对这组数据进行处理然后返回一个结果值。比如求平均数或者求和就可以用到分组函数求值。常用的分组函数有五个:平均值(AVG)、个数(COUNT)、总和(SUM)、最大值(MAX)、最小值(MIN)。EMPLOYEES表一、组函数 EMPLOYEES表中有记录工资(SALARY)的列。对于工资,也可以说是对于数字,就会有对数字的计...

2019-04-17 08:00:10 1404

原创 Oracle多表查询

多表查询就是将多个表通过指定的字段连接起来。当连接成功后这几张表中的数据就合成一张表,并形成了复合的结果集。基本的连接方式有五种,分别是内连接(inner)、外连接(outer)、自然连接(natural)、交叉连接(cross)和自连接。1)内连接(inner)内连接也叫连接,还可以称为普通连接,是最基本的一种连接。关键字是inner join,一般简写为join。连接还分为两类,...

2019-04-12 14:44:49 228

原创 Oracle单行函数

在SQL语言中有两种SQL函数,分别是单行函数和多行函数。其中单行函数一共分为五类:字符串函数、数字函数、日期函数、转换函数和通用函数。 字符串函数该类函数主要是对字符串进行处理,常用的有:LOWER、UPPER、INITCAP、CONCAT、SUBSTR、LENGTH、INSTR、...

2019-04-03 20:11:48 187

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除