自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一个 MyBatis 的 HelloWord 诞生记

开发工具:IDEA最终目录树如下:一、准备工作1. 新建Maven工程并引入jar包资源 <dependencies> <!--MyBatis的jar--> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.myba.

2020-08-12 18:14:36 35

原创 工厂模式【1.简单工厂模式】【2.工厂方法模式】

简单工厂模式/** * 简单工厂模式:一个抽象的接口,多个抽象接口的实现类,一个工厂类,用来实例化抽象的接口 * * 简单工厂模式优缺点 * 优点:客户端与产品的创建分离,客户端不需要知道产品创建的逻辑,只需要消费该产品即可。 * 缺点:工厂类集成了所有产品的创建逻辑,当工厂类出现问题,所有产品都会出现问题; * 还有当新增加产品都会修改工厂类,违背开闭原则 */public class SimpleFactoryModel { public stati

2020-08-11 21:17:45 46

原创 装饰器模式和代理模式的区别

写在最前:设计模式本身是为了提升代码的可扩展性,灵活应用即可,不必生搬硬套,非要分出个所以然来,装饰器模式和代理模式的区别也是如此。原文章写的非常好:点我跳转摘抄:装饰器和代理模式的区别对装饰器模式来说,装饰者(Decorator)和被装饰者(Decoratee)都实现一个接口。对代理模式来说,代理类(Proxy Class)和真实处理的类(Real Class)都实现同一个接口。此外,不论我们使用哪一个模式,都可以很容易地在真实对象的方法前面或者后面加上自定义的方法。装饰器模式是使

2020-08-11 20:26:39 64

原创 单例模式的实现方式(懒汉式、饿汉式、双重判断、静态内部类)

目录树如图:写在最前:如下五个文件分别对应:1.(懒汉式)最经典的单例模式(多线程时有概率会出现问题)2.(懒汉式、饱汉式)使用同步关键字进行改进,就是将getXXX方法进行同步化, 这样就可以防止多线程引发的问题了,可是执行效率低3.(饿汉式)直接初始化单例对象 private static Singleton uniqueInstance= new Singleton(); 这样在多线程的情况下也能保证只初始化一次4.(双重检测)双重判断获取单例,先将其赋予n

2020-08-11 19:58:39 54

原创 代理模式之【1.静态代理】【2.动态代理】【3.CGLIB】举例说明

第一种:静态代理代码结构树如图:接口类BuyHouse代码如下/** * 第一步:创建服务类接口 */public interface BuyHouse { void buyHosue();}接口实现类BuyHouseImpl(目标对象类)代码如下:/** * 第二步:实现服务接口 */public class BuyHouseImpl implements BuyHouse{ @Override public void buyH

2020-08-11 17:41:11 45

原创 一个通用的PAGE_Util分页类

import java.util.Arrays;import java.util.List;/** * 用于分页的工具类 * * @author 孙久江 */public class PAGE_Util<T> { private List<T> list; // 储存目标对象记录的集合 private int listsize = 0;// 获取上述list的大小 private int total = 0; // 总记录数(创建该工具对象时必须指定!)

2020-08-05 20:17:51 49

原创 前端日期框的一个小工具使用说明

傻瓜式操作,简单使用时不需要看此文章,直接看模板注释即可基于简单使用后的复杂使用说明参数解释:istime : 判断是否时间,如果true则判断时间合法性,乱输入的将提示然后清空format :日期格式,hh:mm:ss则表示需要具体时间,另外,需要先选择时间,再选择日期,因为点击日期后将被认为是选择完毕。festival :true 是否显示节日。注意:只显示国际节日istoday : false 是否显示今天的按钮,默认为显示min :'2020-01-01 00:00:..

2020-07-24 11:01:43 49

原创 在Eclipse中设置并使用Servlet模板文件【附:模板代码】

以下步骤直接见图操作1.如何新建2.如何使用1.正常建立一个Servlet2.清空3.输入s,自动提示,如果没有提示说明你没有配置代码提醒,可按Alt+/手动提示4.回车完成5.模板代码如下package ${enclosing_package};import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpSe

2020-07-23 12:16:27 39

原创 JSP相关知识点总结

JSP为了更好的视觉效果,请移步至我的有道云笔记???? 我的有道云笔记之 — JSPjsp的九大隐含对象(黄色表示常用)request: HttpServletRequest对象response: HttpServletResponse对象(在jsp页面中几乎不会调用它的任何方法)pageContext: 页面的上下文,是PageContext的一个对象,通过它可以获取其他8个隐含对象,也可以获得当前页面的其他信息(自定义标签时使用)session: 代表浏览器和服务器的一次会话,是HttpS

2020-07-21 10:09:25 30

原创 Servlet及JSP的生命周期

Servler的生命周期servlet的生命周期分为以下几个步骤:第一,加载并实例化第二,初始化第三,服务第四,销毁容器启动的时候,会加载servlet的class,并new出这个对象,然后,当用户请求这个servlet的时候,容器会调用init方法初始化这个servlet,这也是整个生命周期中只会调用一次的方法,然后,会调用service方法,由这个方法调用doGet或doPost方法来响应用户,然后,容器在可用资源紧张或是长期没有对Servlet发出请求的情况下,会销毁这个servlet

2020-07-20 10:35:24 25

原创 如何将Eclipse中的项目提交到码云Gitee

1. 注册一个码云账户并登录???? 注册/登录码云入口2.如图所示,创建一个仓库进入如下页面3.创建仓库填写说明1)欲提交的Eclipse项目如图所示2)填写如图所示3)提交即可4.Eclipse中操作填写说明提交完成...

2020-07-17 15:16:21 447

原创 如何使一台机器配置的mysql被同局域网的其他电脑链接?

检查顺序:电脑是否可以互相ping通、端口是否可用、数据库是否设置了来访ip白名单看两台电脑是否可以ping通,如果不能ping通,参考文章:https://jingyan.baidu.com/article/a65957f4f557cb24e67f9ba6.html== ping通之后参考:==https://blog.csdn.net/iloveyougirls/article/details/55095493...

2020-07-17 09:16:55 49

原创 仿MyBatis的一个JDBC_Util工具类

简单、好用使用时依据注释做简单修改即可只有两个静态方法DML与DQLimport java.lang.reflect.Field;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import java.

2020-07-16 16:36:08 36

原创 NavicatPremium12解压版的激活与使用

Navicat Premium是一套多连接数据库开发工具, 让你在单一应用程 序中同时连接多达六种数据库: MySQL、 MariaDB、SQL Server、SQLite、 Oracle 和PostgreSQL,可- -次快速方便地访问所有数据库。请确保智商和视力在线0.请关闭安全类软件1.解压至非中文路径目录下2.找到图示文件,右键以管理员身份运行3.勾选如图所示三项,确认后点击Patch4.依次出现两个弹框,分别点击【是】和【确定】5.切换语言为【简体中文】6.如图两步操作

2020-07-10 21:41:39 176

原创 “==“和equals方法究竟有什么区别?

相同:+ 在equals()没有被重写的情况下,两者均为判断前后所指是否为同一对象不同:1. “== ”是一种比较运算符,而equals()为对象的方法2. 因为“== ”是内置的比较符,所以不存在重写一说,其只能依据前后对象的地址值判断其是否为同一对象;而“equals”是方法,因此可以被重写从而改变默认的功能3. “== ”可以判断基本数据类型,而“equals()”不可以...

2020-07-10 20:36:08 52

原创 char型变量中能不能存贮一个中文汉字?为什么?

可以char型变量是用来存储Unicode编码的字符的,unicode编码字符集中包含了汉字,所以,char型变量中当然可以存储汉字啦。不过,如果某个特殊的汉字没有被包含在unicode编码字符集中,那么,这个char型变量中就不能存储这个特殊汉字。ps:补充说明:unicode编码占用两个字节,所以,char类型的变量也是占用两个字节。...

2020-07-10 20:31:45 42

原创 Java中switch语句作用的数据类型范围

可用于:1.switch可作用于char byte short int2.switch可作用于char byte short int对应的包装类3.String类型在jdk1.7之后才可以,之前不行!不可用于:1.switch不可作用于long double float boolean,包括他们的包装类ps:这是因为switch(expr1)中,expr1只能是一个整数表达式或者枚举常量,而byte,short,char包括其对应的包装类都可以隐含转换为int,其他的并不会自动转换也就不可以了。

2020-07-10 20:27:45 102

原创 Java中&和&&的区别

相同之处:1.在作为逻辑运算符的时候最终体现的效果是一致的,都表示逻辑运输符and,当两边的表达式都为true的时候,整个运算结果才为true,否则为false。不同之处:1.&&更高效,我们称其为“短路与”,因为在进行逻辑运算时,如果左边不成立其不会再判断右边,节约了时间。ps:如果左侧的变量值在右侧有一定出错风险而经&&及时终止将会避免一些不必要的麻烦;例如左侧判断字符串是否为null,右侧调用了该对象的方法(如equals方法),则可避免为此产生的空指针异常。

2020-07-10 20:21:40 136

原创 数据库事务的四个特性

数据库必须具备的四个特性1:原子性:事务包含的所有操作要么全部成功,要么全部失败回滚;成功必须要完全应用到数据库,失败则不能对数据库产生影响;2:一致性:事务执行前和执行后必须处于一致性状态;例:银行转账,用户A和用户B的前加起来一共是10000; 无论AB用户之间是如何相互转换的,事务结束后两个用户的钱加起来还是10000,这就是事务的一致性。3:隔离性:当多个用户并发访问数据库时,数据库为每一个用户开启的事务,不被其他事务的操作所干扰,多个并发事务之间要相互隔离;4:持久性:一个事务一旦被提交

2020-07-10 20:08:38 54

原创 在同一个Java文件中,类名是否区分大小写的问题

Java一个文件中,多个类名称“不会”区分大小写我们知道,在Java开发中是严格区分大小写的,但是有如下情况,看起来好像又不区分大小写了,这是为什么呢?场景如下总结:我们知道,在Java开发中是严格区分大小写的,但是有如下情况,看起来好像又不区分大小写了,这是为什么呢?场景如下在一个public修饰的类所在的文件下,我们定义了两个类,类名分别为:CreateA 和 Createa,两个类名的区别仅仅在于结尾处的字符大小写不同class Create_A extends Thread { @Over

2020-06-30 16:30:52 330

原创 HashSet实现元素对象不可重复的原理(过程)
原力计划

HashSet实现元素对象不可重复的原理现场场景如下:我们有一个学生类,其成员变量如下:private String name;private char sex;private Integer age;private Double score;提供有参构造方法public Student(String name, char sex, Integer age, Double score) { super(); this.name = name; this.sex = sex; thi

2020-06-24 11:13:00 153

原创 Java中关于Scanner类的Next()方法与NextLine()方法的区别

Java中关于Scanner类的Next方法与NextLine方法的区别在使用中发现了如下问题第一种情况: 先使用NextLine再使用Next,且输入的内容中不包含空格可见结果十分正常第二种情况: 还是先使用NextLine再使用Next,但是输入的内容中包含了空格,结果如下:结果显示,第一次的NextLine输出正常,但是第二次的Next却只输出了空格前的内容(空格字符未输出)第三种情况:先使用Next再使用NextLine,且输入的内容不包含空格结果很意外,控制台在第一次打印输出后

2020-06-24 10:19:39 60

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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