自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java学步园

善始者众,善终者寡

  • 博客(51)
  • 资源 (1)
  • 收藏
  • 关注

原创 老王的JAVA基础课:第6课 JAVA基本数据类型

java数据类型有哪些?类型强制转换java底层是如何实现的?我们一起来了解一下

2020-06-06 18:20:09 531 20

原创 老王的JAVA基础课:第5课 面向对象

学了这么久java,还不理解面向对象和面向对象带来的好处?速来恶补!

2020-06-04 22:51:18 998 14

原创 老王的JAVA基础课:第4课 以hello world学习基础语法

学了这么久java,还不理解面向对象和面向对象带来的好处?速来恶补!

2020-06-02 23:18:10 1494 24

原创 解决Windows10下java环境变量配置不生效的问题

前言我们按照以往的经验在配置系统环境变量,在PATH末尾追加以下内容%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;保存后打开CMD运行javac发现并不生效。问题原因在于Windows10对于PATH的配置做了优化。导致如果在编辑页一行内输入以上配置PATH会认为你配置的两个路径是一个整体的路径,所以会导致找不到JAVA_HOME。两种正确的配置办法正确姿势1在PATH编辑界面增加两条配置正确姿势2点击编辑文本是不是熟悉的感觉?确定即可生效,注意CM

2020-05-31 14:23:36 12331 7

原创 老王的JAVA基础课:第3课 IDEA的安装和使用

前言上节课我们学习了如何安装JDK和配置java环境变量,这节课我们来学习安装IDE和熟悉其基本配置,下面我们就开始啦。什么是IDE?集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。——百度百科java开发常见ide有NetB

2020-05-31 12:58:45 1521 17

原创 老王的JAVA基础课:第2课 JDK安装和环境变量配置

什么是JAVA环境变量?为什么要配置?如何配置?我们来聊一聊。

2020-05-30 22:42:24 856 24

原创 老王的JAVA基础课:第1课 计算机基础知识

QQ是怎么运行的?我们的消息又是如何发送出去的?我们来聊一聊合格程序员必须熟悉的计算机系统。

2020-05-27 22:51:49 2728 24

原创 老王的JAVA基础课:序言

老王手把手带你学java基础,还不赶紧来?完全免费!

2020-05-27 22:41:34 592 1

原创 2020年高效搬砖必备的IDEA插件(附安装包)

前言工欲善其事必先…算了,废话少B直接开始介绍我本人开发过程中最常用的10款能让敲代码的速度提升不少的IDEA插件。由于天朝网速问题(你懂的),文末附上官方最新版本(截止2020.05.20)离线安装包~1. lomboklombok插件官方链接项目中我们经常会定义一些POJO类,里面充斥着大量getset方法和toString的样板方法,让本身应该简洁明了的实体类变得臃肿不堪,就像这样:public class User { /** 姓名 */ private String n

2020-05-20 22:57:55 6578 33

原创 详解从p12证书提取RSA公私钥和序列号(小白向)

前言在工作中我们或多或少会接触对接外部系统(如微信支付宝),对接过程中又无可避免会对数据的加解密和加签验签。一般第三方会提供一个授权证书,让我们自行解密提取秘钥。为了让你拿到证书后不会像我当初一样一脸懵逼,咱们来看看如何从p12证书中提取公私钥。什么是p12证书我们常说的p12证书全称是PKCS#12(Public-Key Cryptography Standards:公钥加密标准)百度百科:PKCS#12是一种交换数字证书的加密标准,用来描述个人身份信息。如:用户公钥、私钥、证书等。p1

2020-05-19 21:45:09 21346 9

原创 如何设计一个秒杀服务

什么是秒杀?在特殊时间点(如京东618,天猫双11)进行的大量商品促销活动,引发大量用户集中访问和下单导致系统遭到巨大压力的考验。传统业务架构秒杀的特点和引发的风险短时间大量用户访问网站,网站系统的读压力骤然升高,有挂掉的风险。商品数量有限,而大量用户下单,商品存在超卖风险。在大量用户集中访问的前提下需要保证系统的性能,即用户访问网站也需要较低的延时才能得到较好的用户体验。对现有业务产生冲击,秒杀服务不应干扰其他业务正常进行。针对秒杀特点的服务的优化思路针对网站读压力很高的特点,

2020-05-17 23:19:16 1015 26

原创 从新华字典释义的角度理解springboot中controller、service、dao各自的职责

背景在日常的工作中,我们经常会发现很多项目的业务处理逻辑都放在controller中,导致service除了调用dao获取数据之外没有任何逻辑,以我们要获取用户信息为例,以下是错误示例。获取用户信息的简单 controller:@Slf4j@Controllerpublic class DemoController { @Autowired DemoService demoService; @GetMapping("/demo") @ResponseBody

2020-05-17 14:57:05 1543

原创 java生成N位随机数字

直接上代码/** * 生成N位随机数字 */ public static Integer randomNumber(int length){ return (new Double(Math.random() * (Math.pow(10F, length) - Math.pow(10F, length - 1)) + Math.pow(10F, l...

2019-11-16 21:01:09 1159

原创 IDEA连接MySQL数据源配置和mybatis整合

背景以往在写mybatis的xml文件时在insert语句上往往要在每个字段上写上一堆字段,用数据库工具找字段一个个粘贴到xml感觉实在浪费时间又蠢,而且mybatis的代码总是提示没有配置数据源。实在是逼死处女座,下面就来配置一把IDEA内置的数据源连接操作。1. 选择数据库方言首先点开settings输入dialect数据库方言将方言设置成你需要的数据库,比如我是mysql,全...

2019-11-16 20:44:09 3913

原创 【踩坑】解决springboot注入yml配置文件 list报错

springboot中yml配置注入一般使用@Value注解可注入String类型数据,比如:@Value("${config}")String stringConfig;即可注入属性,而注入list使用此方法则会报错提示Could not resolve placeholder xxx。注入list的正确方法配置文件实例list-config: config: ...

2019-10-31 21:11:21 3483 12

原创 centos开发环境相关设置

开放相关端口/etc/init.d/iptables stop/etc/init.d/iptables status/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT/sbin/iptables -I INPUT -p

2015-07-11 12:13:11 418

原创 相关资料网站

http://blog.csdn.net/peterwin1987/article/details/7571808JAVA 堆栈 堆 方法区 静态区 final static 内存分配 详解http://www.cnblogs.com/yjmyzz/archive/2010/05/13/1734695.html最短的IE判定http://jinnianshilongnian

2015-07-11 11:11:04 473

转载 IoC以及Bean概念

IOCIoC容器就是具有依赖注入功能的容器,IoC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IoC容器进行组装。在Spring中BeanFactory是IoC容器的实际代表者。Spring IoC容器如何知道哪些是它管理的对象呢?这就需要配置文件,Spring IoC容器通过读取配置文件中的配置元数据,通过

2015-07-11 11:09:53 594

原创 java static关键字随笔

static字段对每个类来说都只有一份存储空间,而非static字段则是每个对象都有一个存储空间。static的一个重要用法: 在不创建任何对象的前提下就可以调用它。这一点对main方法尤为重要,这个方法是运行一个应用的入口点,static方法可以调用static方法而不能调用非static方法static方法内部不能存在this关键字。static代码块:与其他静态初

2015-07-11 11:08:27 369

原创 java对象创建过程 笔记

假设有个名为Dog的类1.即使没有显式地使用static关键字,构造器实际上也是静态方法。因此,当首次创建类型为Dog的对象时(构造器可以看成静态方法),或者Dog类的静态方法/静态域首次被访问时,Java解释器必须查找类路径,定位Dog.class文件。2.然后载入Dog.class(将创建一个Class对象),有关静态初始化的所有动作都会执行。因此静态初始化只有在Class对象首次加载

2015-07-11 11:07:45 351

转载 接口和抽象类有什么区别

接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。比如,男人,女人,这两个类(如果是类的话……),他们的抽象类是人。说明,他们都是人。人可以吃东西,狗也可以吃东西,你可以把“吃东西”定义成一个接口,然后让这些类去实现它.所以,在高级语言上,一个类只能继承一个类(抽象类)(正如人不可能同时是生物

2015-07-11 11:07:07 376

原创 java包括继承在内的初始化全过程 笔记

class Insect{private int i = 9;protected int j;Insect(){System.out.println("i=" + i + ",j=" + j);j = 39;}private static int x1 = printInit("static Insect.x1 initialized.");static int printInit

2015-07-11 11:06:19 458

原创 向上转型 笔记

package test;public class TestUpcasting { public static void tune(Cycle i){ i.play(Note.MEDIUM); } public static void main(String[] args) { tune(new UnCycle()); }} enum Note{ SM

2015-07-11 11:05:33 677

原创 java构造器 笔记

基类的构造器总是在导出类的构造过程中被调用,而且按照继承层次逐层向上链接,使每个基类构造器得到调用。这样做是有意义的,因为构造器具有一项特殊任务:检查对象是否被正确地构造。导出类只能访问它自己的成员,不能访问基类中的成员(基类成员通常是private类型)。只有基类构造器才有恰当的权利来对自己的成员初始化。因此,必须让所有的构造器都得到调用,否则就不可能正确构造完整对象。这正式编译器为什么强制要求

2015-07-11 11:04:28 384

原创 java abstract关键字解析

抽象方法:仅仅声明而没有方法体的方法叫做抽象方法。抽象类:包含一个或多个抽象方法的类叫做抽象类。 (都需要加上abstract关键字)如果一个类想继承抽象类,并创建该类的对象,那么就必须为基类中所有抽象方法提供方法定义(抽象类中已实现的方法不必重写)。如果不这么做,那么导出类便也是抽象类,且编译器会强制我们用abstract关键字来限定这个类。有一种情况:我们可能会创建没有任何

2015-07-11 11:03:54 413

原创 java接口 笔记

接口表示:所有实现了该接口的类看起来都像这样。接口被用来建立类与类之间的协议。interface不仅仅是一个极度抽象的类,因为它允许人们通过创建一个能够被向上转型为多种基类的类型,来实现某种类似多重继变种的特性。接口中没有任何方法被定义为public,但是它们自动都是public的。使用接口的核心原因:为了能够向上转型为多个基类型(以及由此带来的灵活性)。然而,使用接口的第二个原因

2015-07-11 11:02:39 515

原创 java内部类

每个内部类都能独立地继承自一个(接口的)实现,所以无论外围类是否继承了某个(接口)的实现,对内部类都没有影响。1.内部类可以有多个实例,每个实例都有自己的状态信息,并且与外围类对象的信息相互独立。2.在单个外围类中,可以让多个内部类以不同的方式实现同一接口,或继承同一个类。3.创建内部类对象的时刻并不依赖于外围类对象的创建。4.内部类并没有令人迷惑的“is-a”关系,它就是一个独立

2015-07-11 11:01:41 372

原创 java集合笔记

1.如果要进行大量的随机访问,应该使用ArrayList;如果要经常从表中间插入或删除元素,则应该使用LinkedList。2.各种Queue和Stack的行为,由LinkedList提供支持。3.HashMap设计用来快速访问,而TreeMap保持“键”始终处于排序状态,所以没有HashMap速度快。LinkedHashMap保持元素插入的顺序,但是也通过散列提供快速访问能能力。4.

2015-07-11 11:01:08 400

原创 Class.forName()详解

Class.forName("Gum");这个方法是Class类的一个static方法,Class对象和其他对象一样,我们可以获取并操作它的引用(也就是类加载器的工作)。forName()是取得Class对象的引用的一种方法。它是用一个包含目标类的文本名(注意拼写和大小写)的String作为输入参数,返回的是一个Class对象的引用,上面的代码忽略了返回值。对forName()调用是为了利用它

2015-07-11 11:00:24 1145

原创 java数值交换的技巧

a = b + 0 * (b = a);

2015-07-11 10:59:41 453

原创 JDK动态代理与CGLIB动态代理

package testInvocationHandler; import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy; interface Book {public void read();public void search(

2015-07-11 10:55:37 657

转载 Cookie操作

import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class CookieUtil {  public static Cookie getCookie(HttpSe

2015-07-11 10:53:50 396

转载 发布到tomcat服务器上webapps里的文件名和workspace中项目名称不一致的问题

第一种方法:打开工程所在目录,找到一个 .mymetadata的文件,用记事本等打开,内容大致如下:  type="WEB"  name="QingNiaoCang"  id="myeclipse.1311043386109"  context-root="/QingNiaoCang"  j2ee-spec="5.0"  archive="QingNiaoC

2015-07-11 10:51:44 984

转载 web.xml 中的listener、 filter、servlet 加载顺序及其详解

在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰。        首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是:listener

2015-07-11 10:50:40 386

原创 tomcat启动数据源一般错类型

1、java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSourceFactory 报错详情: …… 警告: Failed to register in JMX: javax.naming.NamingException: Could not load resource factory class

2015-07-11 10:48:53 3834

转载 tomcat启动两次的问题

问题原因:    因为hello应用本来就放在Tomat的默认webapp目录下(tomcat在启动时肯定会加载1次),然后又在server.xml中做了配置,为了达到访问根就可以访问hello应用(这样tomcat就又加载1次);结果,Tomcat就会加载两次。 解决办法:    办法1、不要将 hello 应用放在Tomat的默认webapp目录下,把它移出去,

2015-07-11 10:47:19 489

转载 spring mvc 给Controller添加事务不成功的原因

扫描配置如下:spring-context.xml    spring-mvc.xml     spring父容器不扫描@Controller,MVC子容器不扫描@Service.事务配置如下:spring-context.xmlproxy-target-class="false" />class="org

2015-07-11 10:43:16 5275 2

原创 给网站添加favicon

1.在项目根目录(/webapp)下放一个16×16px的favicon.ico文件,名字不能任意修改。2.修改springMVC配置文件,添加如下行即可           出现的问题:1. 404  原因:未配置mvc的静态资源访问导致访问不到静态文件,解决方法如上2. 按如上步骤配置后无效果  原因:浏览器缓存   清除浏览器数据即可    最好使用360浏览

2015-07-11 10:41:39 467

原创 SQL事务以及带来的问题 笔记

事务是由一组 SQL 语句组成的逻辑处理单元,事务具有以下 4 个属性,通常简称为事务的ACID 属性。  原子性(Atomicity) :事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。  一致性(Consistent) :在事务开始和完成时,数据都必须保持一致状态。这意味着所有相关的数据规则都必须应用于事务的修改, 以保持数据的完整性; 事务结束时,所

2015-07-11 10:40:07 476

原创 SQL存储过程

MySQL 的存储过程和函数中允许包含 DDL 语句,也允许在存储过程中执行提交(Commit,即确认之前的修改)或者回滚(Rollback,即放弃之前的修改) ,但是存储过程和函数中不允许执行 LOAD DATA INFILE 语句。此外,存储过程和函数中可以调用其他的过程或者函数。 一个简单的插入前触发器例子:DELIMITER $$CREATE TRIGGER b

2015-07-11 10:38:52 386

2012语言包.zip

1.按住win+R 输入“LPKSetup”回车打开安装程序界面 2.点击install display language; 3.浏览并找到你下载的安装包的完整路径和文件名,点击next进行安装。

2020-01-08

空空如也

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

TA关注的人

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