- 博客(26)
- 收藏
- 关注
原创 浅谈设计模式
设计模式1、常见的设计模式我们常见的设计模式有工厂模式、代理模式、单例模式、策略模式、观察者模式、包装设计模式、模板方法模式等等。我们在项目代码编写中手写代码用的比较多,一般就模板方法模式、责任链模式,策略模式、单例模式这些,像工厂模式、代理模式这一类模式手写的代码反而不多。这一类手写的不多但是大部分我们使用的Spring框架情况下对其还是能够了解,像我们使用的打印日志方法LoggerFactory,还有我们的时间方法DateFormat在我们的框架底层已经是给我们设计好了的经常直接拿来使用的1.
2022-04-09 23:52:49
234
2
原创 一个故事,讲懂什么是区块链
区块链起源一个故事,讲懂什么是区块链。我们假设在很多年以前,那时候科技还不那么的发达,没有手机没有电脑,甚至还没有出现一个统一的有效的货币。在一个叫做大河村的村子里住着很多村民,因为没有货币所以他们交易的方式便是通过记账的方式。就像下面这张图,村民B向村民A买了100元的猪肉,那么相应的A 的账本上便多了100,记为+100。B的账本上便少了100,记为-100。这就是最原始的交易,村民A和B的账本上都会对这次交易记录一笔。但是如果人数量达到一定程度呢?每产生一笔交易都会实时记录下这一笔,如果当天
2022-01-28 19:13:57
9607
1
原创 MYSQL插入数据时检查字段值是否重复
项目需求现有一张u_ps的车位信息表,对应每个小区的车位id ps_id自增长,每个车位又对应车位编号num,车位id由自增长,车位编号可以根据自己小区情况手动添加设置,但是不能重复,车位编号不能重复。这就需要在新增车位信息的时候代码检验新增的该num在u_ps表中是否存在,存在则抛出异常,不存在则做插入操作。我们的主键为车位id ps_id,我们的思路是当插入一条数据,先查询车位信息表,遍历新的数据中的num是否存在,或者说新增的num在表中是否为空,是则抛出异常,否则执行插入操作。 这是代码逻辑。
2022-01-05 20:37:22
4164
原创 eclipse单元测试写法
eclipse的单元测试有很多种,这里是针对我的项目所编写的测试代码,仅参考代码逻辑,以修改员工信息为例:1、在测试时需要先进行登录操作,拿到token,在这之前将token设置为null:String token = null;2、拿到请求端口地址3、在进行所有的@Test之前都要进行@Before登录测试4、以json格式为主要配置格式,账户密码登录操作系统 rs = HttpClient.operate()设置客户端格式,登录名、方式、空。5、...
2021-12-28 19:47:28
1599
原创 java将数据同时插入到两张表中
要求:xml配置文件中已经配置好sql语句的增、删、改、查,只需要在service层编写java代码实现将数据同时插入到两张表中。以员工和用户为例,在某种环境下员工也是用户,新增员工信息Staff的时候同时将信息添加到用户表User中。xml中已经配置好了sql语句的增、删、改、查,需要在service层中编写java代码达到需求:@Service("addStaff")/**传入staff参数,返回String类型信息**/public String addStaff(Staff staff,S
2021-12-24 20:50:07
5332
原创 查询菜单树的方法
菜单树以查询部门为例,查询的部门的所在菜单,有它的父级菜单和子级菜单,要求通过部门id直接查询该部门所在的部门菜单树以Springboot为例子,该篇为学习笔记/**根据部门id查询部门树**//**自定义的Service可自定义端口,这里我定义的部门树接口是DeptTree**/@Service("DeptTree")public List<Ztree> selectDept(Dept dept,SqlSession sqlSession) throws Exception{ /
2021-12-22 21:03:13
666
原创 throw 和 throws 的区别
我们在运行一段代码,做一个项目的时候遇到BUG、异常是再正常不过的事情。说到异常,异常种类是有很多种的,Throwable就是异常的根类。常见的异常就有在Throwable下的子类 错误 - Error 和 异常 - ExceptionException异常又分为一般异常和运行时异常 RuntimeException(运行时异常不需要代码显示捕获)既然说了异常,那么重点就来了,常用的两个抛出异常的方法throw和throws,单独从外表看一个“s”的区别但用法却大了很多。。。。。thow:...
2021-09-11 20:38:53
534
原创 final、finally和return
final、finally和return众所周知,一提到final就会想到static、一想到try…catch用法就会想到还有个finally、一想到finally就又会引出return与其的关系。那么就来好好理一理这三者:1、final与static的区别首先这两者都是有相同点的:①都可以修饰类,成员变量,方法②都不能用于修饰构造方法其次static可以修饰代码块,final不可以;static不可以修饰方法内的局部变量,final可以;static:static修饰表示静态或全
2021-08-19 14:54:13
526
原创 由浅到深的JDBC
大三学了那么久的java的JDBC一直没怎么用得上,今年有幸在一家公司实习接触了一些项目总算是有那么点点明白了所谓的接口JDBC到底是怎么一回事的了有时候不一定得很会用,那种只封装了几个工具类的一眼就能看出来 啊!这玩意儿是JDBC代码!现在的开发更多的是Mybatis,Hibernate或者Spring Data(个人觉得Spring Data更方便因为用得更多),但是尽管用了很多不同的方法框架去完成项目其实都可以理解为在JDBC上封装了一层嘛,至少我是这么认为的JDBC基础1、什么是JDBC
2021-08-12 11:02:28
94
原创 Spring Boot学习笔记——运行一个简单程序
1、Spring Boot简介简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;2、框架环境搭建准备在使用之前还需要给电脑配置jdk和mavenjdk: 官网下载jdk1.8及以上版本记住自己下载后的保存路径我的路径是:D:\JDK\Java\jdk1.8.0_301打开电脑的高级设置,依次点开:我的电脑-->右键属性-->高级系统设置-->环境变量-->点击新建新建一个...
2021-08-10 13:44:50
252
原创 简单谈谈java注解
java注解此注解非彼注解,相对于开发中配置XML文件,注解更加方便简洁,有了注解在很大程度上可以免去XML一部分任务。1、什么是注解?注解:Annotation简单来说就是代码中的特殊标记,带有@的特殊标记。这些标记会在代码编译、运行、类加载等的时候被读取到,并执行相对应的处理。2、为什么要用到注解?传统方法来讲,我们一般是在配置文件XML中配置我们需要的信息来告诉类该去如何实现运行,通俗点儿讲就像是我们平时看书的时候的标签一样,在使用这段代码时我们或者编译器会先去看你的标签上写了什么,
2021-08-08 18:08:35
132
原创 Exception的try用法
Exception的try用法就在前一两天刚接触并学会了有关Map的一些用法,搞明白了map.add、键值、遍历列表数据等等结果今天就在这基础上又遇到了问题,先上代码private HttpClientParam unPassiveScan(Map<String,Object> map){ Map<String,String> paraMap = new HashMap<String,String>(); try{
2021-08-05 17:39:11
313
原创 private static Logger logger =Logger.getLogger(AssembleMsgService.class)什么意思?
作为一个新人中的菜鸡,最近在看一个项目的代码其中有这么一段看得我很是费解public class AssembleMsgService { private static Logger logger = Logger.getLogger(AssembleMsgService.class);1、Logger logger = logger.getlogger();看到这个会想到这是log4j下的一个方法,log4j是一个开源项目,通过在项目中使用Log4J我们可以控制日志信息输出到控制台、文件、GUI
2021-08-05 17:05:01
2969
原创 java中迭代器的使用
迭代器java中迭代器的作用就是循环的代换*****遍历列表读取数据*****两种遍历用法://for循环遍历for(iterator<类型名> 迭代器名 = 列表名.iterator();迭代器名.hasNext();){ System.out.println(迭代器名.next());}//while循环遍历iterator<类型名>迭代器名 = 列表名.iterator();while(迭代器名.hasNext()){ System.out.printl
2021-08-04 18:30:06
1993
3
原创 Map的使用需注意
MapMap在Java中是一个接口,常见的实现类有: HashMap,LinkedHashMap,TreeMap和ConcurrentHashMap*每个类对应的结构*1、HashMapnew一个HashMap时会发生什么?HashMap有几个构造方法但最主要的就是指定初始值以及负载因子的大小,如果我们不指定,默认HashMap的大小为16,负载因子的大小为0.75.HashMap的大小只能是2次幂假设传一个10进去,实际上最终HashMap的大小是16,传一个7进去。。。。。是8。
2021-08-04 17:50:12
1165
原创 Spring两个核心点
IOC和AOPSpring IOCSpring IOC解决的是对象的管理和依赖问题。我们将需要手动new出来的对象直接放在Spring IOC这个大容器管理中,而这个容器不光可以存放我们的对象还可以帮我们管理这些对象以及他们创建和依赖关系。当我们需要用到这个容器里的对象的时候只需要从里面取出来就行了。在IOC中的两个概念控制反转和注入依赖控制反转: 把原有的自己掌控的事交给别人处理。就像上面刚提到的IOC,我们为了方便省事将一些对象(本应该由我们自己new的对象)交给了IOC,等同于我们将控制权
2021-08-01 00:22:45
161
原创 Msql基础day03----查询
子查询select语句当中嵌套select语句,被嵌套的select语句是子查询from后面嵌套子查询select ....from....group by....;//将以上结果当作临时表tselect t.*,....from(select....from....group by...)t join..on..;在select后面嵌套子查询union(可以将查询结果集相加)//例:查询部门工作岗位是B和A①select ename,job from emp where job in
2021-07-28 15:59:18
98
原创 Mysql基础day02 各种连接查询
查询结果去重复记录distinct关键字(去除重复记录)例:select distinct job from emp;注意:distinct只能出现在所有字段的最前面(后面的字段联合起来去除重复记录)连接查询什么是连接查询?多张表联合查询最终结果。分类SQL92(一些老的DBA可能还在使用,DBA:数据库管理员)SQL99(比较新的语法)表的连接方式划分:内连接:等值连接非等值连接自连接外连接:左外连接(左边是主表)右外连接(右边是主表)全连接在表的连接查询方面有一种
2021-07-28 15:12:24
71
原创 抽象类
1、什么是抽象类? 类和类之间具有共同特征,将这些共同特征提取出来,形成抽象类。 类到对象是实例化,对象到类是抽象2、抽象类无法实例化,无法创建对象,为什么? 抽象类是:类与类之间有共同特征,将这些具有共同特征的类再进一步抽象形成了抽象类。由于类本身是不存在的,所以抽象类无法创建对象。3、抽象类无法实例化但是有构造方法 定义:语法 [修饰符列表] abstract class 类名{...
2021-05-18 22:55:04
114
原创 多态的基础语法
6.1、向上转型和向下转型的概念 向上转型:子---->父 (upcasting) 又被称为自动类型转换:Animal a = new Cat(); 向下转型:夫------>子 (downcasting) 又被称为强制类型转换:Cat c = (Cat) a;需要添加强制类型转换符 什么时候需要向下转型? 需要调用或执行子类...
2021-05-18 22:53:10
73
1
原创 instanceof运算符
instanceof (运行阶段动态判断) 第一:instanceof运算符可以在运行阶段动态判断引用指向对象的类型 第二:instanceof语法 (引用 instanceof 类型) 第三:instanceof运算符的结果只能是true/false 第四: c是一个引用,c变量保存了内存地址指向了堆中的对象 假设(c instanceof Cat)为true表示: c引用指向的堆...
2021-05-18 22:48:38
439
1
原创 mysql基础day01
概念什么是表?语句分类基本操作常用命令条件查询分组函数什么是表?DB:数据库,实际上在硬盘中任意形式存在DBMS:数据库管理系统sql:结构化查询语言,适合于所有的数据库产品(执行过程同java类似),都会进行先 编译再执行。sql(程序员来写)---->DBMS(执行)---->DB表:table时数据库的基本组成单元,所有的数据都以表格的形式组成行和列: 行:被称为数据/记录(data) 列:被称为字段(column)语句分类DQL:查询语句,凡事se
2021-05-18 17:38:15
119
2
原创 智能视频监控设计摄像头部分
图片的长度失败:返回-1;一、cam.h头文件接口函数说明1、函数原型:intcamera_init(char*devpath,unsignedint*width,unsignedint*height,unsignedint*size,unsignedint*ismjpeg);功能:初始化摄像头采集方式参数:...
2021-05-18 16:46:08
683
原创 方法参数
方法参数: 按值调用:方法接收调用者提供的值(不可修改) 按引用调用:方法接收调用者提供的变量地址(方法可以修改) 标准术语:按......调用 而Java中一般采用按值调用总结:1、方法不能修改基本数据类型的参数(即数值型或布尔型) 2、方法可以改变对象参数的状态 3、方法不能让一个对象参数引用一个新的对象无参构造器: 由无参构造器创建对象时,对象的状态会设置为适当的默认值...
2021-05-18 16:37:46
93
原创 final
1、final是java中的关键字2、final表示: 最终的,不可变的。3、final修饰的变量? final修饰的局部变量,一旦赋值就不能重新赋值。(只能赋一次值)4、final修饰的方法? final修饰的方法无法被覆盖,被充血。5、final修饰的类 final修饰的类无法被继承。6、final控制不了能不能调用的问题。final管的是啥? final修饰的表示最后的,不能变的,不能改的。———————fi...
2021-05-18 16:11:48
86
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人