
Java
同学!认真听
这个作者很懒,什么都没留下…
展开
-
win10配置JDK环境变量
1.安装JDK和JRE注意路径不要有中文和空格(我的路径D:\Java\jdk1.8.0_31)。2.右击我的电脑选择属性。3.选择高级系统设置4.点击高级–>环境变量。5.接下来就开始配置环境变量,注意配置的是系统变量。总共需要配置三个环境变量JAVA_HOME、ClassPath、Path。6.点击新建JAVA_HOME,这里保存的是JDK安装路径,我的路径是D:\J...原创 2019-09-12 11:09:13 · 1342 阅读 · 0 评论 -
url传参时中文乱码转码的两种方式
url传参 中文乱码原创 2022-06-12 22:37:26 · 3644 阅读 · 0 评论 -
java中split方法需要转义的字符
键盘上需要进行转义的大概字符如下:“|.+*^?[\{}()$”测试代码: String str = "|.+*^?[\\{}()$"; String str2 = "1haha*2kk*34kk444*5asas55"; System.out.println(str2.contains("'")); String[] split = str2.split("*"); for (String string转载 2022-01-26 09:48:47 · 1932 阅读 · 0 评论 -
String、StringBuilder和StringBuffer区别及效率
三者使用建议: 少量字符(拼接次数少,且字符串总长度短)串拼接String更快一点,拼接的数据量稍大点(拼接字次数十次左右,总长度大概1000个英文字符),StringBuilder和StringBuffer有差距但不是很大,建议采用StringBuffer,安全且效率不会太低。一、三者区别String:String字符串内容定义后是不可变的,拼接字符串会开辟新的内存空间,造成资源浪费。String str = "我是"; // ①"我是"会开辟一个内存空间str+="程序员"; // ②"程.原创 2021-06-28 15:12:46 · 2182 阅读 · 0 评论 -
URL传字符中文乱码解决办法
encodURI()方法 前端传参(转两次码): location.href=a.jsp?content=encodeURI(encodeURI(content)); 后端获取(解码): String content= request.getParameter("content"); if(content!=null && !"".equals(content)){ writingEvaluation = java.net.URLDecoder.de原创 2021-02-04 17:10:45 · 437 阅读 · 0 评论 -
request的getParameter()和getAttribute()+url传中文
两个都是通过request对象获取参数的方法,另外两者获取参数的作用域是不同的。1.getParameter(“参数名称”)request.getParameter()是获取一个表单或者是跳转路径所包含的参数值,返回结果为String字符串,当表单中包含多个同名参数时,只能获取第一个,如果获取所有的参数值可使用getParameterValues()方法,此方法返回的是一个数组。此外,getParameter()是没有对应的setParameter()方法的。声明类为HttpServletRe.原创 2020-10-30 11:17:40 · 1042 阅读 · 0 评论 -
list集合定义、初始化和赋值时,list值的变化:(未定义、null和不为空)
首先,一个集合list包含了:定义( List list; )、初始化( list = null; 或者List list = new ArrayList(); )和赋值( list.add(字符串、对象。。); )。list定义:List list;此时list为未定义状态,不可以使用System.out.println();直接输出,不能使用isEmpty()等方法,输出结果如图。list初始化:①List list = null; 此时的list没有指向地址,但可以进行输出打印.原创 2020-10-14 17:43:14 · 6793 阅读 · 1 评论 -
StringUtils 之 isEmpty 和 isBlank
1. isEmpty()方法判断字符串是否为空,字符串内只要有点东西就不为空,空格也算是个东西,哈哈StringUtils.isEmpty(null) = trueStringUtils.isEmpty("") = trueStringUtils.isEmpty(" ") = trueStringUtils.isEmpty(“null”) = false2. isBlank()方法判断字符串是否为空白,空格这时候就不是东西了,啥也不是StringUtils.isBlank(null)原创 2020-10-14 15:56:45 · 693 阅读 · 0 评论 -
pojo和vo的含义
pojo(Plain Ordinary Java Object):普通的Java对象,其实就是简单的JavaBean实体类。对应数据库里的某一张表,pojo里的每一个属性都和该表中的字段一 一对应。vo(value object):值对象,又称表现层对象,对应展示界面的数据对象。比如一个前台展示的数据列表,这个列表中的姓名和用户名分别是存在于两个表中的数据,此时数据显示时查询语句用到了多表查询sql,查询出来的数据包含了两个表的字段,此时使用一个JavaBean实体类无法存储返回结果中两个表的数据字段,因原创 2020-08-06 09:55:40 · 3217 阅读 · 0 评论 -
IOC与DI的理解(面向对象编程的设计思想)
设计思想:设计思想就是一种设计程序的思路呀,包括怎么设计对象,等等,不用理解为很高大上的名词,只是一种代码规范、书写方式设计的思路;1.1、IoC是什么Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好Ioc呢?理解好Ioc的关键是要明确...转载 2019-12-23 10:48:14 · 365 阅读 · 0 评论 -
String,StringBuilder,StringBuffer三者的区别
这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。首先说运行速度(或者说是执行速度)在这方面运行速度快慢为:StringBuilder > StringBuffer > StringString最慢的原因: String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者...转载 2019-12-20 14:50:05 · 94 阅读 · 0 评论 -
代码块的分类
什么是代码块?使用{}括起来的代码被称为代码块,根据其位置和声明的不同可以分为下面4种:0.局部代码块,在方法中出现,限定变量生命周期,及早释放,提高内存利用率1.构造代码块,在类中方法外出现;多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行2.静态代码块, 在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且只执行一次。一...转载 2019-12-03 17:52:22 · 1269 阅读 · 0 评论 -
成员变量和局部变量
成员变量 vs 局部变量相同点:1.遵循变量声明的格式: 数据类型 变量名 = 初始化值2.都有作用域不同点:1.声明的位置的不同 :成员变量:声明在类里,方法外局部变量:声明在方法内,方法的形参部分,代码块内2.成员变量的修饰符有四个:public private protected 缺省局部变量没有修饰符,与所在的方法修饰符相同。3.初始化值:一定会有初始化值。成员变量:如...原创 2019-11-26 17:48:21 · 104 阅读 · 0 评论 -
java运算符优先级
单目乘除为关系,逻辑三目后赋值。单目:单目运算符+ –(负数) ++ – 等乘除:算数单目运算符* / % + -为:位移单目运算符<< >>关系:关系单目运算符> < >= <= == !=逻辑:逻辑单目运算符&& || & | ^三目:三目单目运算符A > B ? X : Y后:无意义,仅仅为了凑字数...原创 2019-07-29 20:36:17 · 206 阅读 · 0 评论 -
&和&&的区别
&和&&都表示and,只有当两边都为true时,整个表达式才为true。区别:&:&符号两边的表达式不论对错都会执行。&&:&&符号左边为真时,再去执行右边;当左边为false时,右边的表达式不会执行。...原创 2019-10-17 15:10:25 · 209 阅读 · 0 评论 -
According to TLD or attribute directive in tag file, attribute items does not accept any expressions
According to TLD or attribute directive in tag file, attribute items does not accept any expressions造成错误出现的原因:web.xml文件中的版本号不兼容,有两种方法可解决。第一种方法:修改版本号主要修改在web-app中,我的版本兼容3.1的,自己可以新建一个Dynamic Web Pr...原创 2019-10-17 14:54:25 · 2459 阅读 · 1 评论 -
程序、进程、线程理解
程序(静态的代码)只是一组指令的有序集合,,被存储在磁盘或其他的数据存储设备中,它本身没有任何运行的含义。进程(执行的代码)指进程的一部分,进程之中可建立多个线程。进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。进程和程序并不是一一对应的,一个程序执行在不同的数据集上就成为不同的进程,可以用进程控制块来唯一地标识每个进程。而这一点正是程序无法做到的。一般来说,一...转载 2019-10-16 21:16:23 · 131 阅读 · 0 评论 -
普通for循环和foreach比较
foreach for和foreach分为三类去比较:遍历一维数组遍历二维数组遍历List集合一维数组的的比较 int array[] = { 1,2,3,4,5}; // 增强for循环 for (int arr : array) { System.out.println(arr...原创 2019-10-14 20:47:13 · 743 阅读 · 0 评论 -
面向过程和面向对象的对比举例
下面举了一个关于五子棋面向过程和面向对象的不同逻辑。牢记:面向对象:一切皆对象。原创 2019-10-14 20:26:15 · 536 阅读 · 0 评论 -
应用程序的两种架构
应用程序的两种架构c/sc代表客户端 s代表服务器比如qq、LOL等,说白了就是桌面应用程序特点:1.使用前必须得安装2.更新时,客户端和服务器端必须同时更新3.不跨平台4.通信协议采用的是自由协议(自己定义的协议,‘我接受’),安全b/sb代表浏览器 s代表服务器比如京东网、淘宝网等网站,说白了就是网站特点:1.不需要安装2.更新时,客户端(浏览器)不需要更新3.跨...原创 2019-10-13 14:11:23 · 1360 阅读 · 0 评论 -
什么叫线程安全
定义:就是线程同步的意思,就是当一个程序对一个线程安全的方法或者语句进行访问的时候,其他的不能再对他进行操作了,必须等到这次访问结束以后才能对这个线程安全的方法进行访问什么叫线程安全:如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。或者说:一个类或者程序所提供...原创 2019-10-12 10:07:11 · 317 阅读 · 0 评论 -
抽象类和接口对比(详细)
Gon 抽象类和接口的区别:文章结构划分:1.抽象类和接口定义和实现的书写规范2.抽象类和接口的区别3.抽象类形象化理解 1.抽象类和接口定义和实现的书写规范:抽象类定义:抽象是把多个事物的共性的内容抽取出来,本质就是把我们关注的内容抽取出来(比如:宝马、奔驰都属于汽车,汽车是抽象出来的概念)。注意:Java中可以定义没有方法体的方法,该方法由其子类来具体的实现...原创 2019-09-24 14:08:25 · 1695 阅读 · 2 评论 -
JAVA三层架构
JAVA三层架构:(持久层)数据访问层(dao)(业务层)业务逻辑层(services)(表示层)表现层(view)Java三层架构项目分层:entity:实体层,与数据库的某个表相关联。dao:数据访问层(data access object),与数据库的增删改查等方法的相关代码写在这。一般定义为dao层包括dao,daoImpl,分别为数据层接口和数据层实现类servic...原创 2019-09-23 20:26:50 · 2051 阅读 · 0 评论 -
JDK、JRE和JVM层级关系
JDK包含JRE,JRE包含JVM。JDK:Java开发工具包JRE:Java运行环境JVM:Java虚拟机,X.java文件运行的条件原创 2019-09-23 17:23:24 · 197 阅读 · 0 评论 -
重写toString方法
重写toString方法:当输出一个已重写toString方法的对象时(例如:System.out.println(ts);ts是一个实体类对象),输出代码会调用该对象的toString方法。即"System.out.println(ts);" = “ts.toString();”举例如下:首先定义一个实体类-ToString类public class ToString {private...原创 2019-09-21 17:49:54 · 5452 阅读 · 0 评论 -
计算阶乘(递归算法)
递归定义:方法自己调自己,但必须保证有终止public class TestRecursion {/** * * 方法描述:利用递归计算阶乘 * @param n 递归的(需要计算阶乘的值) * @return 返回的是调用方法或1(终止) */public static int mul(int n){ // 判断方法是否该停止 if(n == 0 || n == 1...原创 2019-09-21 17:32:42 · 3134 阅读 · 0 评论