- 博客(32)
- 资源 (1)
- 问答 (2)
- 收藏
- 关注
转载 mysql与oracle sql的区别
数据类型:oraclemysql对比NUMBERint / DECIMALDECIMAL就是NUMBER(10,2)这样的结构INT就是是NUMBER(10),表示整型;MYSQL有很多类int型,tinyint mediumint bigint等,不同的int宽度不一样Varchar2(n)varchar(n)无DateDATATIME日期字段的处理;MYSQL日期字段分DATE和TIME两种,ORACLE日期字段只有DATE,包含年月日时分秒信息,用当前数
2022-02-16 09:45:25 749
原创 union与union all(联合查询)
union 与 union all的区别两者Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;Union All:对两个结果集进行并集操作,包括重复行,不进行排序;补充:Intersect:对两个结果集进行交集操作,不包括重复行,同时进行默认规则的排序;Minus:对两个结果集进行差操作,不包括重复行,同时进行默认规则的排序。-- unionselect c.c_id '课程编码',c.c_name '课程名称',t.t_name '教师名称' from cours
2022-02-15 15:13:07 3168 1
原创 jxl和poi的对比及简单使用
1. 内存消耗对比定量:数据量3000条,每条60列,JVM大小64M使用jxl:3000条全部出来,并且内存还有21M的空间使用poi:运行到2800条左右就内存溢出2. 速度效率(读取Excel数据)数据来自网络文件大小jxl加载耗时jxl总耗时poi加载耗时poi总耗时57kb1265ms2250ms1172ms1172ms652kb4406ms9750ms2297ms2313ms2.24M16313ms37453ms3109ms
2021-08-31 17:52:11 1932
原创 Sha1加密是不可逆的,网上虽然有解密的方法,但只能解密很简单的密码
今天又踩了个坑,原因是我打算写一个密码管理工具,把密码加密存入excel中,一开始不知道sha1不能解密,所以在网上找了半天sha1解密的方法,最终在一个论坛中发现sha1是不可逆算法,只能加密,很难解密。所以我的密码管理系统到底用什么方式,应该会比较简单且安全呢?...
2021-08-30 11:08:23 5552 2
原创 后端程序员必备的开发工具
作为一名刚入门的后端程序员,我总结了一下常用的开发工具,如有漏缺还望大佬指教。IDEA后端程序员必备开发神器(最好,没有之一)Eclipse后端开发常用工具(次之)Visual Studio Code前端开发必备神器(后端程序员免不了接触前端)WebStorm前端开发神器(感觉和上面差不多,看个人喜好)Navicat数据库可视化工具(sql美化做的比较好)(支持mysql/oracle/sqlserver等多种数据库)PLSQL Developeroracl
2021-08-25 11:01:01 19987 1
原创 java.util 之 Arrays.sort()详解
1.简介Arrays.sort()是经过调优排序算法,时间复杂度可以达到O(n*log(n)),而没有经过优化的冒泡排序的平均时间复杂度为O(n^2)Arrays.sort() 重载了四类方法sort(T[] a):对指定T型数组按数字升序排序。sort(T[] a,int formIndex, int toIndex):对指定T型数组的指定范围按数字升序排序。sort(T[] a, Comparator<? supre T> c): 根据指定比较器产生的顺序对指定对象数组进行排序。
2021-07-22 10:41:26 3329
原创 Java常见错误及分析
1.java.lang.ArrayIndexOutOfBoundsException: 3数组索引超出绑定异常原因:获取的数组下标超出了声明数组的范围,数组范围为0~n未完待续。。。
2021-07-20 14:53:41 129
原创 jqGrid下的formatter使用详解
jqGridjqGrid 是一个用来显示表格数据的jQuery插件。通过使用jqGrid可以轻松实现前端页面与后台数据的ajax异步通信。formatterjqGrid中的formatter,可以用来格式化表格中的值,也可以通过自定义函数在单元格中插入一些标签。jQuery("#jqGrid_id").jqGrid({ ... colModel: [ ... {name:'price', index:'price', formatter:'inte
2021-07-12 14:54:17 1995
原创 Base64实现加密和解密’html文本‘
#BASE64一种较为简单的加密方式,效率较高,不能加密密码,可以加密图片或html文本等。public static void base64(String str) { byte[] bytes = str.getBytes(); //Base64 加密 String encoded = Base64.getEncoder().encodeToString(bytes); System.out.println("Base 64 加密后:"
2021-04-22 21:48:55 1014
原创 用FileUpload实现多个文件上传
文件上传原理 一、本地计算机实现把本地的资源文件一点一点的读出到内存并一点一点的从输出流上传文件,这一部分是通过浏览器实现的。二、服务器接受上传的文件,通过内存一点一点读取到服务器硬盘。FileUpload实现文件上传的步骤:1. 准备相应的依赖包:1)commons-fileupload-1.3.2<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload --><depende
2020-12-16 19:50:14 1085
原创 整合SSM步骤
1.配置工程相关的maven目录(Java,resources)2.引入相关SSM的包(POM.xml建议模板化)3.创建相关配置文件3.1 数据库连接配置文件3.2 logj4配置文件3.3 applicationContent.xml(配置mybatis等数据源)3.3 applicationContext.xml(配置mybatis数据源,SPRING和MYBATIS整合等)3.4 web.xml配置文件(修改,引入Spring的servlet配置,字符集过滤)3.5 创建XXX-se
2020-11-26 09:00:43 178
原创 IDEA 中 撤销上一次本地提交的代码
适用情景: idea 中本地提交代码(commit),发现提交错了,想要撤回本次操作。注意:只是提交commit,而并未push到远程分支中去。1.git指令git reset --soft HEAD~12.IDEA操作1.VSC–>Git–>Reset HEAD2.确定3.结果:...
2020-11-19 14:55:49 1536
原创 java中创建一个记录日志文件的方法
自己创建记录运行程序的错误记录,以便在需要时查看,还是挺有意思的。1.定义方法:public class LogUtil { //定义记录日志的方法 public static void Log(String msg){ try { //指向一个日志文件 PrintStream out = new PrintStream(new FileOutputStream("log.txt",true)); //改变一个输出方向
2020-11-04 15:16:37 1864 2
原创 IO中常用流模板(文件流、转换流、缓冲流、标准输出流等)
很多小盆友在日常开发中会用到I/O流,下面是我整理的标准I/O流输入、输出模板,仅供参考:一、文件专属1、FileInputSteam(字节输入流)模板 : //支持任意数据类型读取 FileInputStream fis = null; //定义一个字节流输入-->(读取数据) byte[] bytes = new byte[4];//准备一个byte数组 try { //指定数据读取地址,默认相对路径,项目名
2020-11-03 22:26:42 484
原创 Spring的事物属性种类(传播行为、隔离级别、只读和事务超时)
事务属性的种类: 传播行为、隔离级别、只读和事务超时a) 传播行为定义了被调用方法的事务边界。传播行为意义PROPERGATION_MANDATORY表示方法必须运行在一个事务中,如果当前事务不存在,就抛出异常PROPAGATION_NESTED表示如果当前事务存在,则方法应该运行在一个嵌套事务中。否则,它看起来和 PROPAGATION_REQUIRED 看起来没什么俩样PROPAGATION_NEVER表示方法不能运行在一个事务中,否则抛出异常PR
2020-11-02 11:27:12 256
原创 java-集合-Map(详解)
java.util.Map接口:1、Map和Collection没有继承关系。2、Map集合以key和value的方式存储数据:键值对key和value都是引用数据类型。key和value都是存储对象的内存地址。key起到主导的地位,value是key的一个附属品。3、Map接口中常用方法:V put(K key, V value) // 向Map集合中添加键值对V get(Object key) // 通过key获取valuevoid clear(
2020-10-31 09:43:01 233
原创 java-集合-List接口(详解)
本篇以List接口的特点和方法为纲,加之以代码验证,清晰明了~1、List集合存储元素特点:有序可重复有序:List集合中的元素有下标。从0开始,以1递增。可重复:存储一个1,还可以再存储1.2、List既然是Collection接口的子接口,那么肯定List接口有自己“特色”的方法:以下只列出List接口特有的常用的方法:void add(int index, Object element)Object set(int index, Object element)Object get(i
2020-10-31 09:09:12 445
原创 java-集合-HashMap(详解)
HashMap集合:一、HashMap集合总结:1、HashMap集合底层是哈希表/散列表的数据结构。2、哈希表是一个怎样的数据结构呢? 哈希表是一个数组和单向链表的结合体。 数组:在查询方面效率很高,随机增删方面效率很低。 单向链表:在随机增删方面效率较高,在查询方面效率很低。 哈希表将以上的两种数据结构融合在一起,充分发挥它们各自的优点。 3、HashMap集合底层的源代码: public class HashMap{ // Ha
2020-10-30 11:34:55 626
原创 java-集合-泛型(详解)
1、JDK5.0之后推出的新特性:泛型2、泛型这种语法机制,只在程序编译阶段起作用,只是给编译器参考的。(运行阶段泛型没用!)3、使用了泛型好处是什么?第一:集合中存储的元素类型统一了。第二:从集合中取出的元素类型是泛型指定的类型,不需要进行大量的“向下转型”!4、泛型的缺点是什么?导致集合中存储的元素缺乏多样性!大多数业务中,集合中元素的类型还是统一的。所以这种泛型特性被大家所认可。public static void main(String[] args) { /* // 不使用泛
2020-10-30 09:24:40 302
原创 java-数组-遍历(for方法)
上代码: // int类型数组 int[] arr = {1,2,3,4,5,6}; System.out.println("常规遍历:"); // 遍历数组(普通for循环) for(int i = 0; i < arr.length; i++) { System.out.print(arr[i]+" "); } /* 增强for(foreach)
2020-10-30 08:45:46 1010
原创 Spring持久层(二)
前提:在Spring框架的基础下1.在pom.xml里导入Springjdbc及mysql、连接池的相关依赖:根据所需版本改变版本号即可!<!--jdbc--> <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc --> <dependency> <groupId>org.springframework</groupId>
2020-10-29 12:34:31 81
原创 Spring持久层(一)
数据库连接池的优势:传统的JDBC访问数据库技术,每次访问数据库都需要通过数据库驱动器Driver和数据库名称以及密码等等资源建立数据库连接。这样的连接存在两大问题:频繁的建立数据库连接与断开数据库,这样会消耗大量的资源和时间,降低性能。数据库的连接需要用户名和密码等等,这些需要一定的内存和CPU一定开销。数据库连接池原理:数据源建立多个数据库连接,这些数据库连接会保存在数据库连接池中,当需要访问数据库时,只需要从数据库连接池中获取空闲的数据库连接,当程序访问数据库结束时,数据库连接会放回数
2020-10-29 10:21:11 147
原创 java基础之集合篇
1.概述1.1、什么是集合?有什么用?数组其实就是一个集合。集合实际上就是一个容器。可以来容纳其它类型的数据。集合为什么说在开发中使用较多? 集合是一个容器,是一个载体,可以一次容纳多个对象。 在实际开发中,假设连接数据库,数据库当中有10条记录, 那么假设把这10条记录查询出来,在java程序中会将10条 数据封装成10个java对象,然后将10个java对象放到某一个 集合当中,将集合传到前端,然后遍历集合,将一个数据一个 数据展现出来。1.2、集合不能直接存储基本数据类型,另外
2020-10-28 21:25:48 221
原创 如何优雅的重写equals方法?
其实不管用不用的到,每创建一个实例类,因为默认调用继承自Object类的equals方法,只能比较对象的地址是否相同,而不能比较对象的值。所以我们都应该重写equals方法,这是一种代码规范。1.创建实例类这里我创建了一个user类,属性有name和age;public class user{ private String name; private int age; public user(){//声明无参构造 } public user(
2020-10-28 17:25:34 1062
原创 初识Spring(Spring入门)
1.Spring简介(AOP)Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。Spring 框架是一个开源的 Java 平台,Spring 是轻量级的框架,Spring 框架的核心特性是可以用于开发任何 Java 应用程序。Spring三层架构:A 表现层 web层 MVC是表现层的一个设计模型B 业务层 service层C 持久层 dao层Spring 的优良特性:(1
2020-10-27 21:59:04 368 2
转载 java代码如何防止空指针异常(NullPointerException)的出现
空指针异常(Null Pointer Exception)是我们平时最容易碰到的,也是最令人讨厌的异常。本文介绍如何避免出现空指针异常。首先你要知道空指针异常为什么会出现:引用直接指向空对象,大概率是你没有取到某个对象;将8种基础类型的封装类赋值给对应的基础类。接下来看怎么防止异常:1. 前台提交数据到后台时很可能出现意外取不到数据(1)使用equals判断时:String password = null;password = request.getParameter("pass
2020-10-23 18:24:20 2112
转载 java中随机数生成的三种方式
第一种:new Random() public static void main(String[] args){ Random r = new Random(1); for(int i=0 ; i<5 ; i++) { int ran1 = r.nextInt(100); System.out.println(ran1); } }第二种: public static void main(String[] args) { R
2020-10-21 21:24:45 337
原创 Java-计算一个方法或代码片段的执行时间
因为特别有意思,所以在这里想写一下:首先我要告诉你一个你可能觉得没啥用的函数 currentTimeMillis():获取自1970年1月1日 00:00:00 000到当前时间的总毫秒数。 long nowTimeMillis = System.currentTimeMillis(); System.out.println(nowTimeMillis);或许小伙伴们该疑惑了,这个函数有什么用呢?可以计算某个方法执行时间:class A{ publ
2020-10-21 20:39:57 838 2
原创 jdbc mysql 8.0.12 驱动引入maven写法
1.引用外部库 mysql-connector-java-8.0.版本的jar <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> &l
2020-10-19 09:16:21 8985 1
原创 IDEA中把package包展开
废话不多说,上图:1.原先是这样的,包显示为com.fuful :2.点击上图右上角的设置栏,接着取消列表下的Compact Middle Packages (紧凑的中间包装)选项,如下图:3.设置后包就展开了,如图:
2020-10-16 16:58:10 16451 3
原创 如何简单的向mysql数据库插入当前时间
Mysql中使用NOW() 、 CURDATE() 、CURTIME();Oracle中使用SYSDATE获取当前时间。
2020-09-23 20:47:45 7609
FileUpload.zip
2020-12-16
有关流式布局显示的相关问题(急!)
2021-09-07
java调用webservice接口,有什么比较简单的好用的方法,以及请求参数的疑问
2021-08-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人