自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 设计模式_1--23种设计模式概述

1.创建者模式创建对象的机制, 能够提升已有代码的灵活性和可复用性。 包括:工厂方法、抽象工厂、单例、原型器、建造者,这5类。2.结构型模式将对象和类组装成较⼤大的结构, 并同时保持结构的灵活和⾼高效。 包括:适配器、装饰器、代理、 桥接、组合、外观、享元,这7类。3.行为模式负责对象间的高效沟通和职责委派。 包括:命令、迭代器、解释器、 观察者、责任链、中介者、备忘录、状态...

2021-08-23 20:36:02 212

原创 Spring_5--SpringMVC中用到的设计模式

SpringMVC中用到的设计模式

2021-08-23 20:24:15 587

原创 Spring_3--面向切面(AOP,Aspect Oriented Programming)

AOP即面向切面编程,将程序抽象成各个层次的切面,动态增强目标方法。将那些与业务无关,却为业务模块所共同调用的逻辑或责任封装起来(例如事务处理、⽇志管理、权限控制等),减少系统的重复代码,降低模块间的耦合度,有利于未来的可拓展性和可维护性。面向切面编程,分离 应用的业务逻辑 与 系统级服务,进行内聚性的开发内聚性开发:如果不使用AOP,日志会分散在业务代码的各个部分。将日志与业务逻辑分离:使用AOP,专门开发一个打印日志的切面,让切面自动的打印日志,并不是分散在代

2021-08-20 20:56:30 149

原创 Spring_2--控制反转(IOC,Inverse Of Control)

1.概念 IOC即控制反转,意思是对象的创建不通过 手动 new,而是 把对象的创建权 交给Spring来完成。 IOC容器就像一个工厂一样,当我们需要创建一个对象的时候,只需要配置好配置文件/注解即可,完全不用考虑对象是如何被创建出来的。 IOC,反转bean的创建权。2.IOC的举例:2.1 创建一个JavaBean,Person类要想通过 配置文件给对象赋值,写类时必须指定其JavaBean,即 getXXX,setXXX2....

2021-08-20 20:54:52 181

原创 Spring_1--Spring的概念,Spring是什么?

Spring是什么IOC+AOP,即 控制反转 + 面向切面Spring是一个轻量级非入侵的控制反转(IOC,Inverse Of Control)和面向切面(AOP,Aspect Oriented Programming)的容器框架。让企业开发更快、更简洁。从大小与开销两方面而言 Spring都是轻量级的。 通过控制反转(IOC)的技术达到松耦合的目的 面向切面编程,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发 包含并管理应用对象(Bean)的配置和生命周期,这个意

2021-08-20 20:48:45 109

原创 Spring_4--SpringMVC流程与原理

1.MVC2.三层架构3.SpringMVC流程图示4.SpringMVC的执行流程1.用户发送请求至前端控制器DispatcherServlet。2.DispatcherServlet收到请求调用HandlerMapping处理器映射器。3.处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。4.DispatcherServlet调用H...

2021-08-20 20:31:37 130

原创 Java基础_6--成员变量与局部变量

根据定义变量位置的不同,可以将变量分为成员变量和局部变量 成员变量是在 类范围内 定义的变量 局部变量是在一个 方法内 定义的变量成员变量(存在于堆内存中,和类一起创建)局部变量(存在于栈内存中,当方法执行完成,让出内存,让其他方法来使用内存)。1. 成员变量成员变量可以分为: 实例属性 (实例变量)(不用static修饰) 随着实例属性的存在而存在 类属性 (类变量、静态变量)( (static修饰) 随着类的存在...

2021-08-20 18:27:04 131

原创 Java基础_5--方法

1.方法在栈内存每个方法在被调用执行的时候,都会进入栈内存,并且拥有自己独立的内存空间,方法内部代码调用完毕之后,会从栈内存中弹栈消失。2.方法的注意事项2.1 方法不能嵌套定义2.2 void表示无返回值 可以省略return; 也可以单独的书写return,后面不加数据...

2021-08-19 16:18:48 126 1

原创 Java基础_4--Java内存分配

内存是计算机中的重要原件,临时存储区域,作用是运行程序。编写的程序是存放在硬盘中的,在硬盘中的程序是不会运行的。必须放进内存中才能运行,运行完毕后会清空内存。栈内存: 存储局部变量定义在方法中的变量,例如:arr使用完毕,立即消失堆内存: 存储new出来的内容(实体,对象)每一个new出来的东西都有一个地址值使用完毕,会在垃圾回收器空闲时被回收。堆内存: 存储 对象 或者 数组,new来创建的,都存储在堆内存。方法栈: 方法运行时使用的内存,比如 mai.

2021-08-19 14:57:36 84

原创 Java基础_3--Java数组

1.数组动态初始化数组动态初始化 就是 只给定数组的长度,由系统给出默认初始化值数据类型[] 数组名 = new 数据类型[数组长度];int[] arr = new int[3];数组声明,必须要明确行数,列数随意正确:float f[][] = new float[6][6];float []f[] = new float[6][6];float [][]f = new float[6][6];float [][]f = new float[6][];错误

2021-08-19 14:43:02 127

原创 Java基础_2--Java基本数据类型(四类八种)

一、Java四大数据类型分类1、整型byte 、short 、int 、long2、浮点型float 、 double3、字符型char4、布尔型boolean二、八种基本数据类型boolean:表示真假,只有两个值 true和false空值:值为null参考:https://zhuanlan.zhihu.com/p/25439066...

2021-08-19 14:34:46 203

原创 Java基础_1--Java 是编译和解释共存的语言

一、Java首先将.java文件通过编译器编译成.class类型的文件,这个是java自己类型的文件;.java不经过编译就什么用都没有。二、然后在通过虚拟机(JVM)从.class文件中读一行解释执行一行,所以他是解释型的语言。三、现在的JVM为了效率,都有一些JIT优化。它又会把.class的二进制代码编译为本地的代码直接运行,所以,又是编译的。C、C++ 他们经过一次编译之后直接可以编译成操作系统了解的类型,可以直接执行的,所以他们是编译型的语言。java语言:编译 解.

2021-08-19 10:32:06 285

原创 IDEA2020.3创建web工程

最近更新了2020.3版本的IDEA,再创建动态web工程时,发现相较于2020.2版本有一些变化,网上对新版本的描述还是较少的,特意写一下供自己和大家参考(操作系统为Windows10)一.创建普通的Java项目--Project1.File->New->Project2.选择java,SDK我这安装的是JDK1.83.一直Next,最后输入项目名称“JavaWebProject”,注意路径,是自己的工作空间中,方便项目管理。 点击最下面的“Finish”。..

2021-05-26 20:56:36 1414 1

原创 解压版MySQL安装与卸载教程

MySQL分为安装版和解压版。安装版经常安装失败,重新安装需要卸载MySQL,十分麻烦,推荐解压版MySQL。详细步骤如下:1.下载官网下载网址:https://dev.mysql.com/downloads/mysql/根据你的系统(32位或者64位)选择后缀是ZIP Archive的压缩包下载到本地,这里我下载的是“MySQL5.7.13”点击Dowload后会要求你登录,不用管,直接点击No thanks, just start my download。2.解压My

2021-05-25 09:51:37 1087 1

原创 IDEA的常用快捷键

IDEA的快捷键Ctrl+Alt+L 格式化代码Ctrl+/ 单行注释Ctrl+Shift+/ 选中代码注释,多行注释,再按取消注释Alt+Enter 导入包,自动修正代码...

2021-05-13 09:04:31 2332

原创 为什么要引入齐次坐标,齐次坐标的意义(一)

问题:两条平行线可以相交于一点在欧氏几何空间,同一平面的两条平行线不能相交,这是我们都熟悉的一种场景。然而,在透视空间里面,两条平行线可以相交,例如:火车轨道随着我们的视线越来越窄,最后两条平行线在无穷远处交于一点。欧氏空间(或者笛卡尔空间)描述2D/3D几何非常适合,但是这种方法却不适合处理透视空间的问题(实际上,欧氏几何是透视几何的一个子集合),2维笛卡尔坐标可以表示为...

2020-08-09 08:28:55 32203 9

原创 为什么要引入齐次坐标,齐次坐标的意义(二)

前面我们提到了图像的缩放变换和旋转变换,可以用矩阵乘法的形式来表达变换后的像素位置映射关系。那么,对于平移变换呢?平移变换表示的是位置变化的概念。如下图所示,一个图像矩形从中心点[x1,y1]平移到了中心点[x2,y2]处,整体大小和角度都没有变化。在x方向和y方向上分别平移了tx和ty大小。显然:这对于图像中的每一个点都是成立的。写成矩阵的形式就是:我们再把前面的...

2020-08-09 08:28:40 17643 33

原创 解决GPG error: The following signatures couldn't be verified because the public key is not available

将Ubuntu的源修改为国内源:https://blog.csdn.net/zhuiqiuzhuoyue583/article/details/88777483将Ubuntu的源修改为国内源的之后,执行sudo apt-get update出现问题:GPG error: The following signatures couldn't be verified because ...

2019-05-27 09:21:20 59324 22

原创 jersey 对服务器上文件的增删改查

要开始使用 Jersey 客户端 API,首先需要创建一个 com.sun.jersey .api.client.Client 类的实例。下面是最简单的方法:    import com.sun.jersey .api.client.Client;    Client client = Client.create();Client 类是创建一个 RESTful Web Service 客户端...

2018-09-08 20:23:22 1274 1

原创 axios发送post请求,后台如何接受问题

在WebStorm 中使用vue,在vue下不能使用ajax,所以使用axios。需要使用两个包: <script type="text/javascript" src="../js/axios.min.js"></script> <script type="text/javascript" src="../js/vue-resource.

2018-07-20 21:43:52 5590

原创 json在后台封装后,返回中文乱码

更高版本的spring可以利用设置 @RequestMapping 的 produces 参数@RequestMapping(value="/upload",produces = "text/html;charset=UTF-8")@ResponseBody public jsonObject upload(@RequestParam("file") MultipartFile...

2018-07-19 22:56:53 1208

原创 Maven安装教程详解

Maven安装教程详解

2018-07-19 16:08:12 1053

原创 maven中添加lombok,使用@data,自动具备set和get方法

1.在pom.xml中添加:<dependencies>    <dependency>        <groupId>org.projectlombok</groupId>        <artifactId>lombok</artifactId>        <version>1.16.18&

2018-07-17 18:55:56 12307

原创 给select的同一个option设定多个value值,并分别获取

option 的value用个 分隔符进行分隔,然后获取的时候通过script的split。<select id="coupon"> <option value="0" selected>- 请选择可使用的优惠券 -</option> <c:forEach items="${couponsNotUsedPay}" var="c"

2018-07-09 01:12:14 14877

原创 java中比较两个日期的大小,计算时间差(两个时间相减)

java中比较两个日期的大小,计算时间差(两个时间相减)

2018-07-06 17:10:37 6383 1

原创 servlet通过url传递中文给js

java代码:   先将中文转为utf-8String seccessUrl="showUserInfo";String str="修改成功";String msg=URLEncoder.encode(str, "UTF-8"); response.sendRedirect("success.jsp?url="+seccessUrl+"&msg="+msg);js代码:   ..

2018-07-03 17:53:06 1328

原创 解决Tomact启动时问题,Port 8080 required by Tomcat v8.0 Server at localhost is already in use.

报错:cmd 中输入: netstat -ano|findstr 8080信息输出如下:再输入:taskkill /f /pid 10200

2018-06-30 14:47:10 8116

原创 将servlet中的数组传给js

例如:servlet 代码:List<Integer> allOrders=new ArrayList();allOrders=iod.allOrdersByMonth(bussinessId,theyear);String orderData=allOrders.toString(); //将list集合,转为stringsession.setAttribute("allOr...

2018-06-28 08:23:14 3519

原创 修改数据库连接池的url后,还是连接原先的url

问题:当修改连接池url之后,访问的还是原来的数据库。例如:原来:url=jdbc:mysql://192.168.250.227:3306/myshop?characterEncoding=utf-8修改后:url=jdbc:mysql://10.201.15.5:3306/shop?characterEncoding=utf-8报错为:com.alibaba.druid.pool.DruidD...

2018-06-24 20:05:55 4415

原创 解决不能连接数据库报错10038

请先确保不是mysql服务没启动! 请先确保不是mysql服务没启动! 请先确保不是mysql服务没启动! 1,使用Navicat for MySQl访问远程mysql数据库,出现报错,显示“2003- Can't connect MySQL Server on 'localhost'(10038)“。 2,原因是:远程3306端口未对外开放。于是下面进行远程330...

2018-06-24 12:05:15 3125 1

原创 共享本地mysql,可以让其他电脑远程连接

首先看报错窗口。经查阅,错误原因是:本地IP(xxx.xxx.xxx.xxx)没有访问远程数据库的权限。于是下面开启本地IP(xxx.xxx.xxx.xxx)对远程mysql数据库的访问权限。首先远程连接进入服务器,在cms中输入mysql -u root -p,然后回车,输入密码后回车进入mysql命令行。输入use mysql;输入select user,password,host from ...

2018-06-24 12:02:32 10386 1

原创 如何关闭或启动mysql服务

方法一:通过命令行开启\关闭服务第一步点击开始菜单,找到cmd,以管理员身份运行。第二步在命令行里面输入“net stop mysql”,按回车键,就停止了mysql服务,如下图所示:第三步在命令行输入“net start mysql”,接着按回车键,开启mysql服务,如下图所示:END方法二:通过电脑服务开启/关闭第一步最开始右键计算机,选择“管理”,如下图所示:第二步进去管理之后,选择服务和...

2018-06-24 11:44:13 57528

原创 com.google.guava_1.6.0.jar包和org.apache.commons包和pagehelper-3.2.1jar 包

工具包:com.google.guava_1.6.0.jar包和org.apache.commons包和pagehelper-3.2.1jar 包网盘地址:https://pan.baidu.com/s/1ZEdMTfOhhg3Jhplo8CzBAA是公开的,可以使用。

2018-06-21 15:29:04 1301

原创 int 的范围

int 十进制:-2^31=-21 4748 3648 到 2^31-1=21 4748 3647。共10位,21亿。在32位或64位机器中,int占4个字节,即32位。(一个字节,占8位)int能表示的最大正整数为:0111 1111 1111 1111 1111 1111 1111 1111  (最高位表示符号位,正数符号位为0)对应的10进制数为2^31-1=2147483647,对应的十六...

2018-04-14 23:55:16 63164 1

原创 重载与覆用

覆盖:  子类对父类方法的一种重写。只能比父类抛出更少的异常,访问权限不能比父类小。被覆盖的方法不能是private的,否则只是在子类中重新定义了一个方法。重载:   表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各部相同。1、什么是重载?      重载,简单说,就是函数或者方法有相同的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法...

2018-04-12 17:54:56 969

原创 java中,封装,继承,多态和抽象

java中,封装,继承,多态和抽象

2018-04-12 17:27:29 743 1

原创 一个完整的javaSwing的JTextPane 插入图片和文字

一个完整的javaSwing的JTextPane 插入图片和文字:package gui;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;import java.awt.event.ActionEvent;import java.awt.event.ActionListener

2018-01-12 19:26:34 13432 17

原创 Java线程的计时器

一.先创建一个myTimer类,实现ActionListener接口,并将put1Thread线程作为成员。  //计时器    class mytimer implements ActionListener{        Worker1 put1Thread;//put1线程               Timer time;            public mytim

2018-01-12 19:06:50 4130 1

原创 javaSwing---jTextPane图片换行

一.写一个FontAttrib类 //jTextPane换行,字体属性 private class FontAttrib { public static final int GENERAL = 0; // 常规 public static final int BOLD = 1; // 粗体 public static final int ITALIC

2018-01-12 18:51:31 1433

原创 javaSwing弹框保存文件--JFileChooser

javaSwing保存文件,弹出框--JFileChooser: FileUtils的jar包: commons-io.jar //保存 private void savejButtonActionPerformed(java.awt.event.ActionEvent evt) {

2018-01-12 18:09:56 2121

空空如也

空空如也

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

TA关注的人

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