![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringBoot知识
文章平均质量分 52
包小志
从今天起做个程序猿
展开
-
List数据手动分页
java中的list手动分页的代码,前提是list在手动分页之前必须排序!原创 2023-07-28 11:22:15 · 379 阅读 · 0 评论 -
文件在idea中运行时不报错,打包运行后报错java.lang.IllegalArgumentException: URI is not hierarchical
通过 new ClassPathResource(“template/LZGICAD1.mdb”)获取类路径,打包后不会改变,再通过 classPathResource.getInputStream()获取类路径文件的流。这种方式在打包之前可以创建file文件,但是打包成jar包后,会由于路径改变后在template/LZGICAD1.mdb找不到该文件而报错URI is not hierarchical。这个问题造成的原因是放在类路径classpath中的文件,打包后文件找不到所造成的。原创 2023-07-27 14:35:09 · 1504 阅读 · 0 评论 -
spring拦截器参数及多拦截器执行顺序讲解
如果3返回false,123的preHandler会执行,123的postHandler都不会执行,但是return为true的2和1的after会执行。如果2返回false 12的preHandler会执行 postHandler都不执行,1的after会执行。如果全部返回true,则按照流程全部执行。如果1返回false都不会执行。原创 2023-07-06 20:49:07 · 471 阅读 · 0 评论 -
Spring拦截器入门案例讲解
没有拦截器的话直接执行controller,如果有拦截器,会限制性preHandler里面的内容,如果return的值是true,则会再执行controller里面的内容接着在执行 postHandler、afterCompletion里面的内容。过滤器是在tomcat服务器阶段进行配置的,它能够对所有的访问进行增强,但是拦截器就不是这样,拦截器能访问什么取决于SpringMVC里面的配置。拦截器是为springMVC服务的,创建的拦截器要受spring容器的管理,因此需要。最后再说一下拦截器的执行流程。原创 2023-07-06 19:58:05 · 142 阅读 · 0 评论 -
REST风格讲解
优点:隐藏资源访问的行为,无法通过地址得知对资源的操作,并且简化了书写rest风格大概将请求方式分成了Get Post Put Delete四种操作方法。上述行为是约定的方式并不是规范。@RequestMapping注解里面value值存储访问的路径,method值存储请求的动作。@PathVariable注解用于绑定路径参数与处理器方法形参之间的关系,要求路径参数名与形参名对应。原创 2023-07-05 16:11:39 · 202 阅读 · 0 评论 -
json数据、日期数据的参数传递及响应
在springMVC配置文件中开启@EnableWebMvc才可以将json数据转换成各种对象数据,作用就是根据传参类型匹配对应的类型转换器。利用@DateTimeFomat注解中的pattern指定日期的格式。@RequestParam与@RequestBody注解之间的区别。@ResponseBody注解使用小结。@DateTimeFomat注解总结。首先在maven中添加json坐标。如何接收除年月日之外的时间呢?原创 2023-06-27 20:55:45 · 2159 阅读 · 0 评论 -
SpringMVC简介及入门案例
SpringMVC是一种基于Java实现MVC模型的轻量级Web框架优点:相较于Servlet使用简单,开发便捷。灵活性比较强。后端做表现层技术开发的框架有Servlet,SpringMVC技术同样也是做表现层技术开发框架,JDBC以及Mybatis数据数据层的一个开发框架。原创 2023-06-12 19:34:34 · 789 阅读 · 0 评论 -
Spring事务简介案例
可以在业务层上开的一种事务,开在业务层上的好处是,可以将业务层中方法里面所包含的数据层操作放到一个事务中进行管理,让他们同成功、同失败在JdbcConfig配置类中定义一个新的事务管理器transactionManager,并将此事务管理器交给spring容器进行管理。原创 2023-05-31 23:18:11 · 387 阅读 · 0 评论 -
Spring框架中JUnit的整合
导入Junit和整合spring的坐标,并刷新maven至,maven中出现新添加的包。要测谁,就将其配置成一个属性,然后利用@Autowired自动装配。@ContextConfiguration指定spring配置类。@RunWith注解指定类运行器。原创 2023-05-31 22:40:40 · 79 阅读 · 0 评论 -
Spring整合Mybatis框架开发步骤分析
关于Mybatis相关的配置,新建一个MybatisConfig类,在这个类里面配置关于SqlSessionFactory内容的,这个类里面需要配置的东西统统写在SqlMapConfig.xml文件里面,如下图所示,此时.xml配置文件里面关于DataSource标签的属性,在MybatisConfig类中通过引用类型DataSource便可以完成。另外下面的版本不要乱写,整合包和包名的版本是有对应关系的,比如mybtis的版本和对应的整合包名mybatis-spring之间的版本需要对应。原创 2023-05-31 20:59:42 · 625 阅读 · 0 评论 -
Spring整合Mybatis基础操作分析
前三行是造sqlSessionFactory对象,拿到factory对象以后用.openSession()方法得到具体的操作连接,接着通过getMapper得到真正要执行的数据层接口,Mapper对象。原创 2023-05-31 11:41:53 · 68 阅读 · 0 评论 -
Spring第三方bean管理
将Bookdao类型的包通过方法形参的方式,注入到配置类中。将方法的返回值定义为一个bean在方法上添加一个注解@Bean就可以实现方法的返回值为一个bean。SpringConfig是spring的配置文件,刚才设置的bean的配置属于jdbc的配置,为了开发框架的结构清晰,建议写jdbc独立的配置文件JdbcConfig。下面将dao包中定义的引用类型的类BookDao,注入到第三方的管理的bean JdbcConfig类里面,通过设置@Value注解,利用成员变量的方式给第三方bean注入属性。原创 2023-05-31 10:47:02 · 1210 阅读 · 0 评论 -
Spring注解开发——bean的作用范围与生命周期管理
添加关闭容器的.close方法。此时要用AnnotationConfigApplicationContext类才有关闭容器的方法!不写或者在@Scope(“singleton”)表示的是单例。在@Scope(“prototype”)表示的是多例。注解管理bean的生命周期。该注解表示管理初始化的注解。该注解表示管理销毁时的注解。原创 2023-05-30 15:47:08 · 745 阅读 · 0 评论 -
Spring IOC容器及DI相关概念
一般而言,框架的范围大于组件,组件可以包含在框架里,二者与容器的关系需要结合容器所对应的应用场景,仅以Spring来说,它是一个Java开发的框架,包含了一个IOC类型的bean管理容器,另外还提供了切面编程(AOP)、数据访问事务管理等组件。第一步,导入Spring坐标第二步,定义Spring管理的类第三步,创建Spring配置文件,配置对应类作为Spring管理的类。原创 2023-05-30 09:41:23 · 864 阅读 · 0 评论 -
springboot项目将查出的数据进行分页操作
projectService里面的advanceQueryList方法的实现查出的数据返回的是一个 PageInfo类型并可以分页。用来将页码和每页数据容量传过去,PageInfo(kcProjects)根据上传的页码和每页的容量对查出的kcProjects进行分页操作。advanceQueryList方法的实现。原创 2023-03-18 17:26:17 · 490 阅读 · 0 评论 -
@RequestBody 和 @ResponseBody 详解
responseBody 注解的作用是将 controller 的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到 response对象的 body 区,通常用来返回 JSON 数据或者是 XML 数据。@RequestBody 作用在形参列表上时,用于将前台发送过来固定格式的数据(xml 格式或者 json 等)封装为对应的 JavaBean 对象,注意:在使用此注解之后不会再走视图处理器,而是直接将数据写入到输入流中,他的效果等同于通过 response 对象输出指定格式的数据。原创 2023-03-18 15:46:33 · 732 阅读 · 0 评论 -
@RequestMapping使用详解
当标注在一个类上时,该类中的所有方法都将映射为相对于类级别的请求,表示该控制器所处理的所有请求都被映射到 value 属性值所指定的路径下。@RequestMapping注解的value属性是一个字符串类型的数组,表示该请求映射能够匹配多个请求地址所对应的请求。“header=value”:要求请求映射所匹配的请求必须携带header请求头信息且header=value。“param=value”:要求请求映射所匹配的请求必须携带param请求参数且param=value。原创 2023-03-18 14:50:19 · 4448 阅读 · 0 评论 -
@PostMapping和@GetMapping使用详解
后端的参数接收就需要使用 也是使用@RequestParam(“id”) String id。后端的参数接收就需要使用 @RequestParam(“id”) String id。后端参数接收的话,需要使用@PathVariable String id。如 xxx/generatedData/id ,id中放置的是具体的值。如{id:‘1’,name:‘2222’}如{id:‘1’,name:‘2222’}后端参数接收的话,里面放置的是一个实体类。原创 2023-03-18 10:30:26 · 10731 阅读 · 2 评论 -
@PathVariable、@CookieValue、@RequestHeader使用详解
如上配置将自动将请求头中的“User-Agent"值绑定到userAgent上,将"Accept"的值绑定到accepts上。如果请求为"url/info/16",则spring会自动将16绑定到通过@PathVariable注解的同名变量uid上。自动将SESSIONID的值绑定到字符串sessionId上,如果Cookie中没有sessionId时则默认为空。传入数据类型也可以是javax.servlet.http.Cookie类型。原创 2023-03-18 09:29:23 · 190 阅读 · 0 评论 -
@RequestParam使用详解
如果在请求中传入多个同名参数,比如:url?userName=zhl&userName=holley时怎么办?@RequestParam主要用于将请求参数区域的数据映射到控制层方法的参数上。首先我们需要知道@RequestParam注解主要有哪些参数。原创 2023-03-18 08:50:05 · 1559 阅读 · 0 评论 -
拼接SQL之后,报错There is no getter for property named ‘sql’ in ‘class java.lang.String
一、问题描述1.首先使用动态拼接的SQL,mapper或Dao中要使用${}来注入在serviceimpl类中凭借好了sql2.在queryDao中定义好了方法,接收serviceImpl中拼接好的sql字符串3.将接收到的sql注入xml中。4.执行后报错二、解决方法其他地方什么都不需要该,只需要将xml中sql改为{sql}改为sql改为{_parameter}即可运行成功,可以根据拼接好的sql,查询到想要得到的数据。...原创 2022-04-14 13:54:12 · 1703 阅读 · 0 评论 -
Spring框架中@Primary注解的作用
如果不加@Primary注解,接口ICarService存在两个不同的实现类,我们启动项目,由于存在两个ICarService的实现类,Spring不知道为我们注入哪一个,就会报如下的异常。如果在某一个实现类中添加@Primary注解,通过控制台打印,说明Spring为我们自动注入的是经过@Primary注解修饰的AudiCarService。@Primary的作用就是当一个接口存在多个实现类时,我们就可以通过@Primary注解来指明哪个实现类作为首选进行自动装配注入。原创 2023-03-17 10:28:57 · 1827 阅读 · 0 评论 -
@Service注解的作用以及@Controller和@RestController的区别
Service注解用于类上,标记当前类是一个service类,加上该注解会将当前类自动注入到spring容器中,不需要再在applicationContext.xml文件定义bean了。直接调用service类中方法。相当于@Controller+@ResponseBody两个注解的结合,返回json数据不需要在方法前面加@ResponseBody注解了,但使用@RestController这个注解,就不能返回jsp,html页面,视图解析器无法解析jsp,html页面。原创 2023-03-17 13:53:53 · 3391 阅读 · 0 评论