![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
aqzengkuasheng
这个作者很懒,什么都没留下…
展开
-
springBoot全局异常处理
springBoot的全局异常借助于两个注解:@ControllerAdvice,@ExceptionHandler注解@ControllerAdvice作用在类上@ExceptionHandler作用在方法上,这个注解有属性value,可以设置为特定的某类异常。@ControllerAdvicepublic class GlobalExceptionHandler { @ExceptionHandler(value = ParamsException.class) @Respons原创 2022-02-10 18:38:53 · 176 阅读 · 0 评论 -
springMvc全局异常的实现
一般使用第二种方法去实现全局异常SimpleMappingExceptionResolver实现全局异常,这种情况主要是处理视图的异常。在servlet-context.xml中配置对象 <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"><!--页面在转发时出现异常,设置默认的错误页面,value指向error.jsp页面--> &l.原创 2022-02-10 15:44:56 · 429 阅读 · 0 评论 -
springboot单元测试
对Service业务方法测试第一步:添加依赖坐标 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency>第二步:添加测试类@RunWith(SpringRunner.class)//Ru原创 2022-02-10 14:26:13 · 197 阅读 · 0 评论 -
springboot的应用热部署
第一步:添加依赖坐标和插件<!-- DevTools 的坐标 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <!--当前这个项目被继承之后,这个不向下传递--> <optional>true</optional> &原创 2022-02-10 10:50:20 · 65 阅读 · 0 评论 -
springboot整合API 文档构建工具-Swagger2
第一步:添加相关依赖坐标<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version></dependency><dependency> <groupId>io.springfox</groupId原创 2022-02-09 22:00:29 · 77 阅读 · 0 评论 -
springboot实现分页查询
借助pageHelper实现分页第一步:在pom.xml文件中添加相关坐标 <!-- springboot分页插件 --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.原创 2022-02-09 17:36:32 · 1239 阅读 · 0 评论 -
springboot整合mybatis
第一步:在pom.yml文件中配置 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.2.RELEASE</version> </parent> <dependencies>原创 2022-02-09 09:59:13 · 56 阅读 · 0 评论 -
Failed to bind properties under ‘logging.level.com.zks.springboot‘ to org.springframework.boot.logg
要在debug前面添加一个空格原创 2022-02-09 09:34:33 · 596 阅读 · 0 评论 -
springboot静态资源访问
springboot默认的静态资源访问路径如下:public class ResourceProperties { private static final String[] CLASSPATH_RESOURCE_LOCATIONS = new String[]{"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/"}; private S原创 2022-02-08 16:43:52 · 324 阅读 · 0 评论 -
springboot整合freemarker、thymeleaf
整合freemarker第一步:添加freemarker的start坐标 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency>第二步:在application.yml文件中配置freemarke原创 2022-02-08 15:30:08 · 127 阅读 · 0 评论 -
springboot快速入门实践
首先需要添加一个parent的依赖坐标,规定整个项目的坐标的版本。依赖也和之前传统的spring依赖不一样。Spring Boot的项目必须要将parent设置为Spring Boot的parent,该parent包含了大量默认的配置,简化程序的开发。<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artif原创 2022-02-07 20:27:27 · 52 阅读 · 0 评论 -
spingboot的零配置开发实践
零配置实现实例化需要通过一个配置类实现,@Configuration,这个注解说明这个类是配置类@ComponentScan,这个注解指出扫描范围/** * 配置类 */@Configuration//说明这个类是配置类@ComponentScan("com.zks")//配置扫描的范围public class IocConfig {}实例化AnnotationConfigurationContext,就相当于实现了IOC,在后面添加需要使用的配置类 AnnotationConfi原创 2022-02-07 09:32:16 · 293 阅读 · 0 评论 -
RestFul URL风格
下面代码是查询和删除时候的代码,两者的访问路径是一样的只是请求方式不一样。id作为路径参数,@Controllerpublic class AccountController { @Resource private AccountService accountService; //id作为路径参数 //查询时候用GetMapping @GetMapping("account/{id}") @ResponseBody public Account .原创 2022-02-06 10:27:45 · 276 阅读 · 0 评论 -
使用jetty出现503错误
最后解决办法:查看日志,发现自动实例化userService有问题最总发现,自动实例化扫描的路径有问题,修改正确路径后解决问题原创 2022-02-05 11:48:55 · 996 阅读 · 0 评论 -
springMVC文件上传
第一步,引入文件上传的依赖坐标 <!-- 添加commons-fileupload 依赖 --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.2</version&g原创 2022-01-15 20:17:49 · 42 阅读 · 0 评论 -
springMVC拦截器
springMVC 的Interceptor拦截器的主要作用是拦截用户的请求并进行相应的处理。比如通过它进行权限验证,或者判断用户是否登录等操作。对于springMVC 拦截器的定义方式有两种。(双击shift可以找东西)1.实现org.springframework.web.servlet.HandlerInterceptor这个接口,这个接口中有这几个方法。拦截器写完了,怎么使得拦截器生效呢?生效拦截器需要xml文件配置:...原创 2022-01-15 14:57:50 · 206 阅读 · 0 评论 -
springMvc之json数据开发
json主要通过@ResponseBody和@RequestBody两个注解来实现@ResponseBody:该注解用于将Controller 的方法返回的对象,通过HttpMessageConverter转换为指定格式后,写入到Response对象的Body数据区。这时候我们就很方便的可以将数据写入到客户端。@Request Body(请求题)请求参数也可以以json的形式传到后台该注解用于读取Request请求的body部分数据,使用系统默认的HttpMessageConverter进行解析,然原创 2022-01-14 21:02:58 · 121 阅读 · 0 评论 -
springMVC请求转发与重定向
spring重定向的问题,主要借助:“redirect:"这个关键字@Controllerpublic class ViewController { /** * 页面重定向 * @return */ @RequestMapping("queryView1") public String queryView1(){ return "redirect:v1.jsp"; } /** * 页面重定向,如果页面重定原创 2022-01-14 17:06:02 · 153 阅读 · 0 评论 -
springMVC设置域对象的几总情况
向域中设置对象的几总方式,ModelAndView既向域中设置了视图也设置了Model,其他的都以返回字符串的形式向域中设置视图@Controllerpublic class ModelController { //只有request是setAttribute,其他都是addAtribute @RequestMapping("m01") public ModelAndView m01() { ModelAndView mv = new ModelAndView(原创 2022-01-14 11:48:24 · 103 阅读 · 0 评论 -
springMVC,URL地址映射配置
RequestMapping()注解,将urI的地址和我们的方法进行绑定。将RequestMapping()放到类前面,就将uri和类进行绑定,如果放到方法前,就和方法进行绑定。requestMapping(),可以放到方法或类上,属性可以有value,可以这是多个访问路径,method,可以设置访问的类型,prarms可以以参数形式访问。@Controller@RequestMapping("url")public class UrlController { @RequestMappi原创 2022-01-13 20:17:00 · 499 阅读 · 0 评论 -
springMVC环境搭建
MVC(模型,视图,控制器)原创 2022-01-13 19:29:37 · 85 阅读 · 0 评论 -
将junit测试集成到sping的运行环境中
@RunWith(SpringJUnit4ClassRunner.class)//runwith就是一个运行器//将测试运行在Spring测试环境中@ContextConfiguration(locations = {"classpath:spring.xml"}) //设置要加载的配置文件//可以写多个,有一个写一个,有多个写多个public class SpringJdbcTest03 { @Resource private JdbcTemplate jdbcTemplate;原创 2022-01-13 13:43:58 · 66 阅读 · 0 评论 -
springJdbc环境搭建
第一步,在pom文件中引入相关的依赖坐标 <!-- 添加相关的依赖坐标 --> <!-- spring 框架坐标依赖添加 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.4.RELEASE原创 2022-01-13 10:51:49 · 286 阅读 · 0 评论 -
spring Task定时任务
1.xml配置文件实现定时任务第一步:配置环境:在只需要在pom文件中引入spring的依赖就可以xml文件中需要引入context(自动扫描的)还有task的。<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.原创 2022-01-11 16:28:23 · 142 阅读 · 0 评论 -
spring AOP切面实现
1.注解实现第一步:先准备几个javaBean对象@Controllerpublic class UserController { public void test(){ System.out.println("UserController.test"); }}@Repositorypublic class UserDao { public void test(){ System.out.println("UserDao.test");原创 2022-01-11 13:53:08 · 332 阅读 · 0 评论 -
bean对象的作用域
有两个作用域,一个是单例作用域(singleton 作用域),一个是prototype 作用域。singleton 作用域默认情况下,被管理的bean只会IOC容器中存在一个实例,对于所有获取该Bean的操作Spring容器将只返回同一个Bean。 容器在启动的情况下就实例化所有singleton 的 bean对象,并缓存在容器中。lazy-init属性(懒加载)如果为false,则在IOC容器启动时会实例化bean对象,默认false如果为true,则IOC容器启动时不会实例化Bean对象,在原创 2022-01-10 16:58:23 · 129 阅读 · 0 评论 -
springIOC自动扫描器
为了提高编程效率,spring矿建对javaBean对象进行了统一的管理,可以通过扫描某个目录,帮助我们自动实例化对象。@Repositorypublic class TypeDao { public void test(){ System.out.println("TypeDao.test"); }}@Servicepublic class TypeService { @Resource TypeDao typeDao; public v原创 2022-01-10 11:33:04 · 167 阅读 · 0 评论 -
IOC自动注入
ICO自动注入分两种第一种是Resource注入public class UserDao { public void test(){ System.out.println("UserDao.test"); }}public interface UserDaoIF { public void test();}public class UserDaoIFIm implements UserDaoIF{ @Override public原创 2022-01-10 10:51:11 · 198 阅读 · 0 评论 -
IOC注入之静态工厂和实例化工厂注入
1.静态工厂注入和set方法注入差不多第一步:先创建一个静态工厂/** * 定义静态工厂类 */public class StaticFactory { public static TypeDao createTypeDao(){ return new TypeDao(); }}第二步:准备两个javaBean对象public class TypeDao { public void test(){ System.out.printl原创 2022-01-09 20:36:10 · 631 阅读 · 0 评论 -
springIOC注入之构造器注入
第一步:先提供两个javaBean对象public class UserDao2 { public void test(){ System.out.println("UserDao2.test"); }}public class UserService2 { private UserDao2 userDao2; public UserService2(UserDao2 userDao2) { this.userDao2 = userD原创 2022-01-09 20:01:05 · 492 阅读 · 0 评论 -
Java IOC的set注入方法之常用对象,基本类型,List、Set、Map集合、Properties注入
String host; public void setHost(String host) { this.host = host; } Integer port; public void setPort(Integer port) { this.port = port; } /** * list集合便利 */ List<String> list; public void...原创 2022-01-09 16:06:56 · 304 阅读 · 0 评论 -
springIOC注入方法
第一种方法:set方法注入这中方方法也是最常见的方法第一步:先准备两个javaBean类public class UserDao { public void test(){ System.out.println("UserDao.test"); }}在这一个里面用set方法逻辑注入,并在配置文件种实例化bean对象,并且实际注入import com.zks.dao.UserDao;public class UserService {// //手动实例原创 2022-01-09 16:02:21 · 47 阅读 · 0 评论 -
IOC容器实例化对象的三种方式
1.默认的方式:构造器实例化 <bean id="userService" class="com.zks.Service.UserService"> </bean> //获取spring的上下文环境 ApplicationContext applicationContext=new ClassPathXmlApplicationContext("spring.xml"); //通过id属性值获取指定的bean对象原创 2022-01-09 11:12:34 · 556 阅读 · 0 评论 -
spring配置文件的几种情况
也可以写一个总的配置文件,然后将其他的配置文件放到里面到时候,只要引用这一个总的配置文件就行了。原创 2022-01-08 22:00:39 · 154 阅读 · 0 评论 -
SpringIOC容器Bean对象的实例化的模拟实现
第一步:创建一个Bean属性对象,它的作用是来接受配置文件中bean标签的id和class属性的值第二步:引入dom4j和xpath的依赖(jaxp)<!-- dom4j --><dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</version></dep原创 2022-01-08 21:34:03 · 522 阅读 · 0 评论 -
Spring环境搭建
Spring的模块划分spring.xml文件解析spring的依赖 <!-- https://mvnrepository.com/artifact/org.springframework/spring-context --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artif原创 2022-01-08 14:52:44 · 144 阅读 · 0 评论