spring
文章平均质量分 78
博大的Java世界
主要从事Java开发工作,熟悉web前端技术,如JS,JQUERY,DIV CSS,熟悉数据库如oracle,以及流行的后端开发框架,如spring,springMVC,mybatis,微服务,熟悉tomcat,weblogic服务器部署等。
展开
-
Weblogic10 升级Weblogic12c 关于jersery#1的兼容问题
weblogic12c 与cxf 冲突原创 2022-06-20 22:03:36 · 1110 阅读 · 1 评论 -
Jersey Rest 异常统一处理机制
前言: 异常分为运行时异常和非运行时异常,所谓的运行时异常是指那些不需要异常捕获的异常,总是交由虚拟机接管,如:ArrayIndexOutOfBoundsException,我们在写程序时,并没有使用try..catch来捕获它。 以前,我们进行项目开发时,习惯性的喜欢使用大量的try...catch...finally方法来进行异常处理,并且,只是将异常信息保存到log日志中即可,并没有将一些异常信息以可读性的方式返回给前端用户。而在一些比较大的项目中,进行异常统一处理是架构师...转载 2020-12-01 10:31:34 · 277 阅读 · 0 评论 -
Spring 容器 与SpringMVC容器知多少
首先在我们开发中会与到各种各样的容器,今天我们就说一下spring 容器与springmvc容器,其实这两个没有必要是说spring 容器或者说springmvc 容器,其实这两个都会执行spring 核心方法refreash();其实有时候网上有说这两个容器的区别,我感觉这个没有不是很容易说的问题,这个问题比较较真,其实spring 容器我感觉是spring 运行环境,各种组件、处理器等等的一个总称。这两个也是侧重点不同才有了不同的叫法。1、spring 容器/** * spring 容器初始原创 2020-09-20 19:02:25 · 354 阅读 · 0 评论 -
httpservetreuqest 如何转换MultipartHttpServletRequest
解决方案:在我们spring 中配置一个对应处理器就可以了,在我们的action 中注入一个CommonsMultipartResolver 通过此对象获取MultipartHttpServletRequest 对象,具体如下: <bean id="userOrganSynAction" name="/userOrganSynAction.do" class="com.szpl.specialaction.base.web.UserOrganSynActi...原创 2020-05-19 19:16:15 · 1890 阅读 · 0 评论 -
Java HttpClient 发送https post请求
我们在使用java jdk的net包中HttpURLConnection,发送http post请求时ok,但是要发送给https post请求的时后,就不行,往往会报下面的错误:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building fa...转载 2020-04-12 22:38:01 · 4079 阅读 · 0 评论 -
MySQL数据库面试题(2020最新版)
2020各个知识点面试地址:https://blog.csdn.net/ThinkWon/article/details/104778621?depth_1-utm_source=distribute.pc_feed.none-task-blog-alirecmd-1&request_id=&utm_source=distribute.pc_feed.none-task-blog-...转载 2020-04-09 00:08:04 · 250 阅读 · 0 评论 -
启动SpringCloudEureka 报错: Cannot execute request on any known server
产生此错误就是未找到注册中心服务,使得我们没有注册成功。我遇到时首先查看eureka 服务端是否成功,是否开启校验,然后我们在客户端配置此时启动我们的客户端,会报标题错误,此时我们应该注意既然我们的注册中心开启了校验,那么我们需要清楚我们需要普通的安全机制肯定校验访问链接或者是普通的防漏洞等,那么我们需要自定义我们的访问服务的定制:启动注册中心,然后启动我们的客户端此时我们...原创 2020-04-06 12:16:20 · 367 阅读 · 0 评论 -
eureka 启动提示:Address already in use: bind
首先确认一点就是我们配置的端口被占用了,首先我们找到占用进程:1.进入cmdnetstat -ano|findstr “10000”2.打开任务管理器,通过进程id 查找服务查看确实有服务占用,所以我们如果是无非紧要服务可以进行结束,同时也可以修改我们服务端口配置...原创 2020-03-21 11:14:33 · 856 阅读 · 0 评论 -
Jersey写Restful接口获取参数的问题
一:PathParam@PathParam使用该注释获取参数时可以获取URI中制定规则的参数例如: //该类的路径为/user @GET @Path("{username"}) @Produces(MediaType.APPLICATION_JSON) public User getUser(@PathParam("user...转载 2020-03-16 13:33:03 · 231 阅读 · 0 评论 -
Springboot 自定义项目异常,错误页面错误数据
一个系统中避免不了一个就是错误信息,所以我们有必要自己定义灵活的友好的错误信息,在此之前我们有必要了解一下springboot 的错误处理机制。首先我们知道在springboot 应用中我们@SpringBootApplication 注解,其中最主要的就是我们自动配置类,它启动了一个选择器AutoConfigurationImportSelector这个类中selectImports ...原创 2020-03-15 22:23:31 · 553 阅读 · 0 评论 -
springboot 使用国际话自定义localeResolver 不生效
今天闲着没事,搞一下springboot ,当阅读官方文档i18n 时,闲来没事想搞一下。下面简单步骤:关键步骤:我们首先想到国际化跟locale 有关,使用springboot 最关键的就是看自动配置,那么我们首先看下webmvc 自动配置类,国际化关键配置,大概意思就是如果容器中没有LocaleResolver 对象,如果没有该对象就创建一个LocaleResolver 。这点是关键,...原创 2020-03-14 20:56:45 · 1979 阅读 · 1 评论 -
Java生成短链接
因公司推广需要,需要一套短链接生成方案,正好前几天在MSDN看到有人发了一个.net版的短链接算法,我就把它转换成java版,拿出来共享一下生成思路:1.将"原始链接(长链接)+key(自定义字符串,防止算法泄漏)"MD5加密2.把加密字符按照 8 位一组 16 进制与 0x3FFFFFFF 进行位与运算,把得到的值与 0x0000003D 进行位与运算,取得字符数组 chars 索引...转载 2019-12-08 23:30:01 · 2062 阅读 · 0 评论 -
Springboot 常用注解总结
一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。@Configuration 等同于spring的XML配置文件;使用...原创 2019-12-08 10:25:12 · 131 阅读 · 0 评论 -
定制自己的springboot start
1.首选通过springboot 源码我们要知道其规范spring 提供的startspring-boot-strat-XXX.jarsprng-boot-xxx-autoconfig-x.y.z.jar第三方startxxx-spring-boot-x.y.jarxxx-spring-boot-autoconfig-x.y.jar2.定制自己的start1)创建...原创 2019-12-04 00:42:55 · 565 阅读 · 0 评论 -
javax.annotation 注释类型 PostConstruct
*/@Documented@Retention (RUNTIME)@Target(METHOD)public @interface PostConstruct {}这是元注解,PostConstruct 注释用于在依赖关系注入完成之后需要执行的方法上,以执行任何初始化。此方法必须在将类放入服务之前调用。支持依赖关系注入的所有类都必须支持此注释。即使类没有请求注入任何资源,用 P...转载 2019-12-02 22:35:25 · 3367 阅读 · 0 评论 -
spring aop 代理生成入口剖析
spring 容器初始化是一个很复杂的过程,今天我们就简单追踪一下spring aop 的入口,网上也有很多的博客说明,但是有的阐述的不是很准确。对于容器初始化其实有很多入口,但是不管从那个入口初始化,最终会调用AbstractApplicationContext 类中refresh()。这个是容器初始化核心,通过finishBeanFactoryInitialization()方法进行类的创建及...原创 2019-11-09 21:49:23 · 604 阅读 · 1 评论 -
webAppRootKey作用
log4j是很好用的一个工具,在目前的WEB项目中经常使用。配上jakarta的common logging和Eclipse的插件Log4E很好用。不过还是有几个不太方便的地方:1 Log4j的配置文件修改了之后必须重启才能生效2 配置文件只能放在WEB-INF/classesSpring对于Log4j有了更好的增强,配置文件修改后不需要重启,不用再放到WEB-INF/cla...转载 2019-11-09 13:17:10 · 136 阅读 · 0 评论 -
Spring解决单例bean线程不安全问题
首先我们应该知道线程安全问题一般发生在成员变量上,这是为什么啦?因为成员变量是存放在堆内存中,而堆内存又是线程共享的,这就造成了线程安全问题因为Spring中的Bean默认是单例的,所以在定义成员变量时也有可能会发生线程安全问题。下面我们就来研究下如何解决Spring中单例Bean的线程安全问题@RestController//@Scope("prototype")public...转载 2019-11-05 23:49:45 · 1062 阅读 · 1 评论 -
Springboot系列 Swagger2-生成RESTFUL接口文档
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。开始1、pom.xml 添加依赖:<!-- swagger RESTful API 文档 --><dependency>...转载 2019-11-03 23:06:40 · 100 阅读 · 0 评论 -
Spring 中IOC,DI等源码分析
今天没事看了一下spring源码,花了半天时间整理的spring 容器启动的流程分析,总结了一个思维导图,通过这个导图可以清晰的了解spring内部流程,一下部分导图,如果想要请下载,有了这个思维导图,可以帮助大家进行源码分析及内部实现。下载地址:https://download.csdn.net/download/xiaocai9999/11954692...原创 2019-11-03 17:12:51 · 205 阅读 · 0 评论 -
Spring Boot 面试
随着 Spring Boot 使用越来越广泛,Spring Boot 已经成为 Java 程序员面试的知识点,很多同学对 Spring Boot 理解不是那么深刻,经常就会被几个连环跑给干趴下了!比如下面这一段的 Spring Boot 问答:问:你觉得 Spring Boot 最大的优势是什么呢?答:Spring Boot 的最大的优势是“约定优于配置“。“约定优于配置“是一种软件设...转载 2019-07-24 11:39:45 · 208 阅读 · 0 评论 -
Spring经典面试题和答案
Spring 概述1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。2. 使用Spring框架的好处是什么?轻量: Spring 是轻量的,基本的版本大约2MB。 控...原创 2019-07-28 20:06:28 · 106 阅读 · 0 评论 -
spring2.5.6+JDK1.8报错的解决办法 Context namespace element 'annotation-config'或ComponentScan配置 jdk1.5
最近系统为了兼容springboot项目,需升级jdk,为了避免风险暂时不进行spring升级,所以启动idea项目jdk1.8环境时,报jdk版本太低,开始郁闷明明环境使用的是1.8,怎么会报这个错误。后来查看spring2.5.6版本,在进行获取xml元数据时,namsesapce处理类加载xml配置时会校验配置数据正确性,其中有一项是javaversion检测,看下面源码:我一般是...原创 2019-09-24 16:02:59 · 848 阅读 · 2 评论 -
idea 使用weblogic 10 版本启动报Unsupported major.minor version 52.0问题
由于项目升级jdk,所以重新编译代码,部署weblogic报如上错误,原因是我们编译jdk版本与服务器运行版本不一致导致,所以升级weblogic12,因为52版本对应weblogic12,安装成功启动错误解决。网上好多是修改idea配置,但是真正遇到并不能解决,所以首先要版本对应。...原创 2019-09-24 16:11:35 · 844 阅读 · 0 评论 -
spring启动component-scan类扫描加载过程---源码分析
最近因为写书的事情,一段时间没有写博客了,有朋友最近问到了spring加载类的过程,尤其是基于annotation注解的加载过程,有些时候如果由于某些系统部署的问题,加载不到,很是不解!就针对这个问题,我这篇博客说说spring启动过程,用源码来说明,这部分内容也会在书中出现,只是表达方式会稍微有些区别,我将使用spring 3.0的版本来说明(虽然版本有所区别,但是变化并不是特别大),另外,这里...转载 2019-02-18 18:06:25 · 197 阅读 · 0 评论 -
spring scope实现原理
继续前面章节的分析,回到AbstractBeanFactory中对bean的获取代码上面来:点击打开链接Java代码 private T doGetBean( final String name, final Class requiredType, final Object[] args, boolean typeCheckOnly)转载 2017-09-03 22:12:33 · 1386 阅读 · 0 评论 -
Spring boot + thymeleaf in IntelliJ: cannot resolve vars
使用IntelliJ 创建html时,在使用thymeleaf 时,在我们html出现错误波浪线,并且访问时解析错误,此时我们可以声明xmlns进行兼容处理,如下:<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">可以参考:https://stackover...原创 2019-06-30 17:23:58 · 3800 阅读 · 0 评论 -
决 template might not exist or might not be accessible by any of the configured Template Resolvers
1.今天搭建了一个springboot 简单project,在访问静态资源文件时,访问时报标题错误,从网上查询一些此问题的解决方案,但是还是没有解决,如下:2.首先检查了相关pom引用没有问题,看上面是没有找到资源页面或者模板解析问题,网上很多种方法,最多的是配置模板引擎问题如下启动之后访问问题仍然存在,简单想一下看一下资源名称这些基本写法有没有问题,结果发现跳转时资源文件名称写错...原创 2019-06-30 10:53:24 · 2047 阅读 · 0 评论 -
springMVC 事物配置的5种方式
Spring事务配置的五种方式 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的。 总结如下: Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分...转载 2018-03-30 12:52:47 · 889 阅读 · 0 评论 -
Spring:源码解读Spring IOC原理
一、 什么是Ioc/DI?二、 Spring IOC体系结构(1) BeanFactory(2) BeanDefinition三、 IoC容器的初始化1、 XmlBeanFactory(屌丝IOC)的整个流程2、 FileSystemXmlApplicationContext 的IOC容器流程1、高富帅IOC解剖2、 设置资源加载器和资源定位3、AbstractApplicationContext...转载 2018-03-01 22:50:13 · 164 阅读 · 0 评论 -
springmvc 适配器详解
大家知道springmvc 是一个非常优良的框架,配置灵活实现简单,只需我们更多的关注我们的业务逻辑。今天我们就通过一个简单的例子模拟适配生成过程。处理器适配器HandlerAdapter1、SimpleControllerHandlerAdapter表示所有实现了org.springframework.web.servlet.mvc.Controller接口的Bean 可以作转载 2018-01-15 14:53:06 · 3017 阅读 · 0 评论 -
xfire 与 spring 结合实例
webservice 开发在服务开发中非常常用,并且有多种实现方式今天我们就看下xfire开发服务实例。这里简单讲述与spring结合的开发实例。1.首先我们需要在项目上下文定义我们的xfire配置文件 xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema原创 2018-01-15 14:28:33 · 1146 阅读 · 0 评论 -
springMVC执行流程及原理
spring的MVC执行原理1.spring mvc将所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求 进行真正的处理工作。2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller.3.DispatcherServlet请请求提交到目标Controller4.Controller进行转载 2018-01-15 10:44:55 · 389 阅读 · 0 评论 -
spring 常见错误
1.log如下org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unnamed bean definition specifies neither 'class' nor 'parent' nor 'factory-bean' - can't gene原创 2017-11-19 22:21:59 · 1365 阅读 · 0 评论 -
springmvc试图解析流程
1.试图解析器流程: 内部资源视图解析器:internationalresourceviewresover;原理解析:分析原理在我们的返回页面打入断点,此时查看我们debuge窗口,在我们dispatcherservlet类中的945行,可以看出mv对象(modelandview)对象,最后调用在render方法中实现原创 2017-07-02 19:37:21 · 228 阅读 · 0 评论 -
spring注解开发之@modelAttribute
1..在我们开发时常常会遇到这样的场景,就是数据库里存在一条数据,但是我在页面form表单中修改其属性值,我未修改的属性在数据库中怎样让其不变呢?此时我们的处理思路一般是这样,就是我在请求目标方法之前将我们查询数据库获取到数据并赋值给实体类,然后传入我们的目标方法中,进而进行业务操作。具体场景如下图: 运行流程:比如我们以USER为例 1.执行@ModelAtt原创 2017-07-02 16:33:16 · 220 阅读 · 0 评论 -
spring字符编码常用配置
在web.xml中配置spring同时设置字符编码过滤器 SetCharacterEncoding org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true SetCha原创 2017-07-02 16:04:38 · 1295 阅读 · 0 评论 -
依赖注入 javax.inject中@Inject、@Named、@Qualifier和@Provider用法
这个是 Java EE 6 规范 JSR 330 -- Dependency Injection for Java 中的东西,也就是 Java EE 的依赖注入。根据 API document 上的说明,被 @Inject 标注的构造、成员字段和方法是可注入的。其包可以在 jcp.org 上找到,并可以在这里下载:https://cds.sun.com/is-bin/INT转载 2017-05-06 10:12:46 · 941 阅读 · 0 评论 -
AbstractWizardFormController
在使用Eclipse或者Netbeans之类的IDE进行开发的时候,如果我们要新建一个工程后者文件,这些IDE通常都会提供多步的向导帮助我们一步步完成相应的部件创建,在某些Web应用程序中,也存在类似的操作场景,比如要注册某个网站的会员,注册过程可能就包括多步,每一步会提示输入某一方面的信息,以帮助我们简化操作流程。对于这种向导式的简单的多页面流程实现,我们可以求助于Abstr转载 2017-01-14 17:12:01 · 675 阅读 · 1 评论 -
Spring事务管理(详解+实例)
Spring事务机制详解Spring事务配置的五种方式Spring中的事务管理实例详解1 初步理解理解事务之前,先讲一个你日常生活中最常干的事:取钱。 比如你去ATM机取1000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉1000元钱;然后ATM出1000元钱。这两个步骤必须是要么都执行要么都不执行。如果银行卡扣除了1000块但是ATM出钱失败的话,你将会损失1000元;如果转载 2017-02-21 23:24:29 · 266 阅读 · 0 评论