- 博客(104)
- 收藏
- 关注
原创 加密,混淆,摘要,序列化的理解
文本序列化:使用可读文本格式,如JSON、XML等,易于人类阅读和编辑,适用于需要与其他系统或语言交互的场景。加密是将可读的数据(明文)转换为不可读的格式(密文)的过程。摘要和加密都是处理数据的技术,但它们的目的和实现方式有明显的不同。输出长度是固定的,无论输入数据的大小如何(例如,SHA-256始终产生256位的哈希值)。摘要是一种单向加密,用于确保数据的完整性,通常使用哈希函数,如SHA-256,MD5。在开发过程中,程序员编写的代码是可读的,例如变量名、类名、方法名等都使用描述性名称。
2024-10-22 17:41:46 725
原创 linux 系统修改已经打好jar包的yml配置文件
工作中可能回遇到,jar包已经打好,并且文件已经上传了,但是突然发现配置文件中的某一个参数写错了,怎么办?如果重新打包再上传的话太影响效率了。那么我们可以通过以下方法,修改已经上传的jar包文件。使用键盘上下键,移动光标,到我们要修改的配置文件,摁下回车,此时可以看到已经进入到配置文件中了。同样的,摁下ESC 输入“q!”,退出vim编辑器。到此配置文件修改完毕,此时启动jar包就可以了。进入命令行界面,进入到我们jar包存放的位置。使用键盘,移动到修改的地方执行修改。摁下 i ,就可以编辑文件了。
2023-07-19 16:13:03 2367
原创 Oracle数据库设置自增主键
也就是说创建表的时候,如果建表语句中的字段用"" 双引号括起来的,那么navicat给创建表的时候,就会识别出小写,这样使用mybatis连接数据库使用时,就会报错,提示表不存在。正确的写法是:select ‘id’,‘name’ from “user”;但是这样写sql比较费劲,所以建表的时候,就应该用大写:这样不加双引号,也能够查出来数据。oracle不等同于Mysql,直接使用navicat勾选自动递增,需要增加序列,然后生成触发器。建表的时候字段名不加双引号,也能正常使用mybatis查询。
2023-05-22 17:54:43 1127
原创 springboot项目集成oracle
例如上图,oracle连接指定了服务名,不是ORCL,那么可以使用如下方式连接。1.引入依赖:pom文件中引入。
2023-05-22 17:40:11 2260
原创 nginx + springboot 实现限流
limit_req_zone 只是设置限流参数,如果要生效的话,必须和 limit_req 配合使用。第一个参数:$binary_remote_addr 表示通过remote_addr这个标识来做限制,“binary_”的目的是缩写内存占用量,是限制同一客户端ip地址。第二个参数:zone=perip:10m表示生成一个大小为10M,名字为perip的内存区域,用来存储访问的频次信息。第一个参数:zone=perip 设置使用哪个配置区域来做限制,与上面limit_req_zone 里的name一致。
2023-04-25 15:47:22 806
原创 Nginx指向本地文件
重新启动nginx后,访问localhost:8088/docs 即可访问本地文件。我的nginx修改端口是8088。启动:直接点击Nginx目录下的nginx.exe 或者 cmd运行start nginx。nginx安装好后,在conf文件夹下找到nginx.conf文件。关闭:nginx -s stop 或者 nginx -s quit。修改配置后重新加载生效 : nginx -s reload。强制停止Nginx服务:nginx -s stop。
2023-04-25 15:31:20 2664
原创 Spring 接口类InitializingBean实现Bean初始化
InitializingBean接口为bean提供了初始化方法,它只包括afterPropertiesSet方法,继承该接口的类,在初始化bean的时候都会执行该方法。示例:public class MaterialArchivedServiceImpl extends ServiceImpl<MaterialArchivedMapper, MaterialArchived> implements MaterialArchivedService, InitializingBean
2022-04-13 10:05:51 842
原创 实体类中字段是名称是排序的,如何快速set
例如一个类中有这样的字段private BigDecimal item1PartQuantity;private BigDecimal item2PartQuantity;private BigDecimal item3PartQuantity;private BigDecimal item4PartQuantity;这样的字段赋值时不需要手动的一个一个的set,可以使用ReflectUtil.invoke方法示例:for(int i = 1 ;i < =4 ;i ++){Refle
2022-02-08 15:54:35 371
原创 java stream的常用方法
1.根据一个list中的对象中具体一个属性值组成新的listitemList.stream().map(item::getMaterialCode).collect(Collectors.toList());2.根据list中对象某一个属性作为key,对象作为value转成mapMap<String,MaterialViewDTO> mapMaterial = listMaterials.stream().collect(Collectors.toMap(item -> item.
2021-12-23 10:38:52 973
原创 powerdesigner表格显示commit和导出Excel文件的语法记录
使用快捷键:Ctrl + Shift +X1.表格显示commitOption Explicit ValidationMode = True InteractiveMode = im_Batch Dim mdl ' the current model' get the current active model Set mdl = ActiveModel If (mdl Is Nothing) Then
2021-05-24 15:09:40 306
原创 Java生成PDF文件并使用指定的模板,带图片
1.需要先准备PDF的模板,使用工具Adobe Acrobat ,设置表单,添加区域框,为每个框设置名字。以下就是我准备的模板。2.项目中引入要是用的依赖。写在pom.xml中,更新maven <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.13</versio
2020-11-06 14:54:41 1644
原创 Java生成条形码图片,并保存在指定路径
/** * 条形码生成的工具 */ //msg是条形码的内容,path是生成图片要保存的路径 public static void getBarCode(String msg,String path){ try { File file=new File(path); OutputStream ous=new FileOutputStream(file); if(StringU
2020-11-06 14:37:41 1015
原创 idea的pom.xml文件中所有的标签都报错
idea中项目的pom.xml文件都报错,不知道什么原因总结一下方法解决。第一种:maven没有完全下载。右键项目,选择maven中的强制重新下载依赖。第一种方法没有解决我的问题。第二种:删除ant中的pom.xml删除后我的项目中pom文件都正常了,虽然解决,但是不知道原因,有知道原因的欢迎评论。...
2020-11-02 15:43:03 3134
原创 springboot对接微信公众号实现通知功能
1.准备工作在微信公众平台上找到自己的AppID、AppSecret以及要使用的消息模板。2.代码1.pom文件引入要使用的maven微信模版消息推送三方sdk<dependency> <groupId>com.github.binarywang</groupId> <artifactId>weixin-java-mp</artifactId> <version>3.3.0</version&g
2020-08-20 17:19:28 2090
原创 springboot项目使用redis实现token单点登录
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency>
2020-08-19 14:26:01 3128
原创 ajax请求使用拦截器无法跳转页面的问题
开发时一个简单的功能,单点登录验证用户是否登陆,没有登录的情况下跳转到登录页,但是在实际的调试中发现我的拦截跳转一直没起作用,经过百度发现原来是ajax请求下跳转失效了。于是又经过百度怎么解决,最终整理一下。项目后台使用的是springboot。先上后台拦截器代码public class AuthenticationInterceptor implements HandlerInterceptor { @Autowired JedisPool jedisPool; @Override pub
2020-08-18 17:45:33 1060 1
原创 Mysql报错1241 Operand should contain 1 column(s)
这个问题主要是出现在使用子查询时,子查询中的字段包含多个,下面写出一个实例方便具体理解。select * from table where user_id in (select id ,name from user );注意上面的例子中,()中的查询也就是子查询查询出来的字段是id和name,这个时候就会出现sql报错1241。解决方法就是子查询中只查询出一个字段上面的sql改写成下面的样子就不会报错。select * from table where user_id in (select
2020-08-13 17:39:30 15611
原创 springboot项目线程中无法注入Mapper,报空指针的解决方案
线程是安全的,线程中不能够直接注入bean,会直接报空指针错误。解决方案:1.创建一个工具类,直接粘贴到文件里就可以import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework.ster
2020-07-16 11:38:39 4459 7
原创 Java将一个对象的值赋给另一个对象,(类不同,字段相同)
BeanUtils.copyProperties(源对象, 目标对象);上面的copyProperties方法需要导入包import org.springframework.beans.BeanUtils;
2020-06-28 16:40:20 5047
原创 Windows10下杀死进程的方法记录
1.使用Windows+r,输入cmd进入到命令提示符。查看端口号是8090的进程netstat -ano | findstr “8090”找到进程的pid杀死进程杀掉进程使用 taskkill -PID (pid号) -F
2020-06-08 16:16:03 1663
原创 springboot使用阿里云全球物流快递查询实现根据物流单号实时查询
1.需要去阿里云的网站注册,开通服务,申请结束后拿到AppCode2.上代码@Api(value = "aLi-wuliu", description = "")@RestController@RequestMapping("/api/aLiWuLiu")public class ApiAliWuLiuController { //申请的appcode(授权码),在上图找到 private static final String appcode = "*************"
2020-05-27 19:11:07 1168 1
原创 springboot项目中的util中调用Mapper的方法
//第一步把当前类使用@Component注解@Componentpublic class GetOrderNo { //第二步,使用@Autowired注入mapper @Autowired @SuppressWarnings("all") private PsomCodeMapper psomCodeMapper; //第三步添加一个类的静态字段 private static GetOrderNo getOrderNo; //第四步创建一
2020-05-27 14:01:09 1654
原创 mybatis 和hibernate的区别
简介1.mybatis是一个不完全的orm框架。内部封装了 JDBC,开发时只需要关注 SQL 语句本身。2.hibernate是一个全自动的、完全面向对象的orm框架,它对JDBC进行了非常轻量级的对象封装,建立对象与数据库表的映射。区别1.hibernate中sql已经被封装,直接被调用就可以,对开发者的sql要求不是很高,同时hibernate中不需要去关注对象关系映射。对比于my...
2020-04-28 15:36:33 172
原创 mybatis中<resultMap>标签中加入 <collection>的用法及一对多查询limit数量不对的解决方法
日常开发中,数据之间可能是一对多的关系,那么查询的时候就需要一对多关联查询,这个时候就使用到了 <collection>标签。 <resultMap type="com.navi.user.entity.PsomAssembleStock" id="BaseResultMap"> //resultMap中的元素是主表的数据 <id ...
2020-04-28 10:39:34 2197
原创 Java删除list中指定的元素的方法
删除list中指定元素的时候可能第一种想到的是使用for循坏再删除就好了,但是使用for循环删除某个元素后,list的大小发生了变化,而你的索引也在变化,所以会导致你在遍历的时候漏掉某些元素。比如当你删除第1个元素后,继续根据索引访问第2个元素时,因为删除的关系后面的元素都往前移动了一位,所以实际访问的是第3个元素。因此,这种方式可以用在删除特定的一个元素时使用,但不适合循环删除多个元素时使用。...
2020-04-28 10:10:56 5910
原创 Java中实现判断一个字符在一个字符串中出现的次数的几种方法
public static void main(String[] args) { String ss = "1222244555"; //方法1 把字符串转换成数组,再进行循环判断 char[] chars = ss.toCharArray(); int j = 0; for(char i : chars){ ...
2020-04-16 09:23:54 2398
原创 mysql中根据表格中的某个字段的值关联不同的表
SELECT a.*,CASE WHEN a.in_out = 'in' THEN bp.purchase_num END AS purchase_num FROM psom_stock_detail_info a LEFT JOIN psom_store_info psi ON psi.id = a.store_id LEFT JOIN psom_purchase_...
2020-04-08 18:12:13 4035
原创 MVC使用poi根据excel模板导出文件,并通过浏览器下载。
依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version> </dependency>controller层@A...
2020-03-18 16:44:16 371
原创 http的请求方式
作为java开发,到今天发现自己对get/post到底是什么竟然没有理解,不由得觉得比较失败,百度深入了解一下吧。**1.http的特点**Http是属于应用层的面对对象的协议,HTTP一共有五大特点:1.1、基于tcp/ip,一种网络应用层,超文本传输协议。1.2、工作方式:客户端请求,服务器端应答模式,客户向服务器发送请求的时候,请求的方式通常有GET 、POST、HEAD、每种方...
2019-12-16 14:58:35 278
原创 java中使用自定义的类作为HashMap的key要注意的地方
要是想使用自定义的类作为HashMap的key,name就需要重写hashcode()和equals()方法。public class PhoneNumber{ private int prefix; //区号 private int phoneNumber; //电话号 public PhoneNumber(int prefix, int phoneNumber)...
2019-12-13 16:27:24 744
原创 手机号和邮箱的正则表达式
//手机号验证 function isvalidPhone(str) { const reg = /^(0|86|17951)?(13[0-9]|15[012356789]|16[6]|19[89]]|17[01345678]|18[0-9]|14[579])[0-9]{8}$/ return reg.test(str) }//验证邮箱的正则表达式 ...
2019-12-13 14:23:32 220
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人