Java
这孩子谁懂哈
坚持比努力更可怕/You Reap What You Sow
展开
-
SpringBoot之FirstDemo例子(四)
一、环境准备:JDK安装 可参考https://blog.csdn.net/zhaomengszu/article/details/122018601maven安装 可参考https://blog.csdn.net/zhaomengszu/article/details/122022919Idea安装 可参考https://blog.csdn.net/zhaomengszu/article/details/122023271二、创建Maven项目打开IDEA开发环境选择FILE...原创 2021-12-26 13:47:20 · 1161 阅读 · 0 评论 -
SpringBoot之IDEA安装(三)
1.首选要安装jdk8以上的版本可参考jdk安装文章2.安装maven可参考maven安装3.下载idea安装包社区版(Community):社区版时免费的、开源的,但功能较少,旗舰版(Ultimate):旗舰版提供了较多的功能,是收费的,可以试用30天官网:下载地址现在旗舰版现在要注册账号才可以试用30天,以前的老版本是没有这个的 (伤心)4.下载后解压5.一直next即可一般不用选择6.不管 直接next7.等待安装...原创 2021-12-19 13:57:29 · 2284 阅读 · 0 评论 -
SpringBoot之最新maven安装(二)
1.首先下载maven官网下载地址2.直接解压缩3.配置环境变量配置MAVEN_HOME,路径到maven的安装路径然后在系统变量中PATH添加bin路径4.验证maven是否安装成功使用 mvn -version出现上图即安装成功5.配置下载地址官网的地址由于网速限制,我们配置阿里云的地址找到maven安装目录下的conf→setting文件6.打开setting文件找到mirrors的标签,添加如下阿里云镜像地址...原创 2021-12-19 13:25:57 · 2139 阅读 · 0 评论 -
SpringBoot之最新JDK安装(一)
1.首先安装JDK官网 地址2.点击 product→java3.切换到Java archive4.页面往下滑动5.选择对应的版本6.点击下载(现在需要Oracle账户)对于要注册一堆的事情比较麻烦,找到一个神奇的网站可以提供下载账号使用神奇网站用网站中的账号和密码就可以使用了7.下载的exe文件就直接打开,傻瓜式next8. 其实公共JRE可以不用,但是如果电脑配置还可以 ,留着也无妨9.10.11.配置...原创 2021-12-18 23:15:05 · 1819 阅读 · 0 评论 -
java在项目中用浏览器打开指定的网页
有个需求就是打开一个固定网址package com.demo;import java.io.File;public class OpenPageDemo { public static void main(String[] args) { try { String url = "http://www.csdn.net/"; java.net.URI uri = java.net.URI.create(url); // 获取当前系统桌面扩展 j.原创 2021-05-28 15:12:19 · 5895 阅读 · 0 评论 -
java使用post调取接口
public static String sendSZPost(String url, String params, String secretKey) throws UnsupportedOperationException, IOException { byte[] requestBytes = params.getBytes("utf-8"); // 将参数转为二进制流 HttpClient httpClient = new HttpClient();// 客户端实例化 ..原创 2021-05-28 15:09:15 · 5933 阅读 · 0 评论 -
java一次跳出多重循环
java在跳出循环的时候提供两种方式:break:结束当前循环,接着执行循环下面的代码continue:结束本次循环,继续下一次循环。但是在处理业务逻辑的时候,有可能要跳出多层循环,比如:for (int i = 0; i < 100; i++){ for (int j = 0; j < 10; j++) { System.out.println("双循环代码") //想在这里直接跳出双重循环??? .原创 2021-03-03 18:15:05 · 12989 阅读 · 3 评论 -
Maven项目在编译的时候出现cannot find symbol的错误解决办法
在项目编译的时候出现cannot find symbol的错误,顾名思义就是找不到符号???下面应该是有一个 symbol:class XXXX 这样的一个形式看到这个其实 简单理解就是可能是依赖有问题,找不到某个依赖,如果确保这个依赖是已经有了,或者这个根本就没有别的依赖,我遇到的就是,提示告诉我reslutsetMetadata这个class没有,找不到这个类的符号,但是这个类是确定是不需要再依赖别的依赖类,所以采取的办法就是很粗暴了。简单粗暴地使用“Maven Update Project原创 2020-09-10 14:39:54 · 36417 阅读 · 0 评论 -
java中ResultSet使用next()取不到第一条数据的解决办法
在coding的时候,发现每次使用JDBC连接数据库的时候,使用resultset每次使用next()方法循环取出查询的数据的时候,发现每次用到第一条的数据的时候总是抛出异常,后来debug的时候,才发现每次都是第一条记录是取不到的。后来检查代码的时候,才发现呢,我在每次while(rs.next())的之前使用了if(rs.next())的方法,代码格式如下所示:if(!rs.next()) //结果集为空{ //执行某操作}while(rs.next()){原创 2020-08-16 12:04:41 · 16922 阅读 · 5 评论 -
java中把字符串转成可计算的算术表达式
最近有个需求,就是文件校验类的需求:1.业务部门会提前列出所有参与计算的校验公式,我们相当于根据这些校验公式来不断的取数校验。其中在我们把所有公式替换为对应的数值后,如何才能把这个带数值的字符串转化为一个可以得到计算结果的算术表达式呢?例如:校验公式是20A+21B=22C.经过数值替换后变成:20A是11,21B是12 ,22C是31,那么上述的校验公式就是11+12=31,显然11+12是等于23,所以上述的公式是不成立的。现在就是如何把11+12=31这个字符串表达式转成算是表达原创 2020-08-16 11:55:02 · 15820 阅读 · 0 评论 -
java.lang、java.io、java.net、java.util解释整理
为应对近期单位认证:整理点Java知识首先整理Java常见的类库:1.Java.lang这个算是我们开发经常用到的基础类了,包含的类有object超类,8种类型的包装类,字符串类,线程类,异常类等如下所示:图来自:链接异常处理机制:ThrowableThrowableThrowable是 Java 语言中所有错误或异常的超类。Throwable包含两个子类: Error 和 Exception。它们通常用于指示发生了异常情况。Throwable包含了其线程创建时线程执行.原创 2020-06-26 00:25:44 · 14327 阅读 · 0 评论 -
java使用sql语句中使用like来传参数出现java.util.UnknownFormatConversionException:Conversion=
今天在修改一个很古老项目的时候,有一个需求就是要在sql查询里使用like来传递参数,进行模糊查询。如下所示: sql_Static_person = String.format( "select * from t_info where HD='%s' and (GG='%s' or GG is null) and BS<=1 and ZH='%s' and flag=0 and bz like %s ",aa(), bb(), cc(),dd());其实需求很简单,就原创 2020-06-23 10:56:30 · 11673 阅读 · 0 评论 -
java里使用jsonarray获取值判断null值无效的解决办法
项目需要使用的是net.sf.json.JSONArray的包,没有使用阿里巴巴的JSONArray oo =XXXXX;在需要oo.get()的方法来判断是不是null的时候,遇到了很大的坑,初始的想法就是:if(oo.get(0)==null){....}然后总是结果不是想要的,于是debug发现即使oo.get(0)的值null,程序也不走这个位置,所以这个位置应该不是...原创 2020-03-20 12:43:39 · 12784 阅读 · 0 评论 -
使用js技术在jsp页面实现水印(时间和当前登录用户名)功能
出于安全的考虑,项目需要,需要在jsp的页面显示水印的功能,防止用户信息泄露。在js里获取系统当前时间:function init(){ var date=new Date(); //年 var year=date.getFullYear(); //月 var month=date.getMonth()+1; //日 var day=d...原创 2019-10-24 12:45:23 · 4485 阅读 · 0 评论 -
Java中的接口
Java中没有多重继承的机制,Java的类最多只能从一个父类中继承特性,当然多重继承也有他的优势,他允许一个子类从多个父类中分别继承属性或方法,因此这个子类可以兼容原来多个类的优势,定义子类的时候更具有优势,更加方便,更加高效,Java中 虽然没有多继承的概念,但是他提出了接口的概念,实现了多继承的机制,还有了自己优势。多继承的机制,容易出现很多二义性的问题,例如:设一个子类S继承两个父类P1和P原创 2017-01-15 14:59:26 · 193 阅读 · 0 评论 -
理解java中的反射
就是通过对象来得到类的类类型(class type)以及它所声明的方法啊参数之类的东西。举个例子,通过反射,你可以得到类所声明的方法,可以不用通过这个类的实例对象来执行方法。与反射密切相关的是动态加载,何谓动态加载?就是在运行时才进行加载。而静态加载是在编译的就会进行加载,加载所有可能用到的类。在举个例子,我们经常会遇到软件的升级,这时候就采用的是动态加载,只会把更新的部分进行重新的编译。如果是静原创 2018-01-23 10:20:08 · 214 阅读 · 0 评论 -
java中为什么需要内部类?
首先举一个简单的例子,如果你想实现一个接口,但是这个接口中的一个方法和你构想的这个类中的一个方法的名称,参数相同,你应该怎么办?这时候,你可以建一个内部类实现这个接口。由于内部类对外部类的所有内容都是可访问的,所以这样做可以完成所有你直接实现这个接口的功能。不过你可能要质疑,更改一下方法的不就行了吗?的确,以此作为设计内部类的理由,实在没有说服力。真正的原因是这样的,jav原创 2018-01-15 21:10:05 · 586 阅读 · 0 评论 -
java中length()方法,length属性和size()的方法的区别
1.length()方法是针对字符串来说的,要求一个字符串的长度就要用到它的length()方法; 2.length属性是针对Java中的数组来说的,要求数组的长度可以用其length属性; 3.java中的size()方法是针对泛型集合说的,如果想看这个泛型有多少个元素,就调用此方法来查看!public static void main(String[] args) { String [...原创 2018-02-26 14:08:21 · 1486 阅读 · 0 评论 -
java中工厂模式理解
【http://www.360doc.com/content/11/0824/17/3034429_142983837.shtml】这两天突然想学学java源代码,不过看到一篇文章说看java源代码要先看设计模式,这样更容易理解源代码的结构,所以就准备学学java设计模式,首先当然是看java创建模式的工厂模式了,刚开始直接看抽象工厂模式是什么意思,百度百科的实在是看不懂,后来又在网上看了看其他的...转载 2018-03-08 16:25:33 · 446 阅读 · 0 评论 -
java中反射的理解
java反射机制是运行状态中,对于任意一个类,能够知道这个类的所有属性和方法、对于任意一个对象,都能够调用它的任意一个方法。这种动态获取的信息以及动态调用对象的方法的功能就是java的反射机制。在博客看到的一个特别通俗的解释:那么Java反射有什么作用呢?假如我们有两个程序员,一个程序员在写程序的时候,需要使用第二个程序员所写的类,但第二个程序员并没完成他所写的类。那么第一个程序员的代码能否通过编...原创 2018-03-01 13:23:02 · 2222 阅读 · 0 评论 -
java中成员变量、类变量、局部变量
成员变量:定义在类中,方法体之外。变量在创建对象时实例化。成员变量可被类中的方法、构造方法以及特定类的语句块访问。public class ClassName{ int a; public void printNumber(){ // 其他代码 }}类变量:定义在类中,方法体之外,但必须要有 static 来声明变量类型。静态成员属于整个类,可通过对象名...原创 2018-02-25 20:03:12 · 5918 阅读 · 0 评论 -
java中JVM和JMM之间的区别
最近翻看了java线程相关的东西,书中有一边专门讲到java内存模型,读完之后边回想起java虚拟机模型,那时心中便在思考java内存模型(以下简称jmm)和java虚拟机模型(以下简称jvm)之间的关系,下面将详细讲述。一 jvm结构jvm的内部结构如下图所示,这张图很清楚形象的描绘了整个JVM的内部结构,以及各个部分之间的交互和作用。1 Class Loader(类加载器)就是...转载 2018-05-10 17:09:29 · 28401 阅读 · 3 评论 -
java 中的锁 -- 偏向锁、轻量级锁、自旋锁、重量级锁
转自:https://blog.csdn.net/zqz_zqz/article/details/70233767 1. 单线程下synchronized效率最高(当时感觉它的效率应该是最差才对); 2. AtomicInteger效率最不稳定,不同并发情况下表现不一样:短时间低并发下,效率比synchronized高,有时甚至比LongAdder还高出一点,但是高并发下,性能还不如syn...转载 2018-06-02 16:40:00 · 238 阅读 · 0 评论 -
java中的依赖关系和maven初识
一,什么是java中的依赖关系:依赖关系是指一个类对别一个类的依赖,比如说Employee类中有一个方法叫做TakeMoney(Bank bank)这个方法,在这个方法的参数中用到了Bank这个类,那么这个时候可以说Employee类依赖了Bank这个类,如果Bank这个类发生了变化那么会对Employee这个类造成影响。我们在编写java程序的时候经常会出现这个错误:找不到依赖包。...原创 2019-08-25 13:14:42 · 1742 阅读 · 0 评论 -
java中http请求外部接口的时候传递sql语句过程记录
第一次做这种对接外部(第三方)接口的开发。记录一下:介于保密的原因,外部接口就不公开了。我的需求是根据第三方提供的接口,查询数据。但是我的请求是包含了sql语句的。类似于下面这样的URL:http://X.X.X.X/tb/re?select * from table where name='zhangsan'?前面的是他们提供的接口。后面是我传的sql语句,当然还需要你的用户名密码或...原创 2019-09-29 14:20:55 · 2743 阅读 · 0 评论 -
Java中Socket网络通信原理
Socket的基本概念1.建立连接当需要建立网络连接时,必须有一台机器运行一个程序,随时等候连接,而另一端的程序这对其发出连接请求。这一点同电话系统类似——必须有一方拨打电话,而另一方必须等候电话连通。建立连接的过程为:(1)现在服务器端生成一个ServerSocket实例对象,随时监听客户端的连接请求。(2)当客户端需要连接时,相应地要生成一个Socket实例对象,并发出连接原创 2017-11-14 15:04:02 · 3649 阅读 · 5 评论 -
Java中的泛型思想
一. 泛型概念的提出(为什么需要泛型)?首先,我们看下下面这段简短的代码:public class GenericTest { public static void main(String[] args) { List list = new ArrayList(); list.add("qqyumidi"); list.ad转载 2017-11-14 14:47:54 · 293 阅读 · 0 评论 -
java中两个变量之间交换方法总结
今天刷算法题:一个简单的问题如下:请编写一个函数,函数内不使用任何临时变量,直接交换两个数的值。给定一个int数组AB,其第零个元素和第一个元素为待交换的值,请返回交换后的数组。测试样例:[1,2]返回:[2,1]是不是很简单。。。。。。。。我首先 脑海里想到的解决办法是:import java.util.*;public class Excha原创 2017-11-18 16:25:12 · 1056 阅读 · 0 评论 -
Java中访问私有字段
1.在附加类 里设置 构造函数,接收了main函数里面的实例化传递过来的参数。2.然后设置get和set方法,设置和获取这个值。代码实例:public class data{private String Name;private int Age;private String Address;data(String name,int age,String address){this.Name =n原创 2017-01-15 14:59:45 · 764 阅读 · 0 评论 -
java数据流
InputStream、OutputStream(字节流)、Reader、Writer(字符流)是顶层抽象类。 InputStreamReader和InputStreamWriter,主要是针对字节流,把字节流转化为字符流。read(),write().DataInputStream、DataOutputStream主要针对读写Java的原始类型,包括布尔型、浮点型,这两个类提供了一组特定的方法,原创 2017-01-15 14:59:42 · 467 阅读 · 0 评论 -
java 中的容器
数组是保存同一个类型的数据,不同类型的数据我们使用容器的概念。Java中 提供的容器类 有3种,List、Set和Map;List是有序元素组成的列表,每个元素的插入位置需要准确的控制,程序中可以根据元素的整数索引(在列表中的位置)访问元素,Set具有集合的特性,是一个不包含重复元素的容器,它所包含的元素只允许有一份,并且最多只包含一个null元素,元素之间没有次序的概念。Map保存的是一种对应的原创 2017-01-15 14:59:34 · 228 阅读 · 0 评论 -
java 中的数组
Java语言中规定 要求数组内的各个元素都有相同的数据类型,数组元素在数组中的排列是有顺序的,这种次序是数组的小标。下标是从0 开始。一般的一维数组看做是是一个向量,因为集合是没有次序的概念的,也不允许有重复的元素。使用集合的时候,只需判定一个元素是不是属于某个集合,并不强调这个元素在集合中所处的位置或次序。在数组中,除了需要判定某个元素是否属于某个数组外,还会提到这个元素是数组中的第几个元素,因原创 2017-01-15 14:59:32 · 227 阅读 · 0 评论 -
java 中StringBuffer
StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类。 所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入、删除等操作,使用StringBuffer要更加适合一些。 在StringBu原创 2017-01-15 14:59:29 · 151 阅读 · 0 评论 -
Java中重载和重写的区别
重载 是指在一个类中存在多个同名的方法,如构造方法的重载,有了重载,就可以让一个名字具有多种意思或者用途,意味着操作的多样性,这种机制允许程序员用相同的名字来完成不同的功能,而且这种灵活性是在运行时临时决定的,并不是在编译时决定的。重写是指在子类中对父类或祖先类中方法的全面取代,如果父类中定义的方法不适合子类的要求,则在子类中重新写一个同名的方法,当然参数列表也要与父类中的一致,这样的机制保证正在原创 2017-01-15 14:59:23 · 219 阅读 · 0 评论 -
java中几类权限修饰符的区别
访问权限修饰符有:friendly,public ,private, protected。friendly:这个修饰符也是称为包访问权限,是默认修饰符,如果一个成分前面没有使用任何修饰符,隐含的认为是使用friendly,使用包访问权限限定的成分可以在同一个包内使用,但是对于包外的成员,这个成分是不可见的。也就是不能被包外的成员使用。public:修饰的元素是公有的,意味着它可以被程序中的任何对象原创 2017-01-15 14:59:21 · 588 阅读 · 0 评论 -
Java中的流
首先,流是什么?输入数据流:指的是只能读不能写的数据流,用于从外设向计算机内存传递数据。InputStream主要是指字节(如二进制)传递,提供了read()方法来读取数据,读取的数据默认是字节类型,当输入流结束的时候,方法会读到-1,表示输入过程结束,read()方法不单独使用,常常结合BufferedInputStream(缓冲区数据流),这两个结合起来,读取数据时,以系统允许的最大数据块为单原创 2017-01-15 14:59:13 · 425 阅读 · 0 评论 -
java中static和final
static 可用来描述变量及方法,所描述的变量称为静态变量或类变量。所描述的方法称为类方法。类变量和类方法称为类成员。系统在类定义时即为类成员分配内存,而不是创建实例时才分配。它和类的成员变量,成员方法不同。也就是定义了static后, 两个对象都可以同时使用。静态变量=全局变量。静态方法不能被重写;final 关键字:对于不需要再派生子类的类,可以使用关键字final来修饰,这样的类称为终极类原创 2017-01-15 14:59:10 · 245 阅读 · 0 评论 -
java中的进程和线程
先说程序,所谓程序,是指一段静态代码,它是应用程序执行的脚本,程序的执行过程严格按照这个脚本执行,程序的每一次执行对应一个 进程,这是系统进行资源分配和调度的一个独立单位,进程可以并发,这是它的重要特点。一般的,进程可以分为运行、阻塞、就绪三种状态,并随一定条件进行转换,运行一个程序时,就启动了一个进程,显然程序是静态的,进程是动态的。目前流行的OS上,大部分都支持多任务,也就是多进程的概念,即一原创 2017-01-15 14:58:36 · 352 阅读 · 0 评论 -
Java中继承的执行顺序
首先明白为什么要继承?(1)继承关系是传递的。若类C继承类B,类B继承类A,则类C既有从类B那里继承下来的属性与方法,也有从类A那里继承下来的属性与方法,还可以有自己新定义的属性和方法。继承来的属性和方法尽管是隐式的,但仍是类C的属性和方法。继承是在一些比较一般的类的基础上构造、建立和扩充新类的最有效的手段。 (2)继承简化了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系。 (3原创 2017-01-15 14:59:48 · 1489 阅读 · 0 评论 -
Java中的null和“ ”的区别
null表示还没new出对象,就是还没开辟空间 “”表示new出了对象,但是这个对象装的是空字符串。两者的区别与 “数字0和没有不是同一种概念”是一个道理。null是空对象,""是空字符串null可以赋值给任何对象,而""就不行了,只能赋值给字符串对象如:String s=null;//定义了一个对象实例s,但未将该实例指向任何内存空间String s="";//定义了一个对象实例s,指向了一个空原创 2017-01-15 15:00:20 · 315 阅读 · 0 评论