springmvc中使用配置类进行配置,WebInit,WebConfig,SpringConfig
1.druid.properties配置文件模板2.Utility类模板(用于判断数据输入的工具类)3.mysql8.0版本中url书写的全部内容jdbc:mysql://localhost:3306/xxx?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT&rewriteBatchedStatements=true4.日志logback.xml配置文件的模板与导入的依赖5.mybatis中的UserMapper.xml模板与测试mybatis的代码6.mybatis-config.xml模板7.BrandMapper.xml中使用resultMap得到返回结果,解决数据库中的字段与pojo中的字段不匹配进行映射问题8.实现servlet接口需要导入的包9.javaweb中解决get与post中文乱码问题的方式10.SqlSessionFactoryUtil工具类11.验证码的工具类CheckCodeUtil12.spring中配置jdbc的方式13.spring中的bean使用注解创建,applicationContext.xml中需要写的内容,以及dao,service实现类上面写的注解14.使用注解实现applicationContext.xml中的内容15.mybatis与spring整合中使用的jar包(注意jar包使用的版本)与配置类,以及简单的测试实例16.spring整合junit中使用到的依赖以及简单的测试案例演示17.spring中的aop(面向切面编程)需要到导入的包与简单示例18.springmvc中的json数据转为字符串使用到的jar包,将servlet设置为bean对象,接收参数是json的数据传递19.ssm整合中需要使用的依赖jar包与包含的配置类20.ssm整合中异常的设置,返回类设置,码值设置21.maven中多环境配置22.springboot中application.yaml配置文件中配置多环境23.springboot中yml中数据库中的设置24.mybatis-plus中添加的依赖,使用的方法,分页查询中添加的拦截器25.mybatisplus中按照条件查询的三种方式,常用的是lambda查询,当进行测试查询的时候,可以将日志中冗余的文件关闭,在application.yml中设置就可以了,还需要设置一个空的logback.xml26.mybatis中字段映射与表名映射27.mybatisplus中设置乐观锁,首先需要在表结构中添加一个字段表示乐观锁,之后再domain中对应的字段中添加上注解@Version,之后需要添加乐观锁的拦截器,然后在测试方法中进行测试28.mybatisplus中代码生成器的依赖与设置生成器代码29.mybatis中的模糊查询,批量删除,以及按照表名查询30.mybatis中设置自增的值,使用resultmap设置多对一的关系以及使用级联的方式设置多对一的关系31.mybatis中的多表联查(第一步先通过仓库的id获取仓库数据,第二部通过在仓库数据中包含的商品id查询出商品的数据)32.使用myabtis中的动态sql语句实现多条件查询33.使用mybatis进行批量添加与批量删除34.mybatis中使用分页插件需要添加的依赖,插件在mybatis-config.xml中的配置,以及使用的方式35.spring中配置事务管理器36.springmvc入门级配置web.xml,springmvc.xml37.springmvc中在web.xml中设置过滤器,排去字符乱码38.springmvc中设置请求方式的转换,将post请求转换为put与delete,需要在web.xml中设置过滤器,在表单中设置一个隐藏域,传递的值设置为put39.设置默认的servlet处理静态资源在springmvc.xml中40.springmvc中完整的web.xml的配置与完整的springmvc.xml配置41.springmvc中设置文件的上传与下载,首先需要导入依赖,之后需要在springmvc.xml中配置问价上传解析器。在上传文件的时候设置 一个form表单里面设置一个输入框,类型为file,为了防止上传同名文件被覆盖,上传文件名称时,需要使用UUID进行文件名的拼接42.springmvc中配置拦截器43.springmvc中异常配置的两种方式,一种使用注解配置,一种使用控制器配置
44.springmvc中使用配置类进行配置,WebInit,WebConfig,SpringConfig
45.springboot中设置静态资源存放的位置46.springboot中设置rest风格的配置,并且处理前端index.html页面中出现中文乱码的问题47.springboot中配置类型转换,设置开启矩阵变量48.springboot中文件上传的controller与配置的文件上传的最大容量2023-09-16
导入的依赖
<dependencies> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.1</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <scope>provided</scope> <version>3.1.0</version> </dependency> <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring5</artifactId> <version>3.0.12.RELEASE</version> </dependency> </dependencies>
WebInit
package com.hh.config; import org.springframework.context.annotation.Configuration; import org.springframework.web.filter.CharacterEncodingFilter; import org.springframework.web.filter.HiddenHttpMethodFilter; import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; import javax.servlet.Filter; /** * @author hh * @version 1.0 * @DATE 2023-09-16 11:47:04 */ @Configuration public class WebInit extends AbstractAnnotationConfigDispatcherServletInitializer { @Override //设置一个配置类代替spring的配置文件 protected Class<?>[] getRootConfigClasses() { return new Class[]{SpringConfig.class}; } @Override //设置一个配置类代替springmvc的配置文件 protected Class<?>[] getServletConfigClasses() { return new Class[]{WebConfig.class}; } @Override //设置springmvc的前端控制器DispatcherServlet的url-pattern protected String[] getServletMappings() { return new String[]{"/"}; } @Override //设置当前的过滤器 protected Filter[] getServletFilters() { //创建编码过滤器 CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter(); characterEncodingFilter.setEncoding("UTF-8"); characterEncodingFilter.setForceEncoding(true); //创建处理请求方式的过滤器 HiddenHttpMethodFilter hiddenHttpMethodFilter = new HiddenHttpMethodFilter(); return new Filter[]{characterEncodingFilter,hiddenHttpMethodFilter}; } }
WebConfig
package com.hh.config; import com.hh.interceptor.FirstInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.web.context.ContextLoader; import org.springframework.web.context.WebApplicationContext; import org.springframework.web.multipart.commons.CommonsMultipartResolver; import org.springframework.web.servlet.HandlerExceptionResolver; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.*; import org.springframework.web.servlet.handler.SimpleMappingExceptionResolver; import org.thymeleaf.spring5.SpringTemplateEngine; import org.thymeleaf.spring5.view.ThymeleafViewResolver; import org.thymeleaf.templatemode.TemplateMode; import org.thymeleaf.templateresolver.ITemplateResolver; import org.thymeleaf.templateresolver.ServletContextTemplateResolver; import java.util.List; import java.util.Properties; /** * @author hh * @version 1.0 * @DATE 2023-09-16 11:50:22 */ //将类标识为配置类 @Configuration //扫描组件 @ComponentScan("com.hh.controller") //开启mvc的注解驱动 @EnableWebMvc public class WebConfig implements WebMvcConfigurer { @Override //默认的servlet处理静态资源 public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) { configurer.enable(); } @Override //配置视图解析器 public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController("/").setViewName("index"); } @Bean //@Bean注解可以将标识的方式的返回值作为bean进行管理 public CommonsMultipartResolver multipartResolver(){ return new CommonsMultipartResolver(); } @Override //配置拦截器 public void addInterceptors(InterceptorRegistry registry) { FirstInterceptor firstInterceptor = new FirstInterceptor(); registry.addInterceptor(firstInterceptor).addPathPatterns("/**"); } @Override //配置异常解析器 public void configureHandlerExceptionResolvers(List<HandlerExceptionResolver> resolvers) { SimpleMappingExceptionResolver exceptionResolver = new SimpleMappingExceptionResolver(); Properties prop = new Properties(); prop.setProperty("java.lang.ArithmeticException","error"); exceptionResolver.setExceptionMappings(prop); exceptionResolver.setExceptionAttribute("ex"); resolvers.add(exceptionResolver); } //配置生成模板解析器 @Bean public ITemplateResolver templateResolver(){ WebApplicationContext webApplicationContext = ContextLoader.getCurrentWebApplicationContext(); ServletContextTemplateResolver templateResolver = new ServletContextTemplateResolver(webApplicationContext.getServletContext()); templateResolver.setPrefix("/WEB-INF/templates/"); templateResolver.setSuffix(".html"); templateResolver.setCharacterEncoding("UTF-8"); templateResolver.setTemplateMode(TemplateMode.HTML); return templateResolver; } //生成模板引擎并为模板引擎注入模板解析器 @Bean public SpringTemplateEngine templateEngine(ITemplateResolver templateResolver){ SpringTemplateEngine templateEngine = new SpringTemplateEngine(); templateEngine.setTemplateResolver(templateResolver); return templateEngine; } //生成视图解析器并为解析器注入模板引擎 @Bean public ViewResolver viewResolver(SpringTemplateEngine templateEngine){ ThymeleafViewResolver viewResolver = new ThymeleafViewResolver(); viewResolver.setCharacterEncoding("UTF-8"); viewResolver.setTemplateEngine(templateEngine); return viewResolver; } }
SpringConfig
package com.hh.config; import org.springframework.context.annotation.Configuration; /** * @author hh * @version 1.0 * @DATE 2023-09-16 11:50:09 */ @Configuration public class SpringConfig { }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
2022-09-16 需求分析1