- 博客(101)
- 收藏
- 关注
原创 Chrome浏览器安装ElasticSearch-head插件
ElasticSearch-head插件文件夹链接:链接:https://pan.baidu.com/s/1L9qVAGbnbpg0Js_ngoHsVQ提取码:66fs(文件夹不大,我就不压缩了)在Chrome浏览器点击右上角的三个点—>更多工具---->扩展程序,出现以下页面:选择刚刚下载的文件夹即可:点击即可使用:...
2021-05-31 11:57:21
685
1
原创 支付宝PC二维码支付(Java开发)全部流程沙箱环境
最近在做一个小的购物网站,需要支付宝在线支付,这个博客就是总结一下方便记忆,在线支付的坑对我这种的小白来说坑还是挺多的。步骤如下:一、准备:1、先去 支付宝开发者中心 注册个人号或者商户号2、接下来的步骤可按照东北溜达滑的博客(转载):沙箱环境设置链接3、测试需要用内网穿透软件,我用的是natapp,可以搜一下natapp使用教程安装,这个是测试必须要安装的。4、pom.xml添加依赖:<!-- alipay 支付宝SDk--><dependency> <
2020-05-29 00:16:54
2598
原创 SpringMVC 自定义视图
一、为什么使用自定义视图SpringMVC如果使用Excel视图等,必须使用自定义视图。二、如何使用自定义视图1、自定义一个实现View接口的类,添加@Component注解,将其放入SpringIOC容器,如下所示:package com.jd.view;import java.util.Map;import javax.servlet.http.HttpServletReque...
2020-04-23 11:06:12
335
原创 ContextLoaderListener监听器
一、作用ContextLoaderListener的作用就是启动Web容器时,自动装配ApplicationContext.xml的配置信息。二、如何使用<?xml version="1.0" encoding="UTF-8"?>...省略<web-app>标签... <display-name>cassini</display-name>...
2020-04-16 13:21:37
911
1
原创 详述拦截器
一、拦截器的作用将堆内存SpringMVC使用拦截器对请求进行拦截处理,以实现特定的功能。二、怎么使用拦截器1、自定义一个实现HandlerInterceptor接口的类并实现接口中定义的抽象方法,如下代码:package com.jd.interceptor;import javax.servlet.http.HttpServletRequest;import javax.serv...
2020-04-08 16:51:06
341
原创 详述SpringMVC请求处理过程
SpringMVC请求处理过程1、DispatcherServlet接受请求。2、执行DispatcherServlet类service(HttpServletRequest request, HttpServletResponse response)方法,该方法源自于其父类FrameworkServlet,代码如下:3、执行HttpServlet类service(HttpServletRe...
2020-03-26 14:51:08
313
转载 【转载】servlet的生命周期简述
该文章转载自:https://blog.csdn.net/hu1010037197/article/details/80215093 ,以便自己学习用。一、Servlet生命周期图二、Servlet生命周期简述(1)加载和实例化当Servlet容器启动或客户端发送一个请求时,Servlet容器会查找内存中是否存在该Servlet实例,若存在,则直接读取该实例响应请求;如果不存在,就创建一...
2020-03-26 12:00:20
256
原创 详述load-on-startup标签的作用
一、load-on-startup标签的作用load-on-startup标签可以设置servlet的加载优先级别及容器是否在启动时加载该servlet,如下设置:<load-on-startup>1</load-on-startup>当值为0或者大于0时,代表容器启动时加载该servlet。正数的值越小,启动加载该servlet的优先级越高。如果为负数,则容器启动...
2020-03-24 22:23:10
9592
1
原创 Spring框架中配置Quartz定时器
一、定时器是什么?Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz([kwɔːrts] n. 石英),其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器:Quartz下载地址:http://www.quartz-scheduler.org/downloads/二、配置Quartz定时器1、创建Java工...
2020-03-19 22:17:45
151
原创 Spring框架事务 @Transactional常用属性说明
一、什么是Spring事务?1、Spring事务满足事务四大特性(ACID):原子性(Atomicity)数据库中原子性强调事务是一个不可分割的整体,事务开始后所有操作要么全部成功,要么全部失败,不可能停滞在中间某个环节。如果事务执行过程中出错就会回滚到事务开始前的状态,所有的操作就像没有发生一样不会对数据库有任何影响。一致性(Consistency)事务必须使数据库从一...
2020-03-18 23:08:51
372
原创 详述JDK代理与CGLib代理区别
一、JDK代理与CGLib代理区别1、JDK代理:只能对实现了接口的类生成代理,而不能针对类。2、CGLib代理:针对类实现代理,主要是对指定的类生成一个子类,覆盖其中的方法,并覆盖其中方法(继承),因为是继承,所以该类或方法最好不要声明成final, 对于final类或方法,是无法继承的。3、何时使用JDK代理与CGLib代理?①目标对象实现了接口,默认采用JDK代理实现AOP,此时...
2020-03-15 14:05:29
2131
原创 MyBatis框架一对一查询与一对多查询
一、创建表创建两个表,一个用户表,一个地址表。一个用户可以有多个地址。--user_info表create table user_info( id int(2) primary key, user_name varchar(12) unique, password varchar(15) not null, real_name varchar(...
2020-03-12 23:58:27
189
原创 Spring整合MyBatis
一、搭建环境1、创建一个Java或者web工程,导入相应jar包并为该工程创建Spring配置文件application.xml:2、在Spring配置文件application.xml中添加如下配置信息:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/...
2020-03-12 19:20:05
113
原创 MyBatis动态sql
MyBatis实现动态SQL的元素:元素作用if常用于根据条件拼接where 子句。choose (when, otherwise)choose 元素类似 Java 中的 switch 语句。wherewhere 元素只会在至少有一个子元素的条件返回 SQL 子句的情况下才去插入<where></where>子句;而且,若语句的开头为...
2020-03-10 15:30:25
427
原创 MyBatis一级缓存和二级缓存
为什么有一级缓存和二级缓存?为了提升查询效率,提高用户体验,MyBatis提供了数据缓存支持,依据数据缓存的有效范围默认定义了一级缓存和二级缓存。一级缓存:1、该级缓存默认开启,不能关闭。2、该级缓存为SqlSession级别的缓存,也称为本地缓存。3、以下4种情况将会导致该级缓存失效:①在不同SqlSession中查询数据,代码如下:public class Test { pu...
2020-03-08 18:06:36
236
原创 MyBatis如何使用
一、什么是MyBatis?MyBatis源自Apache的iBatis开源项目, 从iBatis3.x开始正式更名为MyBatis。它是一个优秀的持久层框架。官网地址:http://www.mybatis.org/mybatis-3/二、为什么使用MyBatis?为了和数据库进行交互,通常的做法是将SQL语句写在Java代码中,SQL语句和Java代码耦合在一起不利于后期维护修改,而MyB...
2020-03-07 15:42:37
443
原创 详述Spring AOP
什么是AOP?AOP(Aspect Oriented Programming 面向切面编程)是一种通过运行期动态代理实现代码复用的机制,是对传统OOP(Object Oriented Programming,面向对象编程 )的补充。目前,Aspectj是Java社区里最完整最流行的AOP框架,在Spring 2.0以上版本中可以通过Aspectj注解或基于XML配置AOP。为什么用AOP?通...
2020-03-03 19:34:06
123
原创 Spring构造注入 构造方法及变量赋值方式
一、构造方法赋值:首先提供构造方法类UserInfo.java:public class UserInfo { //1、普通类型 public UserInfo(int age, String name) { System.out.println(age+" , "+name); } //2、自定义类型 public UserInfo(Date birth) { Sy...
2020-02-27 12:54:59
1424
1
原创 详述context:component-scan作用
作用context:component-scan扫描base-package属性的包及其子包的所有类,并为添加了@Controller、@Service、@Component、@Repository修饰的类创建对象并存入IoC容器,调用的是默认构造方法。例如:<context:component-scan base-package="com.csdn"></context:...
2020-02-27 12:25:43
296
原创 Spring生命周期
bean的完整生命周期,对于scope属性为singleton的bean,是从实例化开始到销毁。我们可以从输出的结果中看出其顺序:先设置UserInfo.class:public class UserInfo { static { System.out.println("静态代码块"); } { System.out.println("非静态代码块"); } pri...
2020-02-22 21:32:32
133
原创 详述Spring中scope作用
scope:用来配置Spring bean的作用域。有四个属性:singleton(单例)、prototype(多例)、request、session。1、singleton(单例):scope的属性默认singleton,指在IoC容器中只存在一个实例,所有的引用都将使用这一个实例。配置为:<bean id="userInfo" class="com.jd.vo.UserInfo"...
2020-02-22 21:08:05
536
原创 详述Spring中lazy-init作用
lazy-init:懒加载,指Spring延迟加载bean的属性。1、默认lazy-init的属性值为false,此时在Spring启动时,就会对所有的singleton bean提前进行实例化。如下代码:<bean id="userInfo" class="com.jd.vo.UserInfo" lazy-init="false">//设置为false时,在Spring启动时就...
2020-02-22 20:43:53
1887
原创 EL与JSTL
EL语言操作符:获取某个对象或者集合中的属性值。1、点操作符:EL表达式通常由两部分组成:对象和属性。在EL表达式中,可以使用点操作符来访问对象的属性,例如${user.id}就是访问user对象的id属性。2、[]操作符:[]操作符也可以访问对象的属性,例如${user.id}也可以写成${user["id"] }。当要存取的属性名称中包含一些特殊字符,如“.”或“-”等非字母或数字的符...
2019-12-07 23:49:04
118
原创 session内置对象及其运行机制
session内置对象:1、Web应用中,会话指在一段时间内,一个用户通过浏览器与服务器之间进行的一系列的请求和响应的交互过程。在一个会话中,用户可以访问该Web应用系统中包括网页在内的多种资源。2、当用户(浏览器)向Web应用服务器发送第一次请求时,服务器会为该用户创建一个唯一标识的会话,会话一直延续到访问结束(浏览器关闭或用户长时间不访问Web应用(默认为30分钟))。JSP使用sessi...
2019-11-18 21:27:00
212
原创 Tomcat软件目录结构
Tomcat软件目录:一、bin:bin目录存放tomact的命令,.sh结尾为linux命令,.bat结尾为windows命令:1.shutdown:关闭tomact。2.startup:开启tomact。二、conf:conf存放tomcat一些配置文件:1.server.xml设置端口号、域名、默认加载的项目、IP等三、lib:lib存放tomcat运行所需要的jar...
2019-11-18 21:14:09
129
1
原创 jQuery插件机制
插件机制:为了扩展jQuery库函数,jQuery提供了两种方式:一、jQuery.extend(object):jQuery.extend(object):扩展jQuery对象本身,主要是用来扩展jQuery全局函数 ,调用时直接$.函数名(参数)。例如:<script> jQuery.extend({ minR:function(a,b){ //找较小值。 re...
2019-11-12 17:10:04
126
原创 jQuery中replaceWith、replaceAll的区别和用法
一、replaceWith()方法:replaceWith(content|fn) :将所有匹配的元素替换成指定的HTML或DOM元素。html代码如下:<span>Hello</span><b>Hello</b><i>Hello</i>jQuery代码如下:<script> $("span,b,...
2019-11-11 20:02:03
1730
原创 jQuery中empty、remove的区别和用法
一、empty()方法:empty() :删除匹配的元素集合中所有的子节点,不包括自身。html代码如下:<p><span>I </span><b>Love You.</b></p>jQuery代码如下:<script> $("p").empty();</script>结果如下,p标...
2019-11-11 19:12:56
209
1
原创 jQuery事件处理
一、bond()方法:bind(type,[data],fn):为每个匹配元素的特定事件绑定对应的事件处理函数,各参数含义如下:1、type表示事件类型,多个事件类型使用空格分隔。2、data表示传递给绑定函数的额外数据对象,函数中使用event.data接收。3、fn表示绑定的函数。代码如下:<input type="button" value="按钮"/><sc...
2019-11-10 20:48:18
146
原创 jQuery中clone()方法的使用
clone()方法:clone([Even[,deepEven]]) :clone方法传入false或不传入值,则后插入的按钮没有事件;传入true,则复制元素的同时也复制元素中的的事件 !html代码如下:<input type="button" value="按钮"/>jQuery代码如下:1、为true时:<script> $("[type='butt...
2019-11-10 19:38:15
251
原创 jQuery中wrap、wrapAll、wrapInner的区别和用法
一、wrap()方法:wrap(html|ele|fn):把所有匹配的元素用其他元素的结构化标记包裹起来。html代码如下:<span>百度</span><span>百度</span>jQuery代码如下:<script> $("span").wrap("<a href='http://www.baidu.com'&...
2019-11-10 19:26:13
417
1
原创 jQuery中after、insertAfter的区别和用法
一、after()方法:after(content|fn) :向每个匹配的元素后插入内容。html代码如下:<span id="content">I love </span>jQuery代码如下:<script> $("#content").after("<span>you.</span>");//after:在标签的外部插...
2019-11-09 20:54:39
1200
原创 jQuery中append、appendTo的区别和用法
一、append()方法:append(content|fn) :向每个匹配元素内部的末尾处插入内容,简单说就是在标签中插入内容。html代码如下:<p id="content">I love </p>jQuery代码如下:<script> $("#content").append("<span>you.</span>");...
2019-11-09 20:37:38
345
原创 jQuery中next方法、nextAll方法
一、next()方法:next([expr]) :取得一个包含匹配的元素集合中每一个元素紧邻的后面同辈元素的元素集合。html代码如下:<form> <input /> <input id="sex" type="radio" value="0"/>男 <input type="submit" /> <input />&l...
2019-11-09 20:27:01
2273
原创 jQuery中的parent方法、parents方法
一、parent()方法:取得一个包含着所有匹配元素的唯一父元素的元素集合。html代码如下:<form> <input type="radio" value="0"/>男<input type="radio" value="1"/>女</form>jQuery代码如下:<script> var dom = $("[ty...
2019-11-09 19:59:52
10593
原创 Servlet获取form表单数据
整体步骤如下:一、创建Dynamic Web Project项目。二、在该项目的WebContent中创建login.jsp的jsp文件。三、在Java Resources的scr中创建servlet文件,名为L
2019-10-31 22:47:44
5331
原创 JavaScript 校验表单(不通过不提交后台)
校验表单两种方式:一、通过onsubmit()方式来检查用户名密码是否输入:代码如下(有注释):<script> function check() { var element = document.getElementById("user_name");//获取用户名的输入元素标签 if(element.value=="")//如果用户名为空,提示并返回false ...
2019-10-27 22:49:30
2853
原创 JavaScript事件触发 HTML添加事件
常用事件:Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态,常用事件如下:注意:onsubmit事件使用需要满足以下三点:1、必须是form标签中的input,而且input的type必须是submit。2、onsubmit的调用时必须加return。3、调用方法必须返回true或者false。代码如下:<script>...
2019-10-21 15:58:38
858
原创 JavaScript 动态显示当前时间
<span id="time"></span><script> function time(){ var date = new Date(); var year = date.getFullYear(); var month = date.getMonth()+1;//月从0开始要加一 month = month<10?"0"+mont...
2019-10-21 15:10:43
208
原创 JavaScript关系运算符==与===的区别
==:用于一般比较,不区分数据类型,只区分内容是否相等;如果两个数据的数据类型不同,则在比较前会先将数据类型进行转换。console.log(1=='1'); //为true===:用于严格比较,只有数据类型相同且值相等的两个数据才会返回true。console.log(1==='1'); //为false注意:console.log(null==undefined); //为t...
2019-10-19 21:08:26
179
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人