- 博客(58)
- 收藏
- 关注
原创 程序打印导出EXCEL报表慢的问题
今天遇到的一个比较奇怪的相同的问题,程序中相同的两张报表,一张打印速度在6秒左右,一张在50秒左右,两张报表的内容基本上一致,打印速度天渊之别。后来经过对两张报表的比较,发现了一个不同点,一个使用分页预览,一个是普通预览,分页预览打印速度为50秒,一开始觉得不会是这里的问题,抱着死马当活马医的心态把分页预览改成普通预览,神奇的是打印速度变成6秒。
2023-04-20 11:49:14
190
原创 ?
jsp<%@ page language=“java” contentType=“text/html; charset=UTF-8”pageEncoding=“UTF-8”%><%pageContext.setAttribute(“path”, request.getContextPath());%>Insert title here 输入框 密码框
2021-04-20 23:45:23
196
原创 从码云gitee下载的开源项目怎么在IDEA中运行
1.在码云下载项目的压缩包2.解压压缩包找到.sql文件导入数据库,我这里用的是mySql
2021-03-31 16:37:46
13712
4
原创 MyBatis动态Sql
根据不同的条件需要执行不同的 SQL 命令,实现动态Sql。先讲解一下各种元素的作用,更有效实现动态Sql(,, ,):跟java基础的if一样,用于判断if标签的test属性必填,该属性值是一个符合OGNL要求的判断表达式,一般只用true或false作为结果。示例代码select * from log where 1=1and Age =#{ Age }and accout=#{accout}:当编写 where 标签时,如果内容中第一个是 and 去掉第一个; 如果中有
2021-01-14 16:28:01
124
原创 内部类之间的调用方式
内部类之间的调用方式作者:拍氹撰写时间:2020-12-11案例1:类中类的方法在如何被其他类的调用例子。总结:1. 在类(被调用)里面方法外面实例化类中类2. 调用类:实例化被调用的类,3.通过实例化的类调用 类中类再通过调用类种类的方法这是公共类。这是在另一个类调用公共类案例2:类中类的方法如何在主方法运行:总结:1.实例化类。2.在类里面方法外面实例化类中类。3。通过类调用类种类,再由类中类调用类种类的方法...
2020-12-12 10:17:31
285
原创 使用ssm框架常遇的异常
抛出No enum constant org.apache.ibatis.type.JdbcType.java.sql.Timestamp这种异常是因为你mapping文件的jdbcTJype类型的问题。项目运行时:抛出这种异常是controller层,注解value值是有重复的。查询数据抛出异常:Parameter index out of range (1 > number of parameters, which is 0)原因sql语句有问题检查一下...
2020-12-05 09:10:08
212
原创 android 使用模拟器run运行卡在Waiting for debugger
使用as自带的模拟器时有时候不知道怎么回事debug运行可以正常跑起来, run运行就一直卡在Waiting for debugger......这个界面。经过查博客了解到重开一下开发者模式就可以解决问题,但是虚拟机真不知道在哪里(其实找了几分钟)。有个简单且有效的方法:直接 重启虚拟机(ps:重启虚拟机的手机)...
2020-07-21 08:47:20
659
原创 Fragment跳转并传参给activity
实现Fragment跳转activity页面,并传参数过去,也就是使用Intent和Bundle配合使用来实现的。附上源码:Fragment:public class HomeFragment extends Fragment { @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bu...
2020-06-18 21:23:37
1374
1
原创 jQuery对象和DOM对象转换
DOM和jQuery一些常用的函数,和转换对象的方式:注意点:jQuery对象如果使用了DOM对象的操作,那么操作无效。DOM对象转为jQuery对象jQuery对象转为DOM对象,把jQuery元素当成数组给个下标就变成了DOM对象get():下标。跟上面的效果是一样的。再附上一张js跟jquery对比优缺点的图:...
2020-06-18 21:20:19
131
原创 jQuery的绑定事件
jQuery的绑定事件的类型:有两个知识点:1.事件的匿名写法 2.DOM对象和jQuery对象改变属性值的操作。普及一下还有一个函数(bind)可以绑定事件例子:给所有div绑定移出事件unbind():解除绑定。注意写在标签里的事件是解除不了的。例子:给所有input标签解除事件。也可以解除指定的事件,以字符串的方式传入参数...
2020-06-08 20:32:26
145
原创 Window的三个子对象
注意:document也属于window的子对象,因为document的子对象属于DOM,document也作为DOM的根节点,所以归纳为DOM对象(BOM包含DOM)。location对象:源代码图:对应的效果图:navigator对象:源代码图:效果图:History:history.back():后退一个网页history.go(-1): 后退一个网页,如果参数是-2就后退两个网页,以此类推。History.forward():前..
2020-06-08 20:29:07
985
原创 Android项目需要配置的地方
1.在bulid.gradle(Module:app)配置,点 ,然后就会去下载文件。2. 向服务端发送请求需要配置网络权限3.文件需要自己创建,关闭https服务器监测,https中的s是代表的是加密的,要想加密的话需要购买证书,所以要关掉4.安卓版本是10没有发送网络请求的权限,需要添加一个关闭HTTPS服务器监测的xml文件,然后在app配置文件引用改文件安卓手机虚拟机的ip地址是10.0.2.2。...
2020-05-29 10:39:43
205
原创 线性布局
特点:选择横向,纵向布局,分配权重分配权重:在剩下的空间,如果在一个线性布局里面设置了两个或两个以上的权重,那么将会这样分配N个权重值相加/当前的权重值,就是你获得的空间(必须搭配android:layout_width="0dp"使用)线性布局小技巧:我觉得在布局之前要先给页面分好层次,这样布局起来会很清楚的知道该做什么。以大盒子包小盒子的方式来分层,第一层也就是最大的盒子的方向肯定是选择纵向,其他的盒子都是选择横向,最后代码也按照这样的分层来写,很快就可以搭..
2020-05-29 10:37:51
314
1
原创 自动生成resultMap文件源码
这个是在做ssh项目做的一个小工具,为了能提高一点效率(好吧,主要还是懒),这次跟上个生成mapping文件的方式是一样,没多大区别,还是用jQuey做的,先看下效果图:红色的框写入需要生成的字段(复制vo类就行了)<body> <div style="overflow:hidden;"> <h1 style="text-align:center">自动生成resultMap文件源码</h1>...
2020-05-19 22:49:51
704
原创 自动生成hbm.xml文件源码
在做ssh项目多表查询时,每次都要写vo类的mapping.xml文件(po的mapping文件可以使用反向工程来实现),为了更方便书写代码,所以使用js写了生成mapping文件的方法。先看下效果图:使用方式:在红色框中写入(直接复制写好的vo就好了),需要生成的字段代码部分:<body> <div style="overflow:hidden;"> <h1 style="text-align:center">自动生成hb...
2020-05-19 22:34:48
453
原创 绑定异常
项目运行就抛出了这个错误:绑定异常:首先去看下映射文件的 namespace属性值是否对应上了Dao了,没对应上就改成跟dao类一样的名字就可以了还有这里跟执行的方法对应,这里没对应上也会引发异常。...
2020-05-08 19:12:55
542
原创 SH异常信息:Column ""not found. could notexecute query
查询指定的字段获取list集合时就会报错找不到该列,查询所有就不会。这是错误信息:问题已解决:原因是:po类映射文件的问题。详细分析下:查询语句是没有问题的,但是在获取list集合时就报错了(错误信息在上图),说没有PowerXiangQingID这个列,为什么会报这样的错呢!解答:因为执行的sql语句返回的结果只有PowerXiangQing列的信息,你写了个List&l...
2020-04-28 17:04:33
372
原创 servlet+jdbc改为ssh小知识
从servlet+jdbc项目改成spring+ struts2+ Hibernate3项目需要改动的几个点和一些小技巧:1.Dao.impl,service.impl:自定义的类就不用实例化了,直接使用spring注解(注意是需要配置段的)。2.要想使用request,和response,实现接口Dao操作有原来的JDBC换成hibernate4.使用json返回数据...
2020-04-28 16:55:52
189
1
原创 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException异常
在获取mysql数据库的连接报了这样的一个错误:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'performance_schema.session_variables' doesn't exist我看了下我数据库并没有这张表,而且我也没有去写执行找这张表的命令,只是单单建立连接:我想了下应该数据库...
2019-08-20 16:22:06
2007
原创 压缩后的对称矩阵还原
前段时间看了对称矩阵压缩感觉很有兴趣,能够把一个二维数组直接压缩成一个一维数组这样的做法直接节省了原来的一半空间,但是我要怎么去还原数据,所以在今天也是尝试着去试着还原矩阵,花费了几个小时终于写好了(好吧!我是菜鸟,还需努力),所以这里记录一下压缩后的矩阵还原方式,为了以后忘记了可以在回来看看。源代码有详细的代码注释,感兴趣的话可以看看。public class SymmetryMatrix...
2019-08-17 17:09:17
1038
原创 队列(顺序结构)
为了能够深刻的理解队列顺序存储结构,所以试着手写的队列里的方法,写的不是很好,只想用来练练手顺便解决一个约瑟夫的一个数学问题(有兴趣的可以去网上搜一下)。手写内容有:add()和remove(),size()和noEmpty()都是,主要的是add()和remove()方法,这两个方法贯彻了队列的特性,只能在队尾插入数据,而删除数据在队头,所以说这两个方法是队列的核心。publi...
2019-08-07 09:49:04
209
原创 二叉树的四种遍历方式
以下面这张图建立一个二叉树,实现二叉树的四种遍历方式:先序遍历,中序遍历,后序遍历,层级遍历;前面三种方式都是使用递归来实现,如果递归不理解,那么前面三种实现起来绝对是很吃力的,最后一种方式是使用队列的方式来遍历,队列的先进先出特性完全可以用来实现层级遍历。四种遍历方式的源码: // 先序遍历 public void preOrderTraverse() { ...
2019-08-07 09:45:14
350
原创 双向链表
画了几张图来方便理解以下双向链表是怎么实现的。线的顺序:1.链表的上节指向node的上节,2.node给到链表的上节3.node给到链表的下节的下节这个就是模拟添加三个元素时的运行过程,该过程由first记录;这是代码:public class SxtLinkedList03 { private Node first; private ...
2019-07-28 19:48:20
105
原创 多线程(管程法)
管程法:什么是管程法?就是并发协作模型“生产者/消费者模式”实现方式的一种。思想:1.首先需要四个角色 :1.生产者2.消费者3.缓冲区4.馒头2.生产者生产馒头放到缓冲区,缓冲区如果满了,生产者停止运作,进入等待3.消费者从缓冲区拿馒头,如果缓冲区馒头没有了,先唤醒生产者,然后进入等待/** * 协作模型:生产者消费者实现方式一:管程法 * 借助缓冲区 * @author *...
2019-07-28 19:46:16
1105
原创 移位加密,解密
这次写的移位加密是比上次的移位加密稍微加了一下其他元素,虽然不是很适用,但是对于我来说是一次提升,锻炼自己的机会,以后会去研究一些比较复杂的加密,直到可以放心的加入项目中使用,好了,不扯了进入正题:这次的加密呢,只对数字加密,对数字的位数也是有要求的不要超出15位就可以。移位步骤:1.先运算一下(9936/2)+(9936%2)+5-22.转为字节数组3.遍历数组的每个值乘6在放入Lis...
2019-07-12 18:02:52
2866
原创 根据指定时间执行方法
有时候我们需要一些代码在指定的时间段内运行,如何实现呢?java为我们提供了两个类(java.util.Timer,java.util.TimerTask)。Timer类:一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。TimerTask类:由 Timer 安排为一次执行或重复执行的任务。Timer类注意点:1.所有构造方法都启动计时器线程。2.被执...
2019-07-11 21:45:10
2271
原创 同步代码块例子
概念:同步代码块可以解决安全问题的根本原因在于那个对象快上,这个对象如同锁的功能。多个线程需要同一个锁,才能锁的住,所以这个对象需要在run()方法外面声明。同步的特点:多线程多线程使用同一个锁能解决线程安全的问题。同步的弊端:当线程很多时,其他线程会等待正在执行的线程执行完毕,这样会浪费资源,降低CUP的使用效率。实例:这个例子是启动多个对象的线程去修改同一个实例变量...
2019-07-04 21:12:49
450
原创 用线程模拟影院购票
思想:简单结合现实电影院购票的实际情况,例如:固定的位置,多个顾客同时买票,售出的票不能在出售(为什么说简单,是因为现实电影院购票的实际情况比我列举的还要复杂,所以我只列举了这些情况)实现步骤:定义影院、顾客类(顾客可以是多个,所以要继承Thread类,或者实现Runnable接口)定义影院的属性(可用的位置),定义顾客的属性(可用的位置(影院的属性),预定的位置)实例多个顾客...
2019-07-04 20:44:03
381
原创 获取from表单的name值生成新增语句
聊一下我为什么会写这个功能:之前我一直都是在servlet用request.getParameter()获取值页面传过来的name值,导致代码形成很长很长,我同学就跟我说:为什么不用反射去做这一部分的工作,当时我在想用反射去做,反射怎么做?我很懵,然后我就去问了下怎么个反射法,结果没听懂(可能我还是太年轻了),回到位置上,继续思考,想着想着就想到了在学C#好像用到过这种操作(就是在控制层接收浏览器...
2019-06-25 18:03:41
706
原创 类的主动引用跟类的被动引用
类的主动引用(一定会发生初始化),类的被动引用(不会发生类的初始化),发生类的主动引用有五种情况分别是:new一个类的对象调用类静态变量,和静态方法对类进行反射调用启动main方法所在的类当初始化一个类,如果其父类没有被初始化,则先会初始化他的父类类的被动引用有三种情况分别是:引用常量不会触发此类的初始化(常量在编译阶段就存入调用类的常量池中了)通过数组...
2019-06-25 17:58:08
200
原创 Connection连接池
去数据库获取数据的时候都要建立一个Connection去获取数据,建立Connection是比较 耗时的操作,而且当你用完的时候又要关闭,使用的时候又再去建立,整个过程走下来耗费的时间就会相对较多了,那么连接池就能很好节省建立Connection消耗的时间。下面讲述是建立连接池的以及使用的步骤建立一个List集合,List集合放的就是我们的Connection(我们可以在项目初始化的时建立...
2019-06-16 21:34:01
866
原创 利用反射遍历集合类的值
在做导出Excel的时候,需要获取到集合类的值,一个一个获取代码量巨大,太浪费时间。为了提高代码的简洁性,重用性所以就想到了用java的反射机制去遍历集合类。然后在对这段代码进行了封装,就重复使用了。接下来看代码。这里代码仅仅是遍历集合类,并没有是实现Excel的导出功能,不过是为了方便把集合类的输出到Excel表格。(在遍历成员变量的数组顺序是按封装的成员变量来的)1. public cla...
2019-06-11 21:34:52
1025
原创 Cookie登陆
在做登陆的时候,需要记住我这一功能,这样可以记录用户之前登陆的帐户和密码,下次登陆时就不用在输入用户密码,直接登陆,这样可以免了不少步骤。那么怎么实现记住我这一功能?首先需要了解Cookie的机制,是通过什么样的方式来保存数据:Cookie是由web程序发送的请求(要符合HTTP协议),在servlet层接收数据时再通过响应将需要保存的信息保存到浏览器中(也就是cookie),当浏览器再次请求该...
2019-06-05 13:57:28
1184
原创 封装BigDecimal的加减乘除
在项目中大量使用BigDecimal来运算,每次都要转成BigDecimal类型就会显得很麻烦,为了能更方便使用BigDecimal所以在这里又对BigDecimal加减乘除做了一些简单的封装。具体说明:传入两个值,任意类型只要结果值是数字就可以运算,返回一个BigDecimal值。代码部分:1. public class SealBigDecimal { 2. /**加*/ ...
2019-06-05 13:50:51
127
原创 网页打印表格
如标题所说就是调用网页打印器来打印表格,先说以下具体实现步骤:将数据查询出来(因为网页的打印器是打印的当前网页的内容,所以需要新建一个页面专门用来打印数据用)查询出来的数据保存到请求中,在把请求请求转发给打印的jsp页面,jsp通过el表达式获取传过来的值,循环打印。Js调用网页的打印器,完成。代码部分:Servlet部分:将查询出来的数据用集合来接收,再把集合保存请求中,再...
2019-06-05 13:33:17
1579
原创 守护线程
守护线程守护线程:虚拟机不用等待守护线程执行完毕。守护线程可以用来:后台记录操作数据、监控内存使用等。总结点:jvm不会管守护线程有没有执行完,只要用户线程执行完了jvm就停止运行setDaemon方法默认为false,设置为true就是守护线程了,false就为用户线程,默认为false。实例:验证jvm会不会管守护线程有没有执行完?所以我给守护线程执行了一个死循环,看一下jvm会不会...
2019-05-27 14:37:01
87
原创 查看历史登陆信息
查看历史登陆信息思想:每一次登陆的信息都是用txt文件来保存的(所以要用到流,我这里用的流是RandomAccessFile和InputStream),这样就可以达到信息可持续化保存。实现方式:1.实例StringBuilder对象用来记录用户登陆的信息2. 使用RandomAccessFile流将把记录用户信息输出到文件中,(为了防止用户信息被覆盖,需要先调一下指针)3.读取记录用户的信...
2019-05-27 14:34:53
1935
原创 简单了解以下多线程的执行过程
首先要引入多线程的概念:多线程概念代码部分:总共有两个线程在执行代码public class lianxi extends Thread { public static void main(String[] args) { //实例化类 lianxi user =new lianxi(); //启动线程并执行run方法 user.start(); //main线程执行...
2019-05-15 21:54:26
208
原创 线程实现日期倒计时和计时
倒计时:是运用线程的休眠方式来模拟倒计时的。实现步骤:获取当前时间并加上10秒(我是想让时间只倒计10秒)获取当前时间的毫秒数(是加了10秒的当前时间)循环打印时间(在打印时间为了打印的效果:引用了SimpleDateFormat类来设置日器格式),每打印一次就时间就让线程休眠一秒。在把时间减少一秒,直到一开始运行的时间在结束。代码部分://倒计时public st...
2019-05-15 21:41:05
765
原创 接口
为什么要使用接口:1.规范,规则,通用2.逻辑清晰,整理3.可以相同的功能避免重复,提高的代码的整洁,可以一目了然,低耦合,高内聚。拿着接口的规则去实现不一样的事情,例如:java定义了数据库的增删查改接口,sql server拿着接口的规则去实现,oracle也拿着接口的规则去实现,两者实现的过程可以不一样,但是结果肯定是一样的。在如果我现在用的是sql server数据库,但是我想换or...
2019-05-07 15:35:02
115
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人