- 博客(13)
- 收藏
- 关注
原创 No primary or single unique constructor found for interface javax.servlet.http.HttpServletRequest
一般来说这个问题是因为SpringBoot3已经不支持javax.servlet包里的HttpSession了,如果需要使用该类的话,需要导入jakarta.servlet包里的HttpSession。因此我们需要把使用的javax.servlet.http包换成jakarta.servlet.http包不过这个换包是需要有选择的换一般是只要把关于http请求的request和respose这个类替换一下就能解决问题了。
2024-06-10 01:13:27 881
原创 为什么会有跨域安全问题
为了解决这些合法的需求,CORS标准被创建出来,它允许服务器通过设置特定的HTTP响应头来明确哪些域被允许访问它的资源。跨域的安全问题,或者称为"同源策略"(Same-Origin Policy)的限制,是Web浏览器安全的一个重要概念。同源策略是浏览器的一种安全机制,它限制了从不同源加载的文档或脚本如何与另一个源的文档或脚本进行交互。例如,如果没有同源策略,一个恶意网站可以通过JavaScript访问你打开的银行网站上的敏感信息,并将其发送到恶意服务器。等响应头来控制跨域的各种方面。
2024-03-10 14:15:13 416 1
原创 第三方软件引起Excel格式导出失败问题
然后他自己又去下一遍,但是我的后端在第一次上传完之后就把数据删除了,所以TM的这个插件直接下个寂寞,我的后端直接爆了NotFoundException,下载插件也报了下载失败的错误,于是我的学长给了我两种解决方案,一种是关了插件(导出毫无问题),另一种是给后端的删除操作加上异步线程延迟五秒在删除的方案,我选择了第二种这个。但是这个是正常的情况下,but很明显我这个是不正常的情况下遇到的问题,因为我的浏览器有一个第三方的下载插件,他拦截了下载的请求。
2024-03-10 11:43:23 809 1
原创 springboot3分页插件使用
这个就是设置分页查询的代码了,其中pageNum参数是设置查询第几页的数据集,pageSize是设置一页有多少条数据,这两个参数通常是前端传给后端contronler层参数在通过contronller层传递给setrvice实现类中的,通过分页查询大大的简化了编写数据库sql查询语句的繁杂,其实在springboot中使用pagehelper是特别简单的,我们在maven引入合适版本的依赖后,在配置文件中写好配置,在service的实现类中就可以编写代码了,用了这个版本的插件立刻就能用了,
2023-12-29 17:24:35 869 1
原创 mybatiesXMLsql语句参数类型
在这个sql语句中就有两个参数类型一个是parameter类型这个类型代表的传入sql语句中的参数类型,sql语句中根据传入的参数进行crud的操作,而resultType则代表着返回的数据类型,这个sql语句会从数据库中查到数据封装成usr类返回该sql语句的调用者。但是值得一说的是返回的类型是要有完全的连包带类的名称的我能写的如此简洁是因为我的sqlMapConfig.xml语句中使用了别名才能把他变得如此的简单。这个是我的mybaties配置文件。
2023-12-25 18:32:56 501 1
原创 Mybaties多表查询
但是我们需要注意下uid这个查出来表属性他是属于user类的,但是user类又属于order类中属性所以我们可以直接把他封装进user.id的属性中,就可以看成把这个数据给order类的对象属性中.id属性这样username、passowrd、birthday亦是如此与user.username、user.passowerd、user.birthday一一对应,在把这个自定义好数据类型作为查询数据的map集合封装,这样我们的多表查询就写好了.下面这个是多表查询的sql语句。查询出来的数据是这样的数据。
2023-12-24 18:36:53 364
原创 mybaties框架<foreach>标签
但是数据多的话会很麻烦,而标签就解决了这个问题,在标签中我们把参数类型list作为源参数类型,子类型collection就代表着数据,我们从 “close = ") " 就是至这个地方结束 separator = ", "作为分割集合中的数据 最后取出来 放到 item = " id "中,在执行某些操作。’为分割取出来的每个的数据来做某些操作,在sql代码中 open ="id in ( " 就是从这个地方开始。这个就是用标签的小列子。
2023-12-23 20:05:36 375 1
原创 瑞吉外卖———stream流实现多表联查
在stream流中首先new一个DishDto流的实例,然后使用BeanUtils把基本属性从item复制到dishDto上,现在我们先从item中获取到DishDto的id属性,通过id查询获取到这个分类名称然后dishDto对象设置一下名称,最后在把这个dishDto对象返回到List<DishDao>中。//根据id查询分类对象。* 菜品信息的分页查询。//构造分页构造器对象。
2023-09-20 18:30:30 282 1
原创 JSP原理
JSP本质是一个Servlet,写的jsp页面会被编译成包含原始servlet的JAVA文件,然后会和写的类一起编译为class的文件,最后在浏览器请求时候在后端包含数据渲染成一个HTML网页发送到浏览器里面去。然后由浏览器完成HTML网页的编译。这就说明JAVA被编译成class的文件,经过servlet的处理最后展示成最后的页面。这是编译的源代码其中可以看到JAVA的代码。而被浏览器编译后只剩下HTML的代码。
2023-09-07 21:20:00 46 1
原创 AOP切面编程填充公共字段
我先从ProceedingJoinPoint类中获取到方法参数数组,其中第一个参数类是HttpServletRequest这个是提供前端页面表头返回来的请求数据的。这样就会在使用@Log注解方法运行前获取他的参数进行完公共字段填充在把方法放行,完成前端发来的数据进行逻辑处理。其中注释的是第一次写的是一个失败的例子,原因是使用ProceedingJoinPoint 获取参数中的的对象时在第33行中我直接获取的是使用@Log注解的方法对象中的内容所以并没有找到我所预设的字段,于是经过一番改进。
2023-08-30 17:57:22 74 1
原创 Mapper.xml sql 语句类型比较
以上sql动态更改语句看似没有问题,进行了字段非空的判断.但是数据类型不同那么我们的if语句也应该不同,非字符类型不应该使用xxxx!mapper.xml sql与我们的java语法有些相同,当进行动态语句if查询时,我们需要注意字段类型。这会引起数据类型转换的异常。因此数据不会显示和存储。
2023-08-30 17:21:05 102 1
原创 快速排序源码理解:
快速排序法是一种排序效率很高的算法。基本思想是通过一趟排序,将要排序的数据分隔成独立的两部分,其中一部分的所有数据比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此使整个数据变成有序序列。具体做法是:假设要对某个数组进行排序,首先需要任意选取一个数据(通常选用第一个数据)作为关键数据,然后将所有比它小的数都放到它的前面,所有比它大的数都放到它的后面。这个过程称为一趟快速排序;递归调用此过程,即可实现数据的快速排序。
2022-12-15 20:13:06 84 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人