Java
文章平均质量分 83
天落枫
请叫我xiaopi3
展开
-
Java小知识点
目录1 Double类型保留两位小数的方法2 Groovy数组join方法,数组转字符串3 springboot启动时执行初始化代码1 Double类型保留两位小数的方法double x = 21.94832;// 方法1,2为标度,非标度值可以用该值乘10的次幂double y1 = new BigDecimal(x).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();// 方法2,double y2 = new DecimalFormat(原创 2021-03-03 16:47:50 · 74 阅读 · 2 评论 -
springboot jpa批量新增、更新、删除、查询数据
springboot jpa使用:写一个dao层,定义一个类// PersonDao.java@Repositorypublic interface PersonDao extends JpaRepository<PersonPO,String>, JpaSpecificationExecutor<PersonPO>{}在controller层注入该类,并调用即可默认的删除方法有:delete(实体),只能传入一个可以对应到数据库的实体,即数据库中存在一样的数据原创 2021-03-03 16:02:25 · 8507 阅读 · 2 评论 -
前后台联动实现网页点击文件下载功能
前提背景:前端使用react,后端使用springboot需求:前台点击按钮,实现后台查询数据库生成报表返回给浏览器下载,使用post请求代码为了使用方便,可以对请求进行封装前端代码request.jsimport axios from 'axios'const requestFile = axios.create({ responseType:blob})requestFile.interceptors.response.use(response => { let d原创 2021-02-20 10:13:18 · 488 阅读 · 0 评论 -
SpringMVC复习——B站
目录1 常识1.1 回顾jsp/servlet2 springmvc2.1 QuickStart(原理讲解,实际中不使用该步骤)2.2 QuickStart2.3 总结3 controller详解3.1 实现接口3.2 注解方式3.3 RESTful风格3.4 结果跳转方式3.5 请求参数3.6 返回结果4 乱码问题4.1 servlet过滤器4.2 spring过滤器4.3 其他方法5 JSON(@RestController)6 SSM整合7 Ajax8 拦截器8.1 拦截器Demo:登录拦截9 文件上原创 2021-01-01 10:57:49 · 173 阅读 · 0 评论 -
Mybatis复习2——B站
目录8 分页8.1 分页插件9 注解开发9.1 面向接口编程9.2 注解开发(了解,项目不允许使用)10 Mybatis执行流程11 Lombok12 复杂关系查询12.1 多对一12.1.1 子查询12.1.2 结果集映射12.2 一对多12.2.1 子查询12.2.2 结果集映射13 动态SQLifchosesettrimforeachsql14 缓存14.1 一级缓存14.2 二级缓存14.3 自定义缓存14.3.1 使用第三方缓存14.3.2 使用自定义类8 分页SQL分页查询:Limit s原创 2020-12-16 20:19:27 · 124 阅读 · 1 评论 -
Mybatis复习1——B站
目录1 简介工作原理持久化2 搭建环境2.1 创建数据库2.2 创建idea项目2.3 编写核心配置文件2.4 编写mybatis工具类2.5 编写POJO2.6 编写dao接口2.7 编写dao接口配置文件2.8 单元测试2.9 排错2.10 优化1 简介参考文档:https://mybatis.org/mybatis-3/zh/index.html优秀持久化框架,使用简单的xml来映射pojo到数据库简化JDBC代码Mybatis与Hibernate区别:Mybatis:半自动映射框架,需要原创 2020-12-16 17:54:35 · 307 阅读 · 1 评论 -
网络编程复习——B站
目录1. 知识点2. 通信协议3. TCP编程Demo1. 知识点ip地址在java中的实现包:InetAddressip地址作用:确定唯一一台计算机127.0.0.1:本机,等同于localhostip地址分类:ipv4:4个字节组成,0-255,一共42亿个ipv6:16个字节组成,2个字节一组,不同组使用:隔开,(4个16进制数为一组,一共8组)端口:应用程序的入口,不同的进程有不同的端口号,TCP和UDP端口号都有65535个。公有端口:0-1023HTTP:80HTTP原创 2020-12-13 13:14:42 · 568 阅读 · 0 评论 -
MySQL复习——B站
目录简介安装简介数据库用于存储数据,软件体系的核心数据库分类:关系型和非关系型关系:Mysql、Oracle、SqlServer、DB2、SQLlite非关系:Redis、mongDB关系型存储的是表,包含行和列非关系型:存储对象,对象中的字段由自身的属性来决定,实时更新结构(适用于热搜等业务)DBMS:数据库管理系统使用语言:SQL优点:体积小、速度快、学习成本低,可做集群安装尽量不要使用exe,协助会有残留已经注册表问题使用zip包安装下载解压配置mysql环境变量,bi原创 2020-12-06 16:50:43 · 5016 阅读 · 0 评论 -
注解和反射复习——B站
目录注解内置注解元注解反射注解JDK5引入的作用:1 可以对程序做出解释 2 可以让编译器读取(通过反射)格式:@XXXX(xxx=xxx)内置注解@Override@Deprecated@SuppressWarnings:抑制编译时的警告信息元注解作用:负责注解其他注解,java定义了4个元注解@Target:描述注解的使用范围@Retention:描述注解的声明周期级别(source<class<runtime),一般都是runtime@Document:描述注解原创 2020-11-21 11:21:35 · 141 阅读 · 1 评论 -
多线程复习——B站
目录线程创建继承Thread程序:指令的集合,是静态的进程:程序执行后的动态行式,是系统分配资源的基本单元线程:一个进程至少有一个线程,是CPU调度执行的基本单位多线程:真多线程是指多个CPU同时服务(并行),伪多线程是指一个CPU的多次切换模拟出的效果(并发)线程创建三种方法:继承Thread类实现Runnable接口实现Callable接口继承Thread步骤:继承Thread–重写run–调用start方法注意:线程执行顺序,无法确定!...原创 2020-11-15 22:10:38 · 106 阅读 · 0 评论 -
Spring复习——B站
IOC创建对象方式IOC默认创建对象方式:使用无参构造方法,也可以使用构造器方法注入(有参构造)有参构造里有三种方法:- 索引注入- 参数类型注入:基本数据类型直接写:int,引用数据类型写全路径:java.lang.Striing,如果存在多参数同类型,则不采用!- 参数名注入:通过name和value来指定在配置文件加载时,spring容器中托管的所有类就已经被初始化了Spring配置alias:别名bean:配置javabean,其中id为唯一标识符,name为别名,用逗号或空格分号原创 2020-11-08 10:37:58 · 159 阅读 · 0 评论 -
OKHttp 快速开始
OKHttp 快速开始OKHttp 快速开始同步请求get异步请求getpost设置请求头下载文件封装拦截器应用拦截器网络连接器OKHttp 快速开始官方网址:https://square.github.io/okhttp/代码仓库:https://github.com/square/okhttp该库是一个第三方库,用于请求网络,支持同步和异步两种请求方式同步请求get对于同步请求在请求时需要开启子线程,请求成功后需要跳转到UI线程修改UI。public void getDatasync(原创 2020-06-22 15:06:38 · 353 阅读 · 0 评论 -
RestTemplate快速开始
RestTemplate快速开始快速开始发送https快速开始在发送url请求时,使用该工具方便将获取的请求进行映射之类的操作,参数全部放在map对象中,使用HashMap进行封装xxx xx = restTemplate.getForObject(url,xxx.class[,params])xxx xx = restTemplate.postForObject(url,xxx.class[,data]) HashMap<String, String> map = new原创 2020-06-22 14:51:25 · 193 阅读 · 0 评论 -
GsonQuickStart
GsonQuickStartGson 快速开始!解析JsonObject对象普通对象数组对象自定义解析GsonBuilder@Expose注解@SerializedName注解解析复杂对象Gson 快速开始!Gson是谷歌搞出来的用来解析json的工具,运用了java的反射机制,他的功能主要有:将java对象解析成json对象将json对象解析成java对象使用时需要在maven工程中导入相应依赖<dependency> <groupId>com.google.原创 2020-06-22 14:50:03 · 134 阅读 · 0 评论 -
Javase基础(二)——数据类型
Javase基础(二)——数据类型Javase基础(二)——数据类型和运算常量进制概述和二,八,十六进制进制转换源码、反码、补码原码反码补码变量的概述及格式变量相加和常量相加的区别数据类型基本数据类型分类(4类8种)字符和字符串char数据类型占用空间转义字符自动类型转换字符串与基本类型转换小数准确运算注意事项隐式转换强制转换算术运算符算术运算符++和--赋值运算符关系运算符逻辑运算符短路运算区别位运算符位异或运算符的特点三元运算符键盘录入选择结构循环结构转义字符方法方法重载数组数组动态初始化数组遍历数据类原创 2020-06-22 14:43:39 · 269 阅读 · 0 评论 -
Javase基础(一)——概述
Javase基础(一)——概述Javase基础(一)——概述A:Java语言发展史B:Java语言版本C:Java语言平台Java语言特点Java语言跨平台原理JRE和JDK的概述JDK的下载和安装JDK安装路径下的目录解释path环境变量的作用及配置方式1方式2classpath环境变量的作用Java开发工具HelloWorldHelloWorld常见问题Java语言的书写规范注释的分类关键字标识符命名规则总结Javase基础(一)——概述A:Java语言发展史詹姆斯?高斯林(James Gosl原创 2020-06-22 14:42:27 · 323 阅读 · 0 评论 -
分布式服务之间的通讯-RPC实战
分布式服务之间的通讯-RPC实战依据服务最佳实践分包粒度序列化实现步骤一、 定义两个服务模块二、提取共同的api模块前提:在会议发布后,需要提供依据会议id查询发布该会议的员工信息provider:员工信息模块consumer:会议模块注意:由于是两个模块的进程间通信,所以必须实现Serializable依据服务最佳实践http://dubbo.apache.org/zh-cn/docs/user/best-practice.html分包建议将服务接口、服务模型、服务异常等均放原创 2020-06-22 14:41:06 · 1134 阅读 · 0 评论 -
SpringBoot-尚硅谷笔记
SpringBoot-尚硅谷笔记一、hello world配置maven添加配置IDEA配置hello world1.创建普通maven工程,无骨架2.添加maven依赖3.编写主程序4.编写controller文件5.看效果细节一二使用spring initializer快速生成springboot项目二、springboot配置配置文件yml语法基本语法配置文件注入javabean验证注入情况properties语法一、hello world目的:简化spring开发技术栈:spring全家桶J原创 2020-06-22 14:35:30 · 732 阅读 · 0 评论 -
SpringBoot环境搭建
SpringBoot环境搭建废话不多说,直接上新建maven工程,选择空架构在pom文件中做如下两步操作 a. 引入父工程起步依赖(所有springboot工程,都必须继承)```xml<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <v原创 2020-06-22 14:23:33 · 131 阅读 · 0 评论 -
jsp日记博客系统02
一、日志信息显示改进:导航栏主页功能实现,在主页链接中加上:href=”main?all=true”即可 要实现日志信息显示,需要查询日志信息 改进diarydao.java,新增查询日志内容函数 查询语句为:String sql=”select * from t_diary t1,t_diaryType t2 where t1.typeId=t2.diaryTypeId and t1....原创 2018-08-12 21:28:59 · 853 阅读 · 0 评论 -
jsp日记博客系统01
一、需求分析1、日记列表显示 2、日记分类 3、个人中心–头像和标语 4、日记增删改数据库3张表: user diary diaryType 注意:主外键关联二、登陆界面实现首先需要登陆必须与数据库用户表进行数据通信,在数据库用户表中存入用户名和密码模拟注册。建立util包,建立数据库工具类–连接数据库–关闭数据库。建立dao包,建立UserDao.jav...原创 2018-08-12 09:26:06 · 810 阅读 · 0 评论