ssm整合中需要使用的依赖jar包与包含的配置类
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,SpringConfig45.springboot中设置静态资源存放的位置46.springboot中设置rest风格的配置,并且处理前端index.html页面中出现中文乱码的问题47.springboot中配置类型转换,设置开启矩阵变量48.springboot中文件上传的controller与配置的文件上传的最大容量2023-09-09
注意,注意,一定要注意,mybatis的jar包与mybatis-spring的jar包的版本,一定要看这两个jar包的版本下面是与java8匹配的版本
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>SSMIntegration</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>SSMIntegration Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.13</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.2.16</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.26</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.11.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.11.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.2.11.RELEASE</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.0</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.11.RELEASE</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.15.2</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.1</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </build> </project>
JdbcConfig
package com.hh.config; import com.alibaba.druid.pool.DruidDataSource; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.jdbc.datasource.DataSourceTransactionManager; import org.springframework.transaction.PlatformTransactionManager; import javax.sql.DataSource; /** * @author hh * @version 1.0 * @DATE 2023-09-08 20:39:35 */ public class JdbcConfig { @Value("${jdbc.driverClassName}") private String driver; @Value("${jdbc.url}") private String url; @Value("${jdbc.username}") private String username; @Value("${jdbc.password}") private String password; @Bean public DataSource dataSource(){ DruidDataSource druidDataSource = new DruidDataSource(); druidDataSource.setDriverClassName(driver); druidDataSource.setUrl(url); druidDataSource.setUsername(username); druidDataSource.setPassword(password); return druidDataSource; } @Bean public PlatformTransactionManager platformTransactionManager(DataSource dataSource){ DataSourceTransactionManager ds = new DataSourceTransactionManager(); ds.setDataSource(dataSource); return ds; } }
MybatisConfig
package com.hh.config; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.mapper.MapperScannerConfigurer; import org.springframework.context.annotation.Bean; import javax.sql.DataSource; /** * @author hh * @version 1.0 * @DATE 2023-09-08 20:43:15 */ public class MybatisConfig { @Bean public SqlSessionFactoryBean sqlSessionFactory(DataSource dataSource){ SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setTypeAliasesPackage("com.hh.domain"); sqlSessionFactoryBean.setDataSource(dataSource); return sqlSessionFactoryBean; } @Bean public MapperScannerConfigurer mapperScannerConfigurer(){ MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer(); mapperScannerConfigurer.setBasePackage("com.hh.dao"); return mapperScannerConfigurer; } }
ServletConfig
package com.hh.config; import org.springframework.web.filter.CharacterEncodingFilter; import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; import javax.servlet.Filter; /** * @author hh * @version 1.0 * @DATE 2023-09-08 20:46:39 */ public class ServletConfig extends AbstractAnnotationConfigDispatcherServletInitializer { @Override protected Class<?>[] getRootConfigClasses() { return new Class[]{ SpringConfig.class }; } @Override protected Class<?>[] getServletConfigClasses() { return new Class[]{ SpringMvcConfig.class }; } @Override protected String[] getServletMappings() { return new String[]{"/"}; } //乱码处理 @Override protected Filter[] getServletFilters() { CharacterEncodingFilter filter = new CharacterEncodingFilter(); filter.setEncoding("utf-8"); return new Filter[]{filter}; } }
SpringConfig
package com.hh.config; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; import org.springframework.context.annotation.PropertySource; /** * @author hh * @version 1.0 * @DATE 2023-09-08 20:39:00 */ @Configuration @ComponentScan("com.hh.service") @PropertySource("classpath:jdbc.properties") @Import({JdbcConfig.class,MybatisConfig.class}) public class SpringConfig { }
SpringMvcConfig
注意注意@PropertySource
一定要加上classpath:
如果单独加
"jdbc.properties"
的话,会报找不到找不到
jdbc.properties的错误
package com.hh.config; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; import org.springframework.context.annotation.PropertySource; /** * @author hh * @version 1.0 * @DATE 2023-09-08 20:39:00 */ @Configuration
@ComponentScan({"com.hh.controller","com.hh.config"})
@PropertySource("classpath:jdbc.properties")
@Import({JdbcConfig.class,MybatisConfig.class})
public class SpringConfig { }
SpringMvcConfigSupport
package com.hh.config; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; /** * @author hh * @version 1.0 * @DATE 2023-09-09 9:57:14 */ @Configuration public class SpringMvcConfigSupport extends WebMvcConfigurationSupport { @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/pages/**").addResourceLocations("/pages/"); registry.addResourceHandler("/js/**").addResourceLocations("/js/"); registry.addResourceHandler("/css/**").addResourceLocations("/css/"); registry.addResourceHandler("/plugins/**").addResourceLocations("/plugins/"); } }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
2022-09-09 MySQL第七天
2022-09-09 闭包第一天