- 博客(35)
- 收藏
- 关注
原创 Java8使用Comparator.comparing根据不同状态进行自定义排序
Java8使用Comparator.comparing根据不同状态进行自定义排序场景:对字符串格式的不同“状态”进行排序,一开始想到使用SQL语句的order by if排序,如果是使用mybatis操作数据库的话是没有问题的,直接可以在SQL上进行排序。但是我用的是公司自己封装的数据库,使用order by if 有些会导致SQL查询排序是OK的,但是返回的json并没有排序,那如何对返回的数据进行排序呢?为了解决这个问题,也查了很多资料,大多数是使用年龄、分数或者名字字母进行排序,并没有我想要的
2022-03-27 00:07:11
3995
2
原创 Java设计模式——单例模式
Java设计模式——单例模式一、类图二、实现代码2.1、懒汉式单例2.1.1、单例类2.1.2、访问类2.2、问题分析2.3、饿汉式单例2.3.1、单例类2.3.2、访问类三、运行结果四、总结来源:《您的设计模式》摘要:这个模式是很有意思,而且比较简单,但是我还是要说因为它使用的是如此的广泛,如此的有人缘,单例就是单一、独苗的意思,那什么是独一份呢?你的思维是独一份,除此之外还有什么不能山寨的呢?我们举个比较难复制的对象:皇帝 。中国的历史上很少出现两个皇帝并存的时期,是有,但不多,那我们就认为皇帝
2021-11-15 14:06:38
587
原创 Java设计模式——代理模式
Java设计模式——代理模式一、代码实现1.1、场景一:西门庆与潘金莲1.1.1、接口1.1.2、被代理类1.1.3、代理类1.1.4、客户端1.2、场景二:西门庆与贾氏1.2.1、接口1.2.2、被代理类1.2.3、代理类1.2.4、客户端二、运行结果三、总结来源:《您的设计模式》摘要:什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道被代理人能做哪些事情不能做哪些事情吧,那就是两个人具备同一个接口,代理人虽然不能干活,但是被代理的人能干活呀。比如西门庆找潘金
2021-11-15 09:52:44
452
原创 Java设计模式——策略模式
Java设计模式——策略模式一、类图二、代码实现2.1、"锦囊妙计"接口2.2、实现妙计的方法2.3、锦囊2.4、拆开锦囊三、运行结果来源:《您的设计模式》摘要:刘备要到江东娶老婆了,走之前诸葛亮给赵云(伴郎)三个锦囊妙计,说是按天机拆开解决棘手问题,嘿,还别说,真是解决了大问题,搞到最后是周瑜陪了夫人又折兵呀,那咱们先看看这个场景是什么样子的。先说这个场景中的要素:三个妙计, 一个锦囊,一个赵云,妙计是小亮同志给的,妙计是放置在锦囊里,俗称就是锦囊妙计嘛,那赵云就是一个干活的人,从锦囊中取出妙计,
2021-11-14 13:52:03
443
原创 Java中json文件与json对象之间的转换
Java中json文件与json对象之间的转换一、json文件解析json对象per.json文件内容方式一:相对路径读取方式二:绝对路径读取运行结果二、json对象解析json文件运行结果一、json文件解析json对象per.json文件内容{ "name" : "zhangsan", "age" : 23, "address" : { "homeAddress" : "杭州", "schoolAddress" : "上海" }}方式一:相对路径读取@T
2021-11-10 14:55:52
938
原创 Java中通过某一年的两个时间计算天数
Java中通过某一年的两个时间计算天数1、编写计算方法2、调用测试3、运行结果1、编写计算方法新建一个方法,并传入两个Date类型的时间;使用Calendar类处理日期;DAY_OF_YEAR表示这一天是这个年的第多少天,该处只能计算某一年的时间范围天数;计算时分秒,不足一天按一天处理。public static int getDaysNum(Date day1, Date day2) throws Exception{ //format()方法将Date转换为String
2021-11-10 11:12:35
816
原创 Java中将Map集合、对象、字符串转换为JSON对象
Java中将Map集合、对象、字符串转换为JSON对象1、Map集合转JSON对象2、普通对象转JSON对象3、字符串转JSON对象1、Map集合转JSON对象创建一个Map集合;新建json对象,并将Map引入json中。@Testpublic void demo1(){ //创建一个Map集合 Map<String, String> map = new HashMap<>(); map.put("1729210001","zhangsan")
2021-11-10 09:13:12
3008
原创 Spring Boot学习总结第二篇
SpringBoot学习总结(yaml)一、yaml语法二、了解yaml三、yaml存放内容四、 yaml给属性赋值一、yaml语法spring boot使用一个全局的配置文件,配置文件是固定的。要么是.properties,要么是.yaml,官方推荐.yaml。删掉原来的application.properties配置文件,新建一个application.yaml文件application.properties语法:key=value。application.yaml语法:key:空格valu
2021-05-03 22:57:51
86
原创 Spring Boot学习总结第一篇
SpringBoot学习总结一、创建项目1.1 方式一:Spring官网创建1.2 方式二:IDEA的maven创建1.3 方式三:IDEA的Spring Initializr创建二、Spring Boot案例2.1 第一个Spring Boot程序2.2 banner的使用一、创建项目1.1 方式一:Spring官网创建打开Spring官方网站,使用Spring Initializr创建项目地址如下:https://spring.io/projects/spring-boot#overview
2021-05-03 15:42:31
115
原创 SpringMVC学习总结第一篇
SpringMVC学习总结(注解)一、前期工作(新建项目、导入依赖)二、案例三、总结一、前期工作(新建项目、导入依赖)新建一个web项目。导入依赖<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version&g
2021-05-01 08:08:42
87
1
原创 Spring学习总结第九篇
Spring学习总结(AOP)一、导入依赖二、AOP实现方式一:使用原生的Spring API接口三、AOP实现方式二:自定义类实现AOP四、AOP实现方式三:注解实现AOP一、导入依赖使用AOP织入,需要导入aspectjweaver依赖<dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <vers
2021-04-28 17:55:10
87
原创 Spring学习总结第八篇
Spring学习总结(AOP)一、代理模式1.1 静态代理1.2 动态代理二、动态代理模式三级目录一、代理模式代理模式是Spring AOP的底层;代理模式分为:静态代理和动态代理。代理模式就像租房者、中介、房东三者之间的关系,中介与房东之间有着共同的事情(接口)。1.1 静态代理角色分析:抽象角色:一般会使用接口或者抽象类来解决。真实角色:被代理的角色。代理角色:代理真实角色,代理之后,一般会做一些附属操作。客户:访问代理对象的人。案例:创建Rent接口(租房)//
2021-04-28 13:54:41
86
原创 Spring学习总结第七篇
Spring学习总结(注解开发)一、注解开发需求二、注解详解三、注解案例四、总结一、注解开发需求在Spring4之后,使用注解开发,必须保证aop的包已经导入了使用注解时,需要导入context约束,配置文件中增加注解的支持。二、注解详解注解实现Bean@Component:实现bean组件的定义,放在类上,说明这个类被Spring管理了,就是装配Bean。相当于< bean id=“user” class=“com.dmj.entity.User”/ >注解实现属性
2021-04-20 18:33:32
124
原创 Spring学习总结第六篇
Spring学习总结(自动装配)一、Bean的自动装配1.1 测试环境1.2 byName自动装配1.3 byType自动装配1.4 小结二、注解实现自动装配一、Bean的自动装配自动装配是Spring满足bean依赖的一种方式;Spring会在上下文中自动寻找,并自动给bean装配属性。在Spring中,有三种装配方式:在xml中显示的配置(之前讲过)、在Java中显示配置(以后再讲)、隐式的自动装配bean(重要)1.1 测试环境一个人有两个宠物创建Cat、Dog、People实体类
2021-04-20 16:58:58
123
原创 Spring学习总结第五篇
Spring学习总结(DI依赖注入)一、DI依赖注入1.1 构造方法注入1.2 set方式注入(重点)1.3 拓展方式注入一、DI依赖注入Spring通过DI(依赖注入)实现IOC(控制反转),常用的注入方式主要有三种:构造方法注入,set方式注入,拓展方式注入(p命令和c命令空间)。1.1 构造方法注入上一章已经讲过了,包括有参构造以及无参构造方式。1.2 set方式注入(重点)依赖:bean对象的创建依赖于容器。注入:bean对象中的所有属性,由容器注入。【环境搭建】创建Addr
2021-04-19 17:26:52
64
原创 Spring学习总结第四篇
Spring学习总结(IoC创建对象)一、IoC创建对象的方式1.1 无参构造创建(默认)1.2 有参构造创建(三种方式)一、IoC创建对象的方式1.1 无参构造创建(默认)编写实体类User,并在无参构造方法中输出语句public class User { private String name; public User(){ System.out.println("User的无参构造方法!"); } public String getName
2021-04-19 15:35:32
93
原创 Spring学习总结第三篇
Spring学习总结(IoC的理解)一、IoC理论推导1.1 传统方式1.2 Set 注入二、IoC本质三、IoC实践四、总结一、IoC理论推导1.1 传统方式UserMapper 接口public interface UserMapper { void getUser();}UserMapperImpl 实现类public class UserMapperImpl implements UserMapper { public void getUser(){
2021-04-18 22:53:18
177
1
原创 MyBatis学习总结第六篇
MyBatis学习总结第六篇一、复杂查询环境搭建二、一对多处理2.1 按照查询嵌套处理(不推荐)2.2 按照结果嵌套处理(推荐)三、多对一处理3.1 按照查询嵌套处理(不推荐)3.2 按照结果嵌套处理(推荐)四、总结一、复杂查询环境搭建例子:学生与老师。对于学生而言,多个学生,关联一个老师。属于多对一。对于老师而言,一个老师,集合多名学生。属于一对多。数据库SQL语句CREATE TABLE `teacher`( `id` INT(10) NOT NULL, `name` V
2021-04-18 14:25:51
211
原创 MyBatis学习总结第五篇
MyBatis学习总结第五篇一、注解开发二、注解增删改查三、MyBatis执行流程一、注解开发使用注解开发,我们就不需要UserMapper.xml映射文件了,在UserMapper接口中使用注解@Select。案例如下:实体类和工具类与之前一样。UserMapper接口中定义方法。//使用注解查询所有用户@Select("select * from user1")List<User> getUsers();在mybatis-config.xml配置文件中绑定接口,不需要
2021-04-17 19:02:42
202
原创 MyBatis学习总结第四篇
MyBatis学习总结第四篇一、解决属性名和字段名不一致的问题二、MyBatis内置的日志工厂2.1 使用STDOUT_LOGGING2.2使用LOG4J三、使用Limit分页四、使用RowBounds 分页五、使用MyBatis插件分页一、解决属性名和字段名不一致的问题问题:数据库字段名与实体类中的属性名不一致时,会导致查询结果为空。例如,数据库中为"password",实体类中为"pwd"。查询时会出现以下结果:为了解决这种问题,有以下两个方法。方法一:使用别名(不推荐,没意义)
2021-04-16 21:53:57
149
原创 MyBatis学习总结第三篇
MyBatis学习总结第三篇一、使用db.properties配置文件二、实体类三种别名设置三、总结一、使用db.properties配置文件连接池配置文件db.properties是java中采用数据库连接池技术完成应用对数据库的操作的配置文件信息的文件。里面包括了数据库驱动、url、用户名、密码和以及初始化连接、最大空闲连接、最大连接数量 等等sql语言的信息。创建方式如下:在resources下创建db.properties文件driver = com.mysql.jdbc.Driver
2021-04-15 22:27:57
131
原创 Mybatis学习总结第二篇
Mybatis学习总结第二篇一、在pom.xml中导入相关依赖二、编写MyBatis配置文件三、编写工具类MybatisUtils四、编写User实体类五、编写UserMapper接口六、编写映射文件七、测试(实现增删改查操作)八、数据库操作九、总结一、在pom.xml中导入相关依赖mysql-connector-javamybatisjunit二、编写MyBatis配置文件<configuration> <!-- 配置环境:可以配置多个环境,default:配置某
2021-04-15 19:12:35
274
原创 Mybatis学习总结第一篇
Mybatis学习总结第一篇一、mybatis的环境搭建二、环境搭建的注意事项三、mybatis入门案例(xml文件开发)四、使用注解开发一、mybatis的环境搭建第一步:创建maven工程并在pom.xml中导入相关依赖 <!--打包方式为jar--> <packaging>jar</packaging> <dependencies> <dependency>
2020-10-27 09:20:50
336
原创 MVC模式与三层架构关系
MVC模式与三层架构关系MVC模式三层架构两者关系MVC模式模式结构M:Model,模型层;表示应用程序核心(比如数据库记录字段)。V:View,表现层;显示数据(数据库记录)。C:Controller,控制层;处理输入(写入数据库记录)。最典型的MVC就是JSP + servlet + javabean的模式。结构图三层架构三层架构与MVC设计模式的目标一致:都是为了解耦合、提高代码复用;两者的区别就是,两者对项目理解的角度不同。三层组成表示层(USL, User Show
2020-10-23 11:39:10
224
原创 Java Web—servlet入门案例
Java Web—servlet入门案例一、新建动态web项目二、新建Servlet类三、编写jsp文件四、运行结果五、总结一、新建动态web项目新建动态web项目:File—>new—>Dynamic Web project然后next—>next,之后完成二、新建Servlet类在Java Resources中的src目录下创建包,再new一个LoginServlet类,LoginServlet类属于一个普通类,如果extends(继承)了HttpServle
2020-10-16 09:44:25
423
原创 Java Web-Servlet入门详解
Java Web-Servlet一、什么是Servlet二、Servlet的生命周期2.1 Servle生命周期阶段2.2 Servlet生命周期原理三、HttpServletRequest(请求)与HttpServletResponse(响应)四、ServletContext与ServletConfig4.1 概念4.2 ServletContext 案例4.3 ServletConfig案例五、转发与重定向5.1 转发与重定向的区别5.2 页面跳转例子说明5.3 跳转页面带数据例子5.3.1 转发5
2020-10-15 09:47:01
345
原创 Java Web-XML入门详解
Java Web-XML入门一、XML概述XML的基本概念XML(Extensible Markup Language,可扩展标记语言)允许开发者自由定义标签,可以将标签和内容有效分离XML不再侧重于数据如何展示,而是更多地关注数据如何存储和传输XML的应用场景XML把数据从HTML分离出来简化数据共享简化数据的传输简化平台的变更XML的优势简单易用的标记语言严格的格式数据逻辑和显示逻辑分离HTML注重于显示,XML着重于数据存储二、XML文档规则XML整体结
2020-10-13 16:01:43
212
原创 Java Web-JSP内置对象详解
Java Web-JSP内置对象一、JSP内置对象简介1、HTTP协议HTTP协议:超文本传输协议。代表客户端(用户)与服务器端(网站)进行交流中采取的数据传输方式是超文本。HTTP请求:客户端在输入某一个网址访问web资源当中,这个过程中就叫做HTTP请求。请求的过程其实就是传递一个超文本信息。HTTP响应:服务器端接收请求之后,通过超文本传输协议,将web资源响应给客户端。2、JSP内置对象请求与响应模式JSP内置对象:内置对象(又叫隐含对象,有9个内置对象
2020-10-13 11:18:55
165
原创 Java Web-JSP详细入门
本文来源:网上教程,Java Web—JSP入门Java Web技术介绍Java WebJava Web是用Java技术来解决相关web互联网领域的技术总称。需要在特定的web服务器上运行,分为web服务器和web客户端(浏览器)两部分。跨平台,能够在多个不同平台下布署与运行。需要哪些技术基于页面的前端技术,如HTML、CSS、JavaScript等。动态语言技术,如Java、JSP等。数据库的技术,如Oracle、MySQL、SqlServer等。其他工具与组件,如服务器,.
2020-10-12 08:48:45
334
1
原创 Spring学习总结第二篇
Spring第二篇(入门程序实例)一、创建maven项目二、导入相应的jar包三、创建Java目录3.1 创建UserDao接口3.2 创建UserDaoImpl实现类3.3 创建TestIoc测试类四、 新建resources目录五、执行结果六、总结一、创建maven项目打开IDEA,创建maven项目,操作如下:二、导入相应的jar包可以在官网https://mvnrepository.com/找到相应的包(4个基础包和1个commons-logging包),将代码复制到pom.xml依
2020-09-29 15:19:08
252
原创 Spring学习总结第一篇
Sping第一篇一、Spring概述二、Spring简介三、Spring框架优点四、Spring框架的体系结构4.1 核心模块(CoreContainer)4.2 AOP模块4.3 Web模块4.4 数据库模块4.5 Spring的下载及目录结构4.5.1 Spring框架包4.5.2 第三方依赖包五、Spring的核心容器5.1 BeanFactory(不常用)5.2 ApplicationContext5.2.1 ClassPathXmlApplicationContext5.2.2
2020-09-29 14:49:55
621
原创 连接MySQL出现警告问题:Establishing SSL connection without server‘s identity verification is not recommended.
今天在做Java连接MySQL(JDBC)的时候,八个基本步骤已经完成,对数据库的数据也可进行正常的增删查改,可是IDEA还是会出现警告⚠,如下图所示具体内容:Mon Sep 28 11:16:19 CST 2020 WARN: Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requ
2020-09-28 11:47:01
608
原创 如何将maven源的settings.xml文件修改为国内阿里云镜像?
如何将maven源的setting.xml文件修改为国内阿里云镜像?步骤一:打开maven中的setting.xml文件步骤二:新建一个maven-repo文件夹步骤三:查看是否修改成功步骤一:打开maven中的setting.xml文件在maven文件中的conf文件中更改setting.xml文件,注意的是更改之前先备份一下setting.xml.bak(bak 是backup的缩写,备份的意思),以免出错,以防万一。步骤二:新建一个maven-repo文件夹自己在一个盘下建一个文件夹mave
2020-09-27 16:46:19
2949
原创 判断MySQL安装是否成功的两种验证方法
如何判断MySQL是否安装成功?一、控制台cmd窗口验证功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入一、控制台cmd窗口验证win+R打开命令提示符,输入cmd。如下图所示找到MySQL的bin文件目录C:\Pro
2020-09-24 08:33:37
64131
14
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人