SSM框架
文章平均质量分 71
包含Spring、SpringMVC、MyBatis内容
执久呀
你若盛开,清风自来
展开
-
猿创征文|基于SSM框架+java+maven+jsp的小项目
学习完ssm框架练习的小项目,简单的crud文件地址(68条消息) 基于SSM框架+java+maven+jsp的小项目-Java文档类资源-CSDN文库。原创 2022-09-06 11:15:30 · 545 阅读 · 10 评论 -
13万字学会Spring+SpringMVC+Mybatis框架
目录Spring介绍Spring是什么Spring发展历程Spring优势Spring的体系结构 Spring快速入门Spring程序开发步骤idea中快速入门 Spring配置文件Bean标签基本配置Bean标签范围配置 无参构造创建时机Bean生命周期配置 Bean实例化三种方式 Bean的依赖注入分析依赖注入概念将UserDao注入到UserService内部的方式set注入方法改进 有参构造注入方法Bean的依赖注入的数据类型集合的数据类型注入 引入其他配置文件(分模块开发)Spring的重点配原创 2022-09-03 10:05:03 · 7222 阅读 · 81 评论 -
猿创征文|Spring、SpringMVC、Mybatis整合测试
SSM整合测试①创建数据库②创建maven工程③pom.xml中导入对应的坐标④编写实体类⑤编写Mapper接口(dao接口)⑥编写service接口⑦编写Service接口实现⑧编写Controller⑨编写jsp添加页面⑩编写列表jsp展示页面①①编写响应的配置文件applicationContext.xmljdbc.propertiesspring-mvc.xmlsqlMapConfig.xmlsqlMapConfig-spr......原创 2022-09-01 11:05:14 · 733 阅读 · 13 评论 -
猿创征文|SSM框架整合思路
SSM框架整合原始整合方式①创建数据库②创建maven工程③叁导入maven对应坐标④编写实体类⑤编写Mapper接口(dao接口)⑥编写service接口⑦编写Service接口实现⑧编写Controller⑨编写jsp添加页面⑩编写列表jsp展示页面①①编写响应的配置文件①②测试添加账户①③测试账户列表......原创 2022-09-01 09:11:47 · 373 阅读 · 0 评论 -
猿创征文|Mybatis的注解实现复杂映射开发
实现复杂关系映射之前哦我们可以在映射文件中通过配置来实现,使用注解来发后,我们可以使用@Results注解,@Result注解,@Many注解组合完成复杂关系的。用户表和订单表的关系为,一个用户有多个订单,一个订单只属于一个用户。用户表和角色表的关系为,一个用户有多个角色,一个角色被多个用户使用。一对多查询的需求:查询一个用户,与此同时查询出该用户具有的订单。多对多查询的需求:查询用户同时查询出该用户的所有角色。OrderMapper接口下。test类下的测试下。......原创 2022-08-31 17:37:03 · 781 阅读 · 4 评论 -
猿创征文|Mybatis注解完成增删改查操作
这几年来注解开发越来越流行,Mybatis也可以使用注解开发方式,这样我们就可以减少编写Mapper映射文件了。我们先围绕一些基本的CRUD来学习,再学习复杂映射多表操作。sqlMapConfig配置文件中新增。在UserMapper接口中。......原创 2022-08-30 10:29:36 · 509 阅读 · 1 评论 -
猿创征文|Mybatis的多表操作之多对多查询与练习
sqlMapConfig.xml下加入此mapper的Order_User_RoleMapper.xml文件。pojo包下的三个实体类基本不变,user类中需要加入订信息和角色信息。用户表和角色表的关系为,一个用户有多个角色,一个角色被多个用户使用。一个用户有多个角色,一个订单属于一个用户,一个用户有多个订单。UserMapper.xml文件下(配置sql的文件)多对多查询的需求:查询用户同时查询出该用户的所有角色。即一个用户,显示他们角色信息,订单信息,pojo下的role类。pojo下的user类。..原创 2022-08-29 10:32:03 · 402 阅读 · 1 评论 -
Mybatis的多表操作之一对一/多查询
sqlMapConfig.xml还是一样的配置,多出了引入OrderMapper.xml。用户表和订单标的关系为,一个用户有多个订单,一个订单只属于一个用户。用户表和订单表的关系为,一个用户有多个订单,一个订单只属于一个用户。一对一查询的需求:查询一个订单,与此同时查询出该订单所属的用户。一对多查询的需求:查询一个用户,与此同时查询出该用户具有的订单。OrderMapper.xml下。单独的分离出来,结果也是一致的。UserMapper.xml下。pojo包下的order类下。pojo下user类下。原创 2022-08-23 11:42:31 · 2450 阅读 · 12 评论 -
运行时发现 xxx cannot be cast to xxx
之前在弄的时候因为省时间,将建包代替了建模块,重复利用了之前的配置导致的,这里我检查了好久才发现实在sqlMapConfig.xml中起别名的时候,将之前的包名字重复用了,查询出来取出来可以正常显示。所以报出不能强行转换。原创 2022-08-22 11:31:18 · 3948 阅读 · 0 评论 -
Mybatis核心配置文件中的常用标签
例如需求:一个Java中的Date数据类型,我想将之存到数据库的时候存成一个1970年至今的毫秒数,取出来时转换成java的Date,即java的Date与数据库的varchar毫秒值之间转换。之前在弄的时候因为省时间,将建包代替了建模块,重复利用了之前的配置导致的,这里我检查了好久才发现实在sqlMapConfig.xml中起别名的时候,将之前的包名字重复用了,所以报出不能强行转换。可以重写类型处理器或创建你自己的类型处理器来处理不支持的或非标准的类型。:配置MyBatis的插件。原创 2022-08-22 11:33:20 · 769 阅读 · 7 评论 -
Mybatis映射文件中动态sql语句
拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。通常使用动态 SQL 不可能是独立的一部分,MyBatis 当然使用一种强大的动态 SQL 语言来改进这种情形,这种语言可以被用在任意的 SQL 映射语句中。概述:Mybatais的映射文件中,前面我们的SQL都是比较简单的,有时候业务逻辑复杂时,我们的sql时动态变化的,此时在其那面学习的sql就不能满足要求了。sql中可将重复的sql提取出来,使用include引用即可,最终达到sql重用的目的。UserMapper接口下。原创 2022-08-21 13:48:47 · 586 阅读 · 4 评论 -
MyBatis的相应API与传统和代理开发的Dao层实现
Resources工具类,这个类在org.apache.ibatis.io包中。,由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同上边Dao接口实现类方法。SqlSession实例在MyBatis是非常强大的一个类,在这里会看到所有执行语句、提交或回滚事务和获取映射实例的方法有。通过加载mybatis的核心文件的输入流的形式构建一个SqlSessionFactory对象。采用Mybatis的电路考法方式实现Dao层的开发,这种方式是我们进入企业的主流。操作事务的方法主要有。原创 2022-08-20 11:01:18 · 879 阅读 · 56 评论 -
Mybatis常用核心配置文件概述
数据库环境配置。,支持多环境配置其中,事务管理器(transactionManager)类型有两种:JDBC:这个配置就是直接使用了JDBC的提交和回滚设置,它依赖干从数据源得到的连接来管理事务作用域MANAGED:这个配置几乎没做什么。它从来不提交或回滚一个连接,而是让容器来管理事务的整个生命周期(比如JEE应用服务器的上下文)。默认情况下它会关闭连接,然而一些容器并不希望这样,因此需要将closeConnection属性设置为false来阻止它默认的关闭行为。原创 2022-08-19 11:06:57 · 173 阅读 · 9 评论 -
Mybatis映射文件概述与增删改查操作
mybatisTest下@Test//模拟user对象//获得核心配置文件//获得session工厂对象//获得session会话对象//执行操作 参数:namespace+id//mybatis默认不自动提交事务,提交后才能持久化到数据库中//释放资源}UserMapper.xml下运行结果。.........原创 2022-08-18 11:06:04 · 695 阅读 · 14 评论 -
MyBatis简介测试
原始jdbc开发存在的问题如下:①数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能③sql语句在代码中硬编码,造成代码不易维护,实际应用sql变化的可能较大,sql变动需要改变java代码。③查询操作时,需要手动将结果集中的数据手动封装到实体中。插入操作时,需要手动将实体的数据设置到sql语句的占位符位置应对上述问题给出的解决方案:①使用数据库连接池初始化连接资源②将sql语句抽取到xml配置文件中③使用反射、内省等底层技术,自动将实体与表进行属性与字段的自动映射。......原创 2022-08-16 13:44:10 · 1996 阅读 · 4 评论 -
编程事务之基于注解的声明式事务控制
使用注解方式(改动bean,自定义的bean用注解,非自定义的bean配置到配置文件中去),需要改动两个,一个是配置文件applicationContext,另一个是AccountServiceImpl类applicationContext配置文件运行结果。原创 2022-08-15 10:18:30 · 121 阅读 · 3 评论 -
编程式事务之基于XML的声明式事务控制
TransactionDefinition是事务的定义信息对象,里面有如下方法:设置隔离级别,可以解决事务并发产生的问题,如ISOLATION_DEFAULT//默认的ISOLATION_READ_UNCOMMITTED//读未提交,哪种都不能解决ISOLATION_READ_COMMITTED//读已提交,解决脏读ISOLATION_REPEATABLE READ//可重复读,解不可重复读ISOLATION_SERIALIZABLE//串行化,解决所有,性能最低。...原创 2022-08-14 11:23:17 · 385 阅读 · 4 评论 -
基于注解的AOP开发
同xml配置aop一样。我们可以将切点表达式抽取,抽取方式是在切面内定义方法,早该方法上使用。③将目标类和切面类的对象创建权交给spring。⑤在配置文件中开启组件扫描和AOP的自动代理。定义切点表达式,然后在在增强注解中进行引用。①创建目标接口和目标类(内部有切点)快速入门,基于注解的aop开发步骤。④在切面类中使用注解配置织入关系。②创建切面类(内部有增强方法)MyAspect切面类下。AnnoTest测试类下。Interface类下。其中Target类下。...原创 2022-08-13 13:52:35 · 445 阅读 · 4 评论 -
基于xml的AOP开发
①导入AOP相关坐标②创建目标接口和目标类(内部有切点)③创建切面类(内部有增强方法)④将目标类和切面类的对象创建权交给spring⑤在applicationContext.xml中配置织入关系⑥测试代码1、导入坐标spring-context本身有aop的实现,但是aspectj更好,aspectj本身就是一个小框架。MyAspect切面类(有增强方法)applicationContext.xml下AopTest测试类下运行之后报错了仔细一看需要Junit4.12以上的版本,改完之后,...原创 2022-08-12 09:33:46 · 313 阅读 · 17 评论 -
Spring的AOP介绍和使用
AOP为Aspect Oriented Programming的缩写,意思为面向切面编程,是通过预编译方式和运行期动态代理实现程序功能的同一维护的一种技术。AOP是OOP(面向对象编程)的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型,利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的课重用性,同时提高了开发的效率。......原创 2022-08-10 11:00:09 · 2166 阅读 · 16 评论 -
JdbcTemplate查询操作
目录查询操作查询所有 查询单个聚合查询 知识要点总结查询操作需要放入字节码对象.class数据库中 运行结果 运行结果 是一个实体就new一个对象,但是一个简单的数据,则创建一个普通的数据...原创 2022-08-09 13:59:40 · 4637 阅读 · 3 评论 -
Spring集成Junit完成JdbcTemplate修改和删除,jdbc内容和配置解耦合
在pom.xml需要导入两个包,spring-test包和Juit包。抽取配置文件中的jdbc代码,使用单独的一个配置文件将次分开。一开始我使用了junit4.11的版本。原创 2022-08-06 11:28:00 · 671 阅读 · 19 评论 -
运行时,出现java.lang.NoClassDefFoundError: org/springframework/core/metrics/ApplicationStartup
运行时,出现java.lang.NoClassDefFoundError: org/springframework/core/metrics/ApplicationStartup。原因是:版本号不一致,改为一致即可正常运行。原创 2022-08-06 11:14:05 · 7032 阅读 · 4 评论 -
JdbcTemplate概述和测试
他是spring框架中提供的一个对象,是对原始繁琐的jdbc API对象的简单封装。spring框架为我们提供了很多的操作模板类。例如:操作关系型数据的JdbcTemplate和HivernateTenplate,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate等。...原创 2022-08-03 13:53:52 · 940 阅读 · 31 评论 -
SpringMVC获得请求头和文件上传
使用@RequestHeader可以获得请求头信息,相当于web阶段学习的requestgetHeader(name)下列代码是,把请求头名为User-Agent的请求数据赋值给headerValue,然后。这样就可以获得cookie的值,cookie也是键值对的形式。使用@CookieValue可以获得指定的Cookie的值。方法中参数要和jsp中的name值对应。访问之后,F12打开网络查看。多文件上传只需要多加参数即可。jsp中name的值都一致。文件上传客服端三要素。②配置文件上传解析器。.....原创 2022-08-01 14:58:22 · 1555 阅读 · 13 评论 -
SpringMVC全局乱码过滤器、注解@RequestParam、自定义类型转换器
SpringMVC默认已经提供了一些常用的类型转换器,例如客户端提交得字符串转化为int型进行参数设置但不是所有的数据类型都提供了转换器,没有提供的就需要自定义转换器,例如日期类型的数据就需要自定义转换器。①定义转换器类实现Converter接口②在配置文件中声明转换器③在中引用转换器①定义转换器类实现Converter接口在converter包下。//ConverterString类型转date类型②在配置文件中声明转换器...原创 2022-07-24 16:28:55 · 822 阅读 · 23 评论 -
SpringMVC获得请求数据类型
当使用ajax提交时,可以指定contentType为json形式,那么在方法参数位置使用@RequestBody可以是直接接收结合数据而无需使用POJO进行包装。解释访问资源时,SpringMVC找对应的匹配地址,如果找不到则交给原始的容器(这原始的容器为tomcat)tomcat可以找有能力访问静态资。Controller中的业务方法的pojo参数的属性名与请求参数的name一直,参数值会自动映射匹配。重启服务器运行之后就可以访问了,在网络中查看访问包的情况,共有三次请求。pojo包下的User类。..原创 2022-07-18 10:21:17 · 313 阅读 · 8 评论 -
SpringMVC回写数据方式方法
目录回写数据1、直接返回字符串 将字符串转成json格式回传到客户端2、直接返回对象或集合 使用SpringMVC自动将对象或集合转化为json格式 注解方式转化json mvc命名空间Web基础截断,客户端访问服务器端,如果想直原创 2022-07-13 10:12:00 · 870 阅读 · 2 评论 -
SpringMVC数据页响应ModelAndView之页面跳转
目录SpringMVC的数据响应SpringMVC的数据响应方式①页面跳转②回写数据2、返回ModelAndView对象方式1:直接new对象 方式2:写在方法里让SpringMVC创建方式3:model和view分开做方式4:通过HttpServletRequest页面跳转1、返回字符串形式直接返回字符串:此种方式会将返回的字符串与视图解析器的前后缀拼接后跳转。 返回带有前缀的字符串:2、返回ModelAndView对象方式1:直接new对象方式3:model和vi原创 2022-07-10 09:44:24 · 3726 阅读 · 12 评论 -
SpringMVC组件和注解解析
目录 SpringMVC的组件解析SpringMVC执行流程执行流程图示SpringMVC注解解析@RequestMappingSpringMVC的xml配置解析SpringMVC的相关组件SpringMVC的注解和配置属性: method:用于指定请求的方式(不是这种请求无法访问) params:用于指定限制请求参数的条件,他支持简单的表达式,要求请求参数的key和value必须和配置的一模一样,如: xxx内容可以任意,只要带有指定的参数即可。1.mvc命名空间原创 2022-07-08 15:17:42 · 724 阅读 · 34 评论 -
Spring中的监听器与SpringMVC简述
目录Spring中的监听器SpringMVC概述web层的框架完成的相应的操作图示SpringMVC开发使用步骤SpringMVC流程图示 前一篇写出的手动实现的监听器,Spring提供了一个监听器ContextLoderListener就是对上述功能的封装,该监听器内部加载Spring配置文件,创建应用上下文对象,并存储到ServletContext域中,提供一个客户亿工具WebApplicationContextUtils供使用者获得上下文对象要使用监听器,需要做两件事:在pim.xml中导入坐标原创 2022-07-06 11:52:57 · 1415 阅读 · 19 评论 -
Maven配置tomcat服务器和ApplicationContext应用上下文获取方法
目录Maven配置tomcat服务器使用maven手动创建web工程 ApplicationContext应用上下文获取方法web.xml下配置监听器优化代码解耦合1解耦合2首先这得是war包,如果这是普通包得添加webapp,并将pom.xml中加入如下,表示这是一个web文件加完之后点击编辑配置 其下的war二选一即可 完成之后点击确认即可完成配置。第一步,点击项目结构,选中 要添加的maven工程,右键添加web。 第二步,点击web工程,修改web工程路径 点击完成即可完成web工程的手动配置原创 2022-07-04 15:28:10 · 1777 阅读 · 11 评论 -
Spring集成Junit
目录 Spring集成Junit Spring集成Junit步骤Spring与Web环境集成 项目结构总览原始Junit测试Spring的问题在测试类中,每个测试方法都有一下两行代码:这两行代码的作用是获取容器,如果不写的话,直接会提示空指针异常,所以又不能轻易删除。解决思路①导入spring集成Junit的坐标(首先导入好junit)②使用@Runwith注解替换原来的运行期③使用@ContextConfiguration指定配置文件或配置类④使用@Autowired注入需要测试的对象⑤创建测试方法原创 2022-07-03 10:39:47 · 722 阅读 · 0 评论 -
Spring新注解
目录 Spring新注解使用新注解替换xml文件web包下的UserController测试下运行结果非自定义的Bean的配置:加载properties文件的配置:组件扫描的配置:引入其他文件:spring新注解原创 2022-06-23 08:42:09 · 313 阅读 · 0 评论 -
Spring注解开发
目录Spring注解开发Spring原始注解使用注解改进在UserServiceImpl中其他改进写法注解方式注入普通值初始方法注解Spring注解开发Spring是轻代码而中配置,配置比较繁琐,影响开发效率,所以注解开发是一种趋势,注解代替xml配置文件可以简化配置,提高开发效率。Spring原始注解Spring原始注解主要是替代<Bean>的配置注意:使用注解进行开发是,需要在applicationContext...原创 2022-04-30 18:40:24 · 575 阅读 · 1 评论 -
Spring数据源配置
目录Spring相关的APIApplicationContext的继承体系ApplicationContext的实现类getBean()方法使用Spring配置数据源(连接池)数据源的开发步骤加载配置文件方式创建将DateSource的创建权交给Spring容器去完成抽取jdbc配置文件Spring相关的APIApplicationContext的继承体系applicationContext:接口类型,代表应用上下文,可以通过其实例获得Spring..原创 2022-04-22 16:13:26 · 3145 阅读 · 3 评论 -
Spring依赖注入
目录依赖注入概念将UserDao注入到UserService内部的方式set注入方法改进有参构造注入方法Bean的依赖注入的数据类型集合的数据类型注入引入其他配置文件(分模块开发)Spring的重点配置依赖注入概念上面的缺点也很明显,是同时获取service和dao层的到时我们只想要service层,所以此时,需要依赖注入,把dao注入到service服务层依赖注入(DependencyInjection):它是Spring框架核心IOC的具体实现。..原创 2022-04-16 14:37:21 · 521 阅读 · 1 评论 -
Spring配置文件
目录Spring配置文件Bean标签基本配置Bean标签范围配置无参构造创建时机Bean生命周期配置Bean实例化三种方式Spring配置文件Bean标签基本配置用于配置对象交由Spring来创建默认情况下他调用的是类中的无参构造函数,如果没有无参构造函数则不能创建成功。基本属性:id:Bean实例在Spring容器中的唯一标识class:Bean的限定名称Bean标签范围配置scope:指对象的作用范围,取值如下:取值范围......原创 2022-04-10 16:26:04 · 1353 阅读 · 6 评论 -
Spring简介
目录Spring介绍Spring是什么Spring发展历程Spring优势Spring的体系结构Spring快速入门Spring程序开发步骤idea中快速入门Spring介绍Spring是什么Spring是分层的JavaSE/EE应用full-stack轻量级开源框架,以loC(InverseOfControl:反转控制)和 AOP(AspectOrientedProgramming:面向切面编程)为内核。提供了展现层SpringMVC和持久层Sp..原创 2022-04-09 14:49:01 · 1411 阅读 · 4 评论