JAVA
月色MOON
这个作者很懒,什么都没留下…
展开
-
SpringBoot项目启动时运行方法
在SpringBoot中,有两种接口方式实现启动执行,分别是ApplicationRunner和CommandLineRunner,除了可接受参数不同,其他的大同小异ApplicationRunner :import org.springframework.boot.ApplicationArguments;import org.springframework.boot.Applicat...转载 2019-10-12 17:22:39 · 1828 阅读 · 0 评论 -
深入拆解 Java 虚拟机 】Exception异常笔记
【深入拆解 Java 虚拟机 】Exception异常笔记try-with-resource语法糖finallytry-with-resource语法糖try后对象的close方法都会被运行。package com.exception.demo;public class Foo implements AutoCloseable { private final String name...转载 2019-05-05 17:12:06 · 194 阅读 · 0 评论 -
log4j2.xml配置笔记
转载自阿豪聊干货:https://www.cnblogs.com/hafiz/p/6170702.htmlConfigurationConfiguration最外层节点status:日志打印级别monitorinterval:重新配置的监测间隔时间–Appenders----Console定义输出到控制台的Appender.name:指定Appender的名字.target:...转载 2019-06-20 15:11:08 · 407 阅读 · 0 评论 -
JAVA反射使用父类的非public方法(getMethods()和getDeclaredMethods()区别)
getMethods()和getDeclaredMethods()区别虽然是老生常谈了,但是还是要先说一下两者的区别。getMethods():能够获取类的所有public方法,包括自身定义的以及从父类继承的。getDeclaredMethods():能够获取类本身的所有方法,包括private方法,实现的接口方法,但是不能获取从父类继承的方法。因此getDeclaredMethods()...原创 2019-06-17 15:45:58 · 2964 阅读 · 0 评论 -
Interceptor拦截器无法拦截根目录的解决方法
今天发现了一个bug,首页home.jsp的某一个值是通过拦截器拦截所有页面,然后赋值的,然而我们的首页是通过index.jsp直接引用首页home.jsp代码(如下),拦截器无法拦截。<%@ include file="./WEB-INF/jsp/home.jsp" %>首先,第一个解决方法就是,将首页的引用文件改为跳转即可<html><head>&...原创 2019-07-15 15:27:29 · 1929 阅读 · 0 评论 -
Swagger详解(SpringBoot+Swagger集成)
Swagger-API文档接口引擎Swagger是什么Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。在项目开发中,根据业务代码自动生成API文档,给前端提供在线测试,自动显示JSON格式,方便了后端与...转载 2019-09-03 20:43:20 · 1122 阅读 · 1 评论 -
利用Redis对MySQL查询做缓存提高查询速度
MySQL配置application.properties中配置数据源spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=falsespring.datasource.use...原创 2019-09-05 18:11:39 · 2806 阅读 · 0 评论 -
Spring注解配置定时任务,运行时间超出间隔时间
@EnableScheduling@Scheduled有三种配置方式cronfixedRatefixedDelaycron是固定时间进行处理fixedRate任务执行间隔是两次任务是开始点,如果执行时长超过间隔,那么会在任务执行结束后立刻执行下一次,除非用@Async注解了fixedDelay任务执行间隔是前次任务结束和下次任务开始点这篇文章主要探讨的是如果任务执行时间超过了定...原创 2019-09-09 14:03:39 · 6793 阅读 · 1 评论 -
SSO单点登录流程记录
单点登录流程向W1发送请求验证页面,重定向到SSO向SSO发送请求,如果存在cookie,则返回token浏览器将token发送给W1,W1到SSO验证token通过后跳转响应验证页面向W1发送请求验证页面,重定向到SSO向SSO发送请求,若不存在cookie,重定向到W1登录页提交登录信息,W1将登录信息发送给SSO验证身份信息SSO验证成功并生成...原创 2019-09-27 17:13:41 · 272 阅读 · 0 评论 -
Spring事务的七种传播行为小结
最常用的属性是1和4。1.PROPAGATION_REQUIRED如果事务存在,则支持当前事务,如果没有事务则开启一个新事务。2.PROPAGATION_SUPPORTS如果存在事务,则支持当前事务,如果不存在,则以非事务方式执行。3.PROPAGATION_MANDATORY如果存在事务,则支持当前事务,如果不存在,则抛出异常。4.PROPAGATION_REQUIRES_NE...原创 2019-03-08 13:11:39 · 325 阅读 · 0 评论 -
严重: Servlet.service() for servlet [jsp] threw exception javax.el.ELException:
严重: Servlet.service() for servlet [jsp] threw exceptionjavax.el.ELException: The identifier [package] is not a valid Java identifier as required by section 1.19 of the EL specification (Identifier :...原创 2018-11-23 15:54:31 · 6181 阅读 · 0 评论 -
org.hibernate.transaction.JDBCTransaction cannot be cast to javax.transaction.Transaction
org.hibernate.transaction.JDBCTransaction cannot be cast to javax.transaction.Transaction这部分的具体地方为Transaction tr =(Transaction) session.beginTransaction(); 错误原因:包倒错了,应该导入的包是hibernate的Transaction包...转载 2018-05-28 11:15:23 · 898 阅读 · 1 评论 -
POM文件第一行报错org.apache.maven.archiver.MavenArchiver.getManifest
前几天新建maven项目时,系统自动生成的POM文件第一行总是报错org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration)百思不得其解,明明是自动生成的怎么还会...原创 2018-07-29 10:54:48 · 2720 阅读 · 0 评论 -
Unsupported major.minor version 52.0 错误解决方法
自己前些天的项目突然出现这个问题,经过仔细排查,发现有两个原因都会导致这个问题。第一个就是POM文件中的dependency重复,如果使用的是maven导入,重复写入dependency就会出现该错误。第二个是版本不匹配,即所引用的jar包太新,并不匹配你的jdk,因为我们正常用的都是jdk7,但是现在已经更新到jdk10了,好多最新版本最新版本的jar包都是基于最新的jdk编写,所以可以...原创 2018-07-29 11:03:00 · 2935 阅读 · 0 评论 -
Strut2环境搭建中的ClassNotFoundException和InstantiationError错误详解
前些天学习Strut2,配置环境的时候一直报错,主要遇到两个错误,特此记录,希望能帮助到其他同学。1.这个错误是由于struts2-core和struts2-convention-plugin 的版本号不匹配,要将它们设为一致。严重: Exception starting filter struts2 java.lang.InstantiationError: com.opensymph...原创 2018-07-29 11:12:36 · 371 阅读 · 1 评论 -
Enum枚举类的基本应用以及实现单例模式
在看设计模式时看到单例模式的最简便和最安全的方式就是应用枚举类。以前学习java基础的时候都说枚举类没有必要进行学习,现在才发现是因为很多人都对枚举类不了解,并不知道它的强大之处。枚举类对于需要建立有限个对象的类有很大优势,因此很适合用来建立单例模式,但是又不止局限于单例模式。1. 首先是枚举的最基础的应用方式,即单例模式。enum Student{ INSTANT; private...原创 2018-08-12 14:27:19 · 486 阅读 · 0 评论 -
请求转发和请求包含
1、Servlet 容器 编程中的容器我们可以理解为程序运行时需要的环境,那么Tomcat 就是Servlet 的运行环境,就是一个Servlet 容器。Servlet 容器的作用是负责处理客户请求,当Servlet 容器获取到用户请求后,调用某个Servlet,并把Servlet 的执行结果返回给用户。 Servlet 容器的工作流程: ● 当用户请求某个资源时,Servlet 容...转载 2018-08-12 14:32:32 · 3083 阅读 · 0 评论 -
Maven Web项目的导入的完整过程以及JDK版本问题
之前导入maven项目时,经常会遇到各种问题,不是jdk版本不对,就是生成的项目路径不对,或者各种报错,踩了好多坑,大概是由于太基础了,网上也找不到关于项目导入的完整过程,特把自己完善的导入过程记录下来备用,也希望能帮助到一些人。1、导入Existing Maven Projects,选中项目,next,next,finish。之后跳出的Project Migration直接点击Cancel...原创 2018-11-15 16:16:58 · 623 阅读 · 0 评论 -
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
导入新项目时可能会报如下错误严重: Error configuring application listener of class [org.springframework.web.context.ContextLoaderListener]java.lang.ClassNotFoundException: org.springframework.web.context.ContextL...原创 2018-11-16 14:53:55 · 180 阅读 · 0 评论 -
JAVA多线程中join()方法的详细分析
虽然关于讨论线程join()方法的博客已经非常极其特别多了,但是前几天我有一个困惑却没有能够得到详细解释,就是当系统中正在运行多个线程时,join()到底是暂停了哪些线程,大部分博客给的例子看起来都像是t.join()方法会使所有线程都暂停并等待t的执行完毕。当然,这也是因为我对多线程中的各种方法和同步的概念都理解的不是很透彻。通过看别人的分析和自己的实践之后终于想明白了,详细解释一下希望能帮助到...原创 2018-05-06 12:47:53 · 95717 阅读 · 83 评论