关键词:
【Java闭关修炼】SpringBoot-SpringBoot整合其他框架
SpringBoot整合Junit
实现步骤
用于单元测试
- 首先编写一个业务类 UserService
package com.itheima.service;
import org.springframework.stereotype.Service;
@Service
public class UserService
public void add()
System.out.println("add...");
- 编写测试类
package com.itheima.test;
// userService的测试类
import com.itheima.DemoSpring1Application;
import com.itheima.service.UserService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
// 注解 需要 添加springboot 引导类
@RunWith(SpringRunner.class)
@SpringBootTest(classes = DemoSpring1Application.class)
public class UserServiceTest
// 注入userService 调用add方法
@Autowired
private UserService userService;
@Test
public void testAdd()
userService.add();// 测试add
Springboot整合redis
创建新的工程 勾选redis
查看依赖redis
package com.itheima.springredis;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.BoundValueOperations;
import org.springframework.data.redis.core.RedisTemplate;
@SpringBootTest
class SpringRedisApplicationTests
// 注入redisTemplate
@Autowired
private RedisTemplate redisTemplate;
@Test
void testSet()
// 存入数据
redisTemplate.boundValueOps("name").set("zhangsan");
@Test
void testGet()
// 获取数据
Object name = redisTemplate.boundValueOps("name").get();// 通过key获取数据
Springboot整合mybatis
勾选依赖
MySQL Driver MyBatis FrameWork
配置datasource数据源信息
创建application.yml文件 填写配置信息
spring:
datasource:
url: jdbc:mysql:///db111
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
定义Mapper接口
使用Mapper接口操作数据库
package com.itheima.springbootmybatis.mapper;
import com.itheima.springbootmybatis.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.springframework.boot.autoconfigure.security.SecurityProperties;
import java.util.List;
@Mapper
public interface UserMapper
// 查询所有用户
@Select("select * from user")
public List<User> findAll();
测试
在引导类注入Mapper接口 进行测试
package com.itheima.springbootmybatis;
import com.itheima.springbootmybatis.domain.User;
import com.itheima.springbootmybatis.mapper.UserMapper;
import org.apache.ibatis.annotations.Mapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class SpringbootMybatisApplicationTests
@Autowired
private UserMapper userMapper;// 注入Mapper接口资源
@Test
public void testFindAll()
// 调用接口方法
List<User> all = userMapper.findAll();
System.out.println(all);
@Test
void contextLoads()
UserXmlMapper配置
- UserXmlMapper
package com.itheima.springbootmybatis.mapper;
import com.itheima.springbootmybatis.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface UserXmlMapper
public List<User> findAll();
映射配置文件
# datasource配置
spring:
datasource:
url: jdbc:mysql:///db11?serverTimezone=UTC
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
# 指定mybatis的核心配置文件
mybatis:
mapper-locations: classpath:mapper/*Mapper.xml # mapper映射文件路径
type-aliases-package: com.itheima.springbootmybatis.domain
# config-location:
利用springboot整合Mybatis测试
package com.itheima.springbootmybatis;
import com.itheima.springbootmybatis.domain.User;
import com.itheima.springbootmybatis.mapper.UserMapper;
import com.itheima.springbootmybatis.mapper.UserXmlMapper;
import org.apache.ibatis.annotations.Mapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class SpringbootMybatisApplicationTests
@Autowired
private UserMapper userMapper;// 注入Mapper接口资源
@Autowired
private UserXmlMapper userXmlMapper;
@Test
public void testFindAll()
// 调用接口方法
List<User> all = userMapper.findAll();
System.out.println(all);
@Test
public void testFindAll1()
// 调用接口方法
List<User> all = userXmlMapper.findAll();
System.out.println(all);
@Test
void contextLoads()
java闭关修炼springboot-springboot整合其他框架(代码片段)
【Java闭关修炼】SpringBoot-SpringBoot整合其他框架SpringBoot整合Junit实现步骤Springboot整合redisSpringboot整合mybatis勾选依赖配置datasource数据源信息定义Mapper接口测试UserXmlMapper配置SpringBoot整合Junit实现步骤用于单元测试首先编写一个业务... 查看详情
闭关修炼——one——struts2
今天是为期一个月闭关修炼的第一天---嘻嘻!今天以及之前所学的Struts2部分知识梳理。day1:什么是struts2 --- 是一种应用于javaee三层结构中web层的框架,在struts1和webwork基础之上发展全新的框架为什么要用struts2&nb... 查看详情
闭关修炼——six——spring
day3:基于aspectj的注解aop:会用Spring的jdbcTemplate操作:为什么会有jdbcTemplate(jdbc):做项目中尽量少用其它技术就能实现功能,不单单是jdbc的封装,spring对不同的持久化层技术都进行封装---jdbcTemplate使用和dbutils使用很相似,使用jd... 查看详情
闭关修炼——two——struts2
day3:ognl使用#的两种方式:获取域对象的值(request),<s:iterator>标签中获取list集合数据ognl使用%的方式:在struts2的表单标签中要使用%标识,不然不能识别,<s:textfiletype=‘text‘value=‘%{#request.username}‘/>el为什么能获取值... 查看详情
闭关修炼5个月的源码,终于拿到蚂蚁offer!
看到这条消息,我笑了因为我刚参加工作那会和他的想法一样搬砖两年我才明白源码非常重要,十场九面问源码这么和你说吧,不懂源码你就不了解其底层逻辑和实现原理这也意味着你只是一个代码的搬运工在求职市... 查看详情
闭关修炼5个月的源码,终于拿到蚂蚁offer!
看到这条消息,我笑了因为我刚参加工作那会和他的想法一样搬砖两年我才明白源码非常重要,十场九面问源码这么和你说吧,不懂源码你就不了解其底层逻辑和实现原理这也意味着你只是一个代码的搬运工在求职市... 查看详情
java修炼秘籍第八章:《string类》(代码片段)
...籍第三章:《绝地反击》JAVA修炼秘籍第四章:《闭关修炼》JAVA修炼秘籍第五章:《卧薪尝胆》JAVA修炼秘籍第六章:《鏖战》JAVA修炼秘籍第七章:《面向对象编程》JAVA修炼秘籍 查看详情
记忆2
正交变换法:二次曲面f(x1,x2,x3)=1的类型: 答案解析(点击即可查看) ------资料来自宇哥《闭关修炼》 查看详情
考研
...数视频课,算是打基础了。暑假前开始做张宇的1000题和闭关修炼,本人2020考研,个人感觉1000题没闭关修炼好用,由于先做的1000题后看的闭关修炼,所以1000题做的一塌糊涂,按张宇的进度是基础学完就闭关修炼,暑假刷题才是... 查看详情
asimplemathproblem(矩阵快速幂)(寒假闭关第一题,有点曲折啊)
ASimpleMathProblemTimeLimit:3000/1000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):155AcceptedSubmission(s):110 ProblemDescriptionLelenowisthinkingaboutasimplefunctionf(x 查看详情
被公司裁员后,闭关4个月硬肛37w字java核心开发手册,上岸字节
2021下半年Java就业情况乐观吗?回答问题前,先聊聊最近头条疯狂招人的事。2月末,头条官方宣布未来4个月将社招1w人,加大力度搞教育。风头还未过,前不久在9周年庆祝之际,又再度官宣,超1W个岗... 查看详情
java修炼之路——junit利器
JUnit超超超级初级入门案例 直接上代码演示: 比方说你现在写了一个ArrayList类的方法:publicclassArrayListimplementsList{privateintsize=0;privateObject[]elementData=newObject[100];publicvoidadd(Objecto){}publicvoidadd(intindex, 查看详情
visualstudiocode闭关java的代码语法检查。把java代码的红色下划波浪线去掉。visualstudiocode的大纲不显示java代码的结构信息?
效果图: 如上图所示,我在一个Java文件里面定义了多个public的类,也没有导入相关的jar包。但都没有出现红色的下划线、语法报错之类红色警告。目的:为了增强用VisualStudioCode阅读我的核心源码分析笔记时的阅... 查看详情
面试拼多多java岗被刷了三次,在家闭关刷题66天,卷土重来,终获offer
引言这是群里一个朋友分享的故事,讲述的是他进入大厂拼多多的经历。(为数不多的,让我真心佩服的人)他说之前就一直就想进拼多多工作,没有别的理由,就冲着他薪资待遇去的。故事开始(第... 查看详情
闭关java第五天(代码片段)
数组的定义数组是相同类型的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序组合而成的每一个数据都被称为数据元素,可以通过下标来访问他们Java内存分析堆:存放new对象和数组,可以被所有的线程共享... 查看详情
java修炼之道--集合框架(代码片段)
原作地址:https://github.com/frank-lam/2019_campus_apply前言 Java集合框架(JavaCollectionsFramework,JCF)也称容器,这里可以类比C++中的STL,在市面上似乎还没能找到一本详细介绍的书籍。在这里主要对如下部分进行源码分析,及在面试中常... 查看详情
java个人修炼总纲
身为一个Java程序猿,一直以来对于自己学习过的内容都没有做过很好的总结,平时零零碎碎的东西总是串不起来或者了解不够深入,总是在面试或者工作当中发挥不理想。虽然有了四五年的工作经历,却并没有把经历转为... 查看详情
java修炼之道--并发编程(代码片段)
原作地址:https://github.com/frank-lam/2019_campus_apply前言在本文将总结多线程并发编程中的常见面试题,主要核心线程生命周期、线程通信、并发包部分。主要分成“并发编程”和“面试指南”两部分,在面试指南中将讨论并发相关... 查看详情