Java项目笔记(三)
一、前端传参类似以下格式,对象中包含一个对象,后台此时接收option为stirng类型
curriculumid
question
answer
option {optionOne ,optionTwo ,optionThree }
故需将该option在后台转换成对象
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.2.3</version>
<classifier>jdk15</classifier>
</dependency>
JSONObject jsonObject = JSONObject.fromObject(choice.getOption());
Option option = (Option) JSONObject.toBean(jsonObject,Option.class);
二、以前没太注意过的一个问题,MySQL数据库中会为每个字段设置长度,例如:
permission类型varchar,长度为64
这个长度是指:如果输入汉字,可以输入64个汉字。如果输入英文可以输入64个英文字母。没有所谓的一个汉字等于两个英文字母。
三、跳出指定循环或判断
if (store.length > 0) {
bgm:
if (!store[0].equals("7")) {
i += 1;
for (String s : store) {
for (String w : we) {
if (s.equals(w) && !s.equals("6")) {
i += 3;
break bgm;
}
}
}
}
}
四、springboot service层在controller层空指针异常
原因controller层方法访问权限不是public
此时方法名显示灰色
五、List集合添加数据空指针异常问题
//list集合必须初始化,如果声明为null,没有初始化,添加值的时候会一直报空指针
List<Map<String,Object>> mapList = null;
List<Map<String,Object>> mapList = new ArrayList<>();
六、MySQL数据类型中 decimal 问题
对于向DECIMAL列的插入操作,目标是准确的数据类型,无论要插入的值是准确的还是近似的,
将采用“半值向上舍入”规则
所以如果需要使用decimal类型时,要指定小数位
一般采用varchar接收就可以了
七、按照List集合中的Map中的某一个参数排序
//该处是从数据库里查出的数据
List<HashMap<String, Object>> maps = resourcePlanningMapper.inquireInventoryProducts(secondLevel, fuzzyQuery, parentid);
//根据该产品库存总量降序,如果是升序则将compareTo的两个参数换下位置就可以
Collections.sort(maps, new Comparator<HashMap<String, Object>>() {
@Override
public int compare(HashMap<String, Object> o1, HashMap<String, Object> o2) {
Integer o1value = Integer.valueOf(o1.get("totalInventory").toString());
Integer o2value = Integer.valueOf(o2.get("totalInventory").toString());
return o2value.compareTo(o1value);
}
});
八、service层路径突然失效 报错 Cannot resolve symbol
解决办法 ,清理idea缓存并重启
九、事务隔离机制的问题
前端获取数据传到后台,因数据格式比较复杂,用Java代码处理数据太繁琐,采用先保存再用SQL分析数据的方式,把处理好的数据再读出来。此时发现因方法加了事务,MySQL默认的事务隔离机制为可重复读,所以当我保存到MySQL时,其实并没有真正的保存到MySQL,所以此时读出来的数据有问题。
十、 You can change this value on the server by setting the ‘max_allowed_packet’
前台传输的字符串超过了MySQL默认的接收长度
设置系统变量
set global max_allowed_packet = 2 * 1024 * 1024 *10
一定要关闭本次连接,重新连接数据库,再查看
show VARIABLES like ‘%max_allowed_packet%‘;
Java项目笔记(三)的更多相关文章
- 项目案例之Pipeline流水线发布JAVA项目(三)
项目案例之Pipeline流水线发布JAVA项目(三) 链接:https://pan.baidu.com/s/1NZZbocZuNwtQS0eGkkglXQ 提取码:z7gj 复制这段内容后打开百度网 ...
- Ant—使用Ant构建简单Java项目(三)
博客<Ant-使用Ant构建简单Java项目(二)>我们简化了运行Test类中main方法须要运行的命令,本博客来介绍一下如何使build.xml文件和当中使用property标签定义的属 ...
- Java学习笔记三十:Java小项目之租车系统
Java小项目之租车系统 一:项目背景介绍: 根据所学知识,编写一个控制台版的“呱呱租车系统” 功能: 1.展示所有可租车辆: 2.选择车型.租车量: 3.展示租车清单,包含:总金额.总载货量以及其车 ...
- Java学习笔记三:Java的变量、常量、变量的类型及使用规则
Java的变量.常量.变量的类型及使用规则 每一种语言都有一些具有特殊用途的词,Java也不例外,它们被称为关键字.关键字对 Java 的编译器有着特殊的意义. 一:Java中的关键字: 注:Java ...
- Java项目笔记01
1 Tomcat问题 1 今天用了Ecplise和MyEcplise想着用同一个路径下的Tomcat,但是却发现配置完Ecplise后MyEcplise却不能用了,并且后面在bin里启动Tomcat还 ...
- 类文件结构——深入理解Java虚拟机 笔记三
在之前的笔记中记录过,Java程序变成可执行文件的步骤是:源代码-->经过编译变成class文件-->经过JVM虚拟机变成可执行的二进制文件.因此,为了对JVM执行程序的过程有一个好的了解 ...
- Java初学者笔记三:关于字符串和自实现数组常见操作以及异常处理
一.字符串常见的操作 1.结合我在python中对于字符串常见处理总结出下面三个应该能算是字符串造作的TOP 3 //字符串查找子串,存在返回index,不存在返回-1 等于python的find: ...
- Java学习笔记三十一:Java 包(package)
Java 包(package) 一:包的作用: 如果我们在使用eclipse等工具创建Java工程的时候,经常会创建包,那么,这个包是什么呢. 为了更好地组织类,Java 提供了包机制,用于区别类名的 ...
- Java学习笔记三.2
5.继承 //Java中所有对象都显式/隐式的继承子Object类 class fu{ fu(){ System.out.println("fu..."+getNum()); sh ...
- Java学习笔记三——数据类型
前言 Java是强类型(strongly typed)语言,强类型包含两方面的含义: 所有的变量必须先声明后使用: 指定类型的变量只能接受预支匹配的值. 这意味着每一个变量和表达式都有一个在编译时就确 ...
随机推荐
- 解决: Cannot load information for github.com
问题在共享项目至idea时候出现:I am getting this error while sharing on GithHub in Intellije IDEA : Cannot load in ...
- 人工智能时代,前端全栈成就独立开发工程师 next.js 开发实战
next 可以服务端渲染,可以客户端渲染,让前端同事更有性价比,让我们做得可以更多 由于next.js 是基础于react 所以在正式学习next.js 之前我们了解一下react 什么叫模块 ,就 ...
- docker cmd和entrypoint
FROM scratch 很多镜像都是从他开始 创建自己的centos FROM centos 基于官方的centos开始写 构建自己的centos [root@docker dockerfile]# ...
- 1、SpringMVC简介
1.1.MVC 概述 MVC:是一种软件架构的思想,将软件按照模型.视图.控制器来划分: M( Model ):模型层,指工程中的 JavaBean ,作用是处理数据: V( View ):视图层,指 ...
- 【MySQL】下发功能SQL
SQL参考文章: https://www.jb51.net/article/15627.htm 下发,就是从别的表中同步数据到此表中,也可能是来自不同库的表,或者不同实例的表 下发的逻辑要求:如果没有 ...
- signal-slot:python版本的多进程通信的信号与槽机制(编程模式)的库(library) —— 强化学习ppo算法库sample-factory的多进程包装器,实现类似Qt的多进程编程模式(信号与槽机制) —— python3.12版本下成功通过测试
什么是 Qt signal-slot库项目地址: https://github.com/alex-petrenko/signal-slot 该库实现的主要原理: 要注意这个项目的library只是对原 ...
- 【转载】 取消idea双击shift时出现的全局搜索 (使用pycharm IDE时出现的问题)
原文地址: https://blog.csdn.net/hxy199421/article/details/83030603 最近在使用pycharm的时候出现文章标题的问题,由于以前写的代码都是比较 ...
- 大连人工智能计算平台——华为昇腾AI平台——高性能计算HPC——如何在MPI中支持multiprocessing和fork操作——如何在HPC平台上使用pytorch——是否可以通过调度器的提交参数绕过HPC的计费系统
本文要讨论的就是如何在MPI中支持multiprocessing和fork操作,但是这个问题同时也是如何在HPC平台如何使用pytorch的问题,可以说这两个问题其实是同一个问题,而这个问题的解决过程 ...
- 多节点高性能计算GPU集群的构建
建议参考原文: https://www.volcengine.com/docs/6535/78310 ============================================= 一直都 ...
- 一文搞懂DevOps、DataOps、MLOps、AIOps:所有“Ops”的比较
引言 近年来,"Ops"一词在 IT 运维领域的使用迅速增加.IT 运维正在向自动化过程转变,以改善客户交付.传统的应用程序开发采用 DevOps 实施持续集成(CI)和持续部署( ...