javaEE框架与项目
SpringMVC+Spring+MyBatis,框架及其项目笔记。
eddieVim
Undefined
展开
-
对Git的理解与Git常用命令
对Git的理解与Git常用命令这里只整理本人常用的Git命令,与帮助理解Git的机制与思想。GitGit就是一个仓库管理工具,我们可以利用他很好地对代码进行管理,多分支(版本)开发,版本回滚等操作;GitHub是一个代码托管平台,我们可以利用Git将代码放到上面进行托管。分支分支有本地分支,也有远程分支。可以理解为分支之间互不干扰,可以处在不同的开发进度上,通过git checkout命令去切换本地分支,与关联远程分支,达到项目的多版本管理的目的。git init创建一个Git本地原创 2020-09-25 13:16:34 · 112 阅读 · 0 评论 -
Java多线程问题:同时操作同一个对象
在工作中,发现之前留下来的代码遗留有一个问题:代码内有一个多线程的操作,在高并发下,出现部分数据丢失错乱。由于不便展示源代码,写了一个Demo演示相似情况。问题的原因,及其解决方式、结论原因:是由于多线程操作同一个对象,Thread-1操作修改对象时,会导致Thread-2内的对象也发生改变。解决方式:在多线程的入口处,拷贝(可根据具体业务逻辑选择深拷贝与浅拷贝)对象进行传递。结论:Controller层的参数对象在不同的请求中不共享,而若往下层传递同一个对象则会共享同一个对象。演.原创 2020-08-12 10:49:55 · 3922 阅读 · 0 评论 -
关于Maven构造多模块工程
工欲善其事,必先利其器。最近在搭建一个基于dubbo的微服务项目,需要借助Maven引入大量的依赖,这篇博客总结了一些关于Maven的零碎知识点。Maven工程类型1. pom工程pom工程是逻辑工程,用在父工程或聚合工程中,用来做jar包的版本控制。2. jar工程将会打包成jar包,用来打成jar包,即常见的本地工程。3. war工程将会打包成能够发布在服务器上的war工程。Maven工程之间的关系1. 依赖依赖一个工程需要使用到另一个工程的类时,需要引入依赖。传递.原创 2020-08-11 23:12:17 · 177 阅读 · 0 评论 -
中文http-URL请求返回值400
问题描述中文URL链接在谷歌浏览器访问正常而Postman、IE、httpClient访问不正常原因通过浏览器的Console查看到了谷歌浏览器访问的URL,发现:请求的HTTP URL并不是原来的中文URL原创 2020-06-11 15:04:02 · 1394 阅读 · 0 评论 -
SpringBoot较SpringMVC做了什么改进
SpringBoot做了什么?SpringBoot集成了多个优秀的组件,我们不用再去考虑各个组件版本的组合问题,达到开箱即用的效果。又为我们的项目自动做了很多配置,省略去了传统开发繁琐的配置。SpringBoot的配置都存放在WebMvcAutoConfiguration这个类中。我们可以去阅读这个类,去了解SpringBoot做了什么。SpringBoot版本锁定SpringBoot集成了一系列依赖,并锁定了版本,我们只需要去通过需要的依赖,指定对应的groupId和artifactId,而不必原创 2020-06-07 21:11:29 · 1252 阅读 · 0 评论 -
Idea导入Maven工程项目
将项目的Maven仓库设置更改为本地的Maven仓库打开Preference,搜索Maven即可出现,选择地去修改下面三项。(一般修改第一项即可,再在第二项配置一下国内的Maven源)导入Maven工程找到pom.xml文件后,右键弹出操作菜单。选择Add as Maven project…再次右键点击,在弹出的菜单中,选择Maven -> DownloadSources进行下载依赖Jar包即可...原创 2020-06-07 10:11:15 · 291 阅读 · 0 评论 -
Spring相关面试题整理
spring面试题整理什么是Spring框架?Spring框架有哪些主要模块?spring框架是一个为java应用程序开发的一个平台,为java开发者解决了一些基础性问题,精心集成了多个设计模式,使得我们的程序耦合度更低,代码质量更高。主要的模块包括有springCore核心容器,AOP(面向切面编程)模块,数据访问集成模块,Web模块,测试,工具,消息等模块。使用 Spring 框架能带来哪些好处?spring框架是一个轻量级非侵入式的框架,可以很好地做到降低耦合度,可以自由地与其他组件整合集成原创 2020-05-11 15:11:46 · 220 阅读 · 0 评论 -
超时订单处理——延迟消息队列RabbitMQ-TTL-Dead Letter Exchange
实现思路定时任务轮询编写定时任务,处理60分钟前的创建的订单。这种实现方案的缺点是时间精度不高,对系统压力比较大。使用延迟消息队列延迟消息队列,就是消息的生产者发送的消息并不会立刻被消费,而是在设定的时间之后才可以消费。rabbitMQ延迟消息延迟消息涉及到两个概念消息的TTL,与**死信交换器Dead Letter Exchange。TTL(time to live)相当于一个过期时间,当消息队列中的消息在队列存在指定时间未被消费后,就会从当前队列移除。死信交换器Dead L原创 2020-05-09 10:53:01 · 661 阅读 · 0 评论 -
微信支付并回调跳转成功页面的实现思路
遇到的问题当微信支付成功(付款后)后,如何自动跳转页面到付款成功?当我们微信支付成功后有一个回调函数,可以去对订单进行某些处理。但是我们前端与后端是分离的,我们必须从前端再发送一个请求去询问是否已经支付成功,下面是解决这个问题的一些方法。ajax短轮询(常用)每隔几秒钟去通过ajax请求通过api查询是否支付成功。每隔几秒钟去查询的做法相对简单,但是对于服务器的压力是倍数级的。当我们一直未支付的时候,每隔几秒的ajax请求对服务器的压力也是不小。ajax长轮询在一次ajax请求后,我们在内部阻塞原创 2020-05-09 09:48:30 · 6878 阅读 · 5 评论 -
SpringTask-Cron表达式
Cron表达式Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表 一个含义,Cron有如下两种语法:格式:Seconds Minutes Hours DayofMonth Month DayofWeek YearSeconds Minutes Hours DayofMonth Month DayofWeek注意:SpringTask不支持第一种格式,...原创 2020-04-08 22:35:04 · 253 阅读 · 0 评论 -
SSM+Dubbo框架出错调试(HTTP Status 500 - Request processing failed)
HTTP Status 500 - Request processing failed; nested exception is com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method findPage in the service com.pinyougou.sellergoods.service.BrandService....原创 2020-02-24 17:36:17 · 345 阅读 · 0 评论 -
SpringMVC-上传文件
传统Servlet方式上传文件前端页面:注意要设置表单enctype属性:enctype=“multipart/form-data”(将数据以多段的形式发送)。enctype : 属性规定在发送到服务器之前应该如何对表单数据进行编码。multipart/form-data : 不对字符编码。在使用包含文件上传控件的表单时,必须使用该值。<form action="user/fi...原创 2020-03-23 21:26:16 · 61 阅读 · 0 评论 -
SpringMVC响应数据和结果视图
返回值类型1.String直接返回给视图解析器处理,拼接前缀后缀,访问对应的页面。2. void不做任何处理的情况下,会发生404。可以在对应的Controller方法中获取Servlet原生resquest和response进行转发或者重定向。也可以使用输出流直接向浏览器响应:response.getWriter().print("hello");响应中文乱码问题:在输出之前...原创 2020-03-23 16:50:03 · 364 阅读 · 0 评论 -
SpringMVC-数据处理
springMVC接收数据controller的参数名若与请求参数名一致,则框架会帮我们注入,也可以通过配置@RequestParam(“请求的参数名”)注解来帮助框架找到我们需要的属性。若我们的需要将参数注入一个对象,则我们的对象属性名称需要与请求参数相对应。若对象中有引用的对象属性,则请求参数可以为“引用属性名.引用属性的属性名”例如:User user; user.name="...原创 2020-03-22 22:10:52 · 78 阅读 · 0 评论 -
SpringMVC-RestFul风格
RestFulRestful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。个人认为是一种起到安全作用的方法(隐藏变量名)实现方法访问方式:http://ip:port/项目名/add?a=3&b=3@RequestMapping("/add") public String test1(...原创 2020-03-21 21:28:26 · 73 阅读 · 0 评论 -
SpringMVC流程解析
什么是SpringMVCSpring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架。springMVC较Web的Servlet-Jsp的MVC技术做了什么改进?基于spring框架即:加入IoC容器,与AOP特性加入了D...原创 2020-03-21 16:01:51 · 84 阅读 · 0 评论 -
Spring:AOP
什么是AOPAOP(Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。...原创 2020-03-19 17:25:44 · 116 阅读 · 0 评论 -
Spring代理模式
代理模式为什么需要学习代理模式?->>>AOP的底层机制为动态代理静态代理动态代理静态代理静态代理角色分析:抽象角色 : 一般使用接口或者抽象类来实现真实角色 : 被代理的角色代理角色 : 代理真实角色 ; 代理真实角色后 , 一般会做一些附属的操作 .客户 : 使用代理角色来进行一些操作 .静态代理的好处:可以使得我们的真实角色更加纯粹 . 不...原创 2020-03-19 13:05:22 · 134 阅读 · 0 评论 -
Spring注解开发
开始的准备导入相关依赖:Spring-AOP引入context约束<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-inst...原创 2020-03-18 17:55:38 · 75 阅读 · 0 评论 -
spring自动装配
spring自动装配spring自动装配是自动配置各个SpringBean对象依赖的方法,通过springIoC容器spring会在应用上下文中为某个bean寻找其依赖的bean。通过两个操作完成自动装配,让程序员配置步骤减少:组件扫描(component scanning):spring会自动发现应用上下文中所创建的bean;自动装配(autowiring):spring自动满足bea...原创 2020-03-18 17:11:53 · 116 阅读 · 0 评论 -
Spring-DI依赖注入
依赖注入(Dependency Injection,DI)依赖 : 指Bean对象的创建依赖于容器 . Bean对象的依赖资源 .注入 : 指Bean对象所依赖的资源 , 由容器来设置和装配 .pojo测试类package com.eddievim.pojo;public class Address { private String address; private I...原创 2020-03-18 15:07:46 · 68 阅读 · 0 评论