javaWeb项目笔记
文章平均质量分 53
写完bug就找女朋友
努力写bug.....
展开
-
Java核心知识(二):集合
JavaList一共有三个实现类,分别是:`ArrayList`、`Vector`、`LinkedList`ArrayList是最常用的List实现类,`内部是通过数组来实现的`,它允许对元素进行快速随机访问。当从ArrayList的中间位置插入或者删除元素时,需要对数组进行复制、移动,代价比较高。因此,它适合`随机查找和遍历,不适合插入和删除`。原创 2024-06-19 15:26:14 · 877 阅读 · 1 评论 -
CompletableFuture原理与实践
CompletableFuture是Java 8引入的一个用于处理异步编程的类。它提供了一种方便的方式来执行异步操作并处理异步任务的结果。CompletableFuture可以用于执行异步计算、处理任务的结果、组合多个异步任务等。原创 2024-06-18 11:42:00 · 338 阅读 · 0 评论 -
SpringCloud使用Nginx代理、Gateway网关以后如何获取用户的真实ip
微服务架构使用了Nginx代理转发、并且使用了SpringCloud的Gateway统一控制所有请求,现在有个需求: 做一个日子记录切面,需要记录用户请求的ip地址。在上述双重背景下,通过普通的方法获取用户ip地址是不可行的,只能获取到引用部署所在服务器的内网地址,必须要做一系列的设置以后才能正确获取到响应的地址。通过上述设置以后,我们就能正常在request请求头中获取相关信息了。原创 2024-04-25 10:53:15 · 698 阅读 · 6 评论 -
http状态码413,并提示Request Entity Too Large
自己写的网站频繁出现413状态异常问题并且提示Request Entity Too Large,导致需要频繁删除本地cookie;排查了二级域名下的网站发现没有这个问题;原创 2024-04-12 16:30:38 · 1963 阅读 · 0 评论 -
使用最大边界相关算法处理文章自动摘要
对于博客或者文章来说,摘要是普遍性的需求。但是我们不可能让作者自己手动填写摘要或者直接暴力截取文章的部分段落作为摘要,这样既不符合逻辑又不具有代表性,那么,是否有相关的算法或者数学理论能够完成这个需求呢?我想,MMR(Maximal Marginal Relevance)是处理文章自动摘要的杰出代表。原创 2024-01-31 15:01:56 · 570 阅读 · 0 评论 -
枚举+链对缓存实现以读取为主的请求接口
需要给一份问卷进行授权,授权的角色固定为4类,分别是: 农户、企业、金融机构、政府用户,这4类角色定义在字典里面,并且很少改动。这4类角色下面,可能有多个角色,这些角色通过字典的key关联到上述4个类型中的一个;在新增、编辑问卷的时候,需要把这4类所有的角色都展示出来,供管理员选择。原创 2023-12-13 11:25:51 · 365 阅读 · 0 评论 -
Java8 IfPresent 与 forEach 的组合操作
Java8的Optional接口是我们经常使用的一个接口,尤其是对对象进行判空的时候,需要经常使用到。但是,如果是对List进行判空、循环的话,就稍显繁杂了,因为几乎每次对List进行操作的时候,都需要先进行IfPresent,然后再调用forEach();那么,能否自己写一个方法,将这两结合起来呢?原创 2023-12-13 10:10:06 · 747 阅读 · 0 评论 -
Java8 根据自定义属性去重
有一个List集合,里面有n个Answer成员,成员种有m个属性,即:,现在我需要根据(属性不固定),应该如何实现呢?原创 2023-11-28 16:06:10 · 415 阅读 · 0 评论 -
Java8 两个List求差
常规做法就是使用两个循环,遍历两个list,然后使用迭代器删除id相等的数据,这种方法比较简单,但是代码层级比较深,不值得推荐;,当这一项的userId不存在于exitList中时,就选取出来,重新放在一个List列表里面;),如果两个List都包含两种以上的属性,但是功能需求却相同时,又如何实现呢?上述是比较简单的情况,即:一其中个list仅仅包含一个属性(有两个实现方法: 常规方法 和。遍历 userList 中的数据,原创 2023-07-27 20:25:53 · 1817 阅读 · 0 评论 -
Java 使用枚举消除if else
if else判断时写代码过程中非常常见的,但是有些相对比较固定格式的if else判断却是我们可以尽可能避免的,其中,的作用在我们消除if else代码快的作用非常大,那么,我们该如何实现呢?,这样我们就可以不用烦人的if else if代码块判断了.配合使用消除比较固定格式的if else 代码判断了.其中,最重要的就是 枚举变量的。原创 2023-07-27 19:44:16 · 296 阅读 · 0 评论 -
任务队列的Java实现
当前项目中遇到这样一个需求: 将需要审核的文本提交给人工智能模型接口审核,等待模型接口审核完毕以后拿到审核结果返回给前端展示给用户(另:模型处理数据所消耗的时间会随着用户提交数据的复杂度有所变化)。,如果有多个用户在同一时间提交了文本审核需求,且恰好此时此刻模型需要较长时间处理,这样的话,按照通常的代码写法,是无法满足任务需求的,那么应该如何满足这个需求呢?此时此刻,我们可以使用。上述就是任务队列的Java实现基本过程。原创 2023-05-16 10:13:32 · 1752 阅读 · 0 评论 -
Java使用策略模式+工厂模式优化if else 代码
if else if是代码中经常要用的语句块,如果选择分支不多的话还好,当时当选择分支很多的时候,就不能再这样做了;那么有什么办法可以优化多个选择分支结构呢?当选择结构过多时,就不再适用于if else方法了,此时我们可以使用设计模式中的策略模式+工厂模式优化if else语句块.经过上述重构,基本就能解决掉代码选择分支过多的问题。原创 2023-04-13 16:19:49 · 885 阅读 · 0 评论 -
Java 根据网络地址URL获取文件
Java 根据网络地址URL获取文件。原创 2023-03-16 16:11:12 · 6268 阅读 · 0 评论 -
docker启动容器报错No chain/target/match by that name.
造成这个问题的主要原因就是系统。通过以上操作即可解决该问题。原创 2023-02-22 16:01:37 · 1821 阅读 · 0 评论 -
vue枚举
一、需求分析需求背景:在做一个ES查询微服务的时候,后台使用枚举类型约定了0-4这四个数字分别代表查询用户、问答、资源(用户上传的文章)、文章以及所有类型,于是后台传入的参数就只能有这几个,传入其他的数字均视为非法请求。由于后台规定好传入到的参数以后,为了便于维护,前台也应该使用枚举规定传入到后台的参数。后台枚举如下:import lombok.AllArgsConstructor;import lombok.Getter;/** * 搜索类型 */@Getter@AllArg原创 2022-02-18 16:41:23 · 1929 阅读 · 0 评论 -
oauth2 出现 cannot be cast to .security.oauth2.provider.authentication.OAuth2AuthenticationDetails
一、问题背景在使用oauth2获取用户登录信息的时候,如果用户未登录,就会出现 org.springframework.security.web.authentication.WebAuthenticationDetails cannot be cast to org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationDetails;问题如下:二、原因问题出现在以下两句代码: Authent原创 2022-02-09 00:23:02 · 2623 阅读 · 0 评论 -
springcloud提示Caused by: java.lang.IllegalArgumentException: Property ‘sqlSessionFactory‘ or ‘sqlSess
问题描述 入坑springcloud的时候,启动报错,提示 Caused by: java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required,如下图:问题分析 springboot启动方法上面的包名注解写法有误,就会造成以上错误如下所示的错误原创 2021-03-05 23:17:22 · 4394 阅读 · 4 评论 -
maven项目依赖出现Failed to read artifact descriptor for xxx
问题描述 在写springcloud项目的时候,A项目依赖B项目提示出现:Failed to read artifact descriptor for com.wxz:microblog:jar:0.0.1-SNAPSHOT,如下图所示:解决办法 找到被依赖的B项目,将pom文件中的dependencyManagement属性里面的dependencies属性里原创 2021-02-26 14:39:08 · 292 阅读 · 0 评论 -
springboot/springcloud项目热部署
前言 在开发springboot或者springcloud项目的时候修改代码以后经常要点击的就是充钱服务,这样既浪费时间,又浪费精力,如何解决这个问题呢?解决办法 步骤一maven添加热部署依赖插件 <!--热部署依赖插件--> <dependency> <groupId>org.springframework.boo原创 2021-01-19 20:34:57 · 214 阅读 · 0 评论 -
jstl遍历不到属性名
问题描述 使用jstl遍历实体属性的时候, 部分实体无法遍历。问题如下所示:但是我打断点查看明显有该属性并且有值啊!为啥会出现这种情况?观察了大半天终于发现问题所在。解决办法 问题就出在 Email等等提示找不到的属性我在写实体属性的时候,首字母...原创 2020-04-27 23:59:38 · 705 阅读 · 0 评论 -
SpringCloud利用网关拦截做Token验证(JWT方式)
SpringCloud利用网关拦截做Token验证(JWT方式) 2018年09月29日 15:51:50 19八9 阅读数:23更多 <div class="tags-box space"> <span c...转载 2018-10-11 20:40:38 · 30223 阅读 · 11 评论 -
Log4j配置使用的简单教程
Log4j是个好东西,软件运行过程中输出日志都靠他啦。不过因为日常的开发工作,都是直接使用也没有怎么仔细研究过,所以现在好好研究研究。其实Log4j还是很简单的,常用的东西不是很多,配置文件理清楚就明白了。Log4j由三个重要的组件构成:日志信息的级别(level),日志信息的输出目的地(Appender),...转载 2019-11-27 09:46:30 · 213 阅读 · 0 评论 -
解决IntelliJ IDEA中文乱码问题、swing乱码问题
<!--一个博主专栏付费入口结束--> <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-4a3473df85.css"> ...转载 2019-11-20 11:25:20 · 1575 阅读 · 0 评论 -
去掉字符串首尾指定字符
功能需求 (为了印象深刻,在这里我把使用的语境也写出来了,如果各位不想了解语境,直接跳到文末获取方法)现有一张附件表main_tablea_ttachfile、一张房间表room。 现...原创 2019-07-09 09:21:37 · 3590 阅读 · 0 评论 -
将本地项目提交到GitHub/码云
首先你需要一个github账号,所有还没有的话先去注册吧!https://github.com/我们使用gi...转载 2019-07-06 14:11:02 · 262 阅读 · 0 评论 -
几款开源富文本编辑器优缺点比较
1、百度UEditor 优点:插件多,基本满足各种需求,类似贴吧中的回复界面。 ...转载 2019-07-16 08:46:32 · 2967 阅读 · 0 评论 -
java实现excel横排以及竖排数据导出
相信不少同学使用excel导出工具时,都能很方便的导出数据库里的数据,只不过,通常来讲,是如下的excel格式: 但需求总是会变得,等哪天产品跑来跟你说,‘’这横排的看起来 不方便啊,你给我撸出一个竖排的吧,竖排的看起来更审美”。虽然你心中早已一万头草泥马奔腾而过,有无数想砍死产品的冲动,“横着不蛮好麽,该你妹啊,去特么的竖...转载 2019-07-19 14:46:34 · 2254 阅读 · 0 评论 -
java根据ip地址获取用户地理位置
功能需求 工作项目需要,根据用户向服务器请求的ip地址获取用户所在的地理位置。具体代码 话不多说,直接上代码(作为一个负责任的程序员,我把import内容都贴贴出来了): /** * FileName: AddressUtils * Author: Admi...原创 2019-04-25 17:00:07 · 16288 阅读 · 8 评论 -
伪单点登录
单点登录(SingleSignOn),简称为SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 因为开发需要,自己看了一些与单点登录相关的资料,想要实现这个功能,不过鼓捣了几天也没有弄成功,后来自己另辟蹊径利用过滤器实现了相应的功能。话不多说,代码如下(过滤器): public void d...原创 2018-10-09 19:46:50 · 1298 阅读 · 0 评论 -
看spring cloud开源项目Pig的云踩坑记
原文地址:https://blog.csdn.net/tengshe789/article/details/84974114转载 2019-07-09 08:48:14 · 1526 阅读 · 0 评论 -
HQL查询实体部分属性
功能需求 HQL语句查询语句是我们经常用到的一种查询方式;HQL查询是从实体从查询实体属性,并不是从数据库表从查询字段。 有时候我们为了提高性能亦或是为了数据安全都需要使用HQL查询某个实体的部分属性而不是全部属性,如果使用平时我们...原创 2019-06-24 23:53:45 · 852 阅读 · 0 评论 -
java类与jsp文件获取项目物理路径
jsp获取项目的物理路径: String path = application.getRealPath("/");效果如下:java类文件获取物理路径:ServletContext context = ServletActionContext.getServletContext();String path = context.getRealPath("/*"); ...原创 2018-10-25 19:18:32 · 976 阅读 · 0 评论 -
使用相同的语法、条件,在SQL Sever能够查询出数据,可是在Hibernate的hql语言为啥就查不出来了呢?
在做项目的时候遇到一个非常奇葩的问题,一下是我的代码:// 验证该文件名是否存在 public boolean verifyAppName(String appName, int customerId, int typesName) { String hql = "from CustomerApplication where typeId = '" + typesName + "' a...原创 2018-10-20 23:05:29 · 1974 阅读 · 0 评论 -
jsp的mail.jar插件发送邮件出错之一
昨晚在测试项目的时候,用到了mail.jar发送邮件,原来好好的,结果出错:DEBUG: setDebug:JavaMail version 1.4eaDEBUG:getProvider()returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems,Inc]DE...原创 2018-10-10 21:53:42 · 302 阅读 · 0 评论 -
Java的mkdir()与mkdirs()引发的悲剧---关于java的mkdir()方法无法创建文件目录问题
昨晚深夜在做项目的文件上传,在上传之前要先判断指定的文件目录是否存在,如果不存在就先创建改目录。因为之前已经做过类似的功能了,所以就把判断文件目录以及创建的代码直接copy过来了,然而很郁闷的是,一模一样的代码,这回却遇到一个特别奇葩的问题:一下是昨晚我要判断的文件目录: ServletContext context = ServletActionContext.getServl...原创 2018-10-17 12:14:20 · 19431 阅读 · 9 评论 -
tb_Countries_Name is not mapped [from tb_Countries_Name where Id = '1' ]
在项目的数据库创建表的时候,遵循了建表的规则:tb_***_**,然而hibernate在映射的时候系统自动把下划线_给去掉了直接变为:TbXXX,在Javabean里做hql查询的时候没有注意,写的是数据库名:from tb_***_***,导致出现tb_Countries_Name is not mapped [from tb_Countries_Name where Id = ...这样的问...原创 2018-10-09 20:17:42 · 646 阅读 · 0 评论 -
利用java.net.URLDecoder.decode()解决页面跳转以后中文关键词乱码
我们在做查询的时候,经常会出现页面跳转,然而页面跳转以后经常会出现中文乱码,有没有什么办法解决呢?在这之前,我们先来看看两个方法:URLDecoder类包含一个decode(String s,String enc)静态方法,它可以将application/x-www-form-urlencoded MIME字符串转成普通字符串;在了解了这个工具以后,我们可以使用java.net.URL...原创 2018-10-09 20:09:42 · 7033 阅读 · 0 评论 -
巧妙利用中间文件处理struts2的action结果
在Struts2的处理中,都会有一个对应的Action对相应的操作进行处理,然后将处理结果返回到指定结果页面(告知处理的结果是成功或者失败),这样下来,如果有n个action就会有n个结果页面,有没有什么方法解决这个问题呢(也就是说,所有的action共用一个结果页面)?我的思路是:在处理结果中保存一个消息(无论是成功还是失败),然后跳转到这个统一的结果页面,通过读取消息来告知用户的操作的成功...原创 2018-10-09 19:38:47 · 97 阅读 · 0 评论 -
jsp解决中文查找关键词乱码以及表单method获取方式的使用问题
最近遇到一个问题:输入查找关键字,第一次能查出数据,第二次就查不出了,请看下图:第一次查找:第二次查找:可能有些大佬已经看出区别了:第一次查找的路径为:http://mylover:8080/CloudSpace/result_search.jsp?keyWord=%E4%B8%AD%E5%9B%BD,而第二次查找的路径为:http://mylover:8080/Cloud...原创 2018-10-09 19:04:57 · 520 阅读 · 0 评论 -
普通类(.class)文件里如何读取session的值?
在做项目的时候,经常要读取我们存进session里面的相关的值,如果是在jsp文件里读取倒是好说,直接session .getAttribute("xx") 就好了;可是,如果我想在普通类(.class)文件里面读取session的值,再通过这样的方法是行不通的,那该怎么办呢?看了很多博客都说用Servlet。 但是,如果但单是为了在普通类里读取一个session的值就要特地去创建、配置...原创 2018-10-18 22:24:07 · 2061 阅读 · 0 评论