自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (4)
  • 问答 (2)
  • 收藏
  • 关注

原创 HttpClient4.X和3.X传送数据

首先需要说明,HttpClient4.X支持JDK1.5及以上,HttpClient3.X支持1.5以下的。4.X和3.X的区别在于4.X的HttpClient是一个接口,3.X的HttpClient是一个类,4.X更多的是基于接口的实现方式。4.X需要jar:httpclient-4.5.3.jar httpcore-4.4.6.jar3.X需要jar:commons-...

2019-03-22 09:31:38 386

原创 Mybatis学习笔记

配置文件中类的全名用.分隔     xml文件的名字用/分隔 手动配置mybatis的步骤:需要先配置mybatis.xml,mybatis.xml里面的<mappers>标签用来加载映射文件然后写实体类和实体类对应的mapper(映射)文件(可自动生成)编写测试类测试:加载Mybayis.xml配置文件,利用Resources类将配置文件转化为流的形式Re...

2019-01-14 16:25:00 292

原创 【oracle】学习笔记

DBMS_METADATA 查看数据库表结构select dbms_metadata.get_ddl(相当于一个获取DDL的函数)('TABLE','表名')(都要大写)from dual;(此方法可以同样查询存储过程等) 表结构显示不完全时需要设置显示大小:set long999;set linesize 200;set pagesize 0; 主键三个特点:非空...

2018-08-06 09:18:27 206

转载 PreparedStatement和Statement的区别

使用Statement的时候:Class.forName(driver);conn = DriverManager.getConnection(url, username, password);stmt = conn.createStatement();       //没有预编译sqlString sql;sql="select * from stu_info";Resu...

2018-08-06 09:13:55 225

转载 堆、栈和常量池的比较

JAVA中,有六个不同的地方可以存储数据:1.寄存器:最快的存储区,位于不同于其他存储区的地方——处理器内部。寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。2. 栈:存放基本类型的变量数据和对象的引用。位于通用RAM中,但通过它的“堆栈指针”可以从处理器哪里获得支持。堆栈指针若向下移动,则分配新的内存;若向上移动,则释放...

2018-08-06 09:11:11 1361 1

原创 Date( )日期格式Sun Sep 30 00:00:00 CST 2012转换成yyyy-mm-dd

Date date = new Date();SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");String dt = simpleDateFormat.format(date);

2018-03-26 11:48:04 33451

原创 Struts2和SpringMVC的比较

1.Struts2是一个请求一个Action,SpringMVC是单例模式的。2.Struts2是基于类的横切,SpringMVC是基于方法的。3.SpringMVC开发速度和性能较优于Struts2,流程更容易理解。4.Struts是返回真正的视图,SpringMVC返回的是逻辑视图,然后通过视图解析器将逻辑视图解析为真正的视图发送给前端。5.Struts2可以在控制层通过set和get方法接收...

2018-03-13 09:25:11 189

原创 实现前台表格中相同数据单元格的合并

前些天接到组长分配的任务,让我这个小菜鸟实现单元格的合并。刚开始觉得很复杂,可是仔细思考过后其实还是很简单的,下面就和大家分享一下自己每次的方法和存在的缺点以及如何修改和最终的成品,希望能够对大家有些帮助。首先合并单元格,既然是合并,肯定是要把相同的数据用一个单元格来完成。就是把这样的格式合并成这样的边框比较浅,图片可能不太清楚,但是能看得出来左边是三个单元格,右边是合并成了一个。要想实现这样的效...

2018-02-27 14:40:06 4466 1

原创 【Easyui】解决未对form表单数据进行校验直接就可以提交的问题

今天遇到了一个问题,完成登录和注册功能时,使用easyui的required:true,validType:'length[6,18]'等等各种校验textbox时,点击登录或者注册按钮,未输入任何值也能提交,然后后台报错。后来发现自己使用的按钮类型为submit,而且easyui并不主动提供校验form表单所有数据之后再提交的方法,但是有校验所有数据是否符合要求的方法。解决这个问题首先要清楚,s...

2018-02-08 11:08:52 2941

原创 【sqlserver】聚集索引和非聚集索引的比较

聚集索引是一种对磁盘上实际数据重新组织以按指定的一列或者多列值排序。像我们用到的汉语字典,就是一个聚集索引。换句话说就是聚集索引会改变数据库表中数据的存放顺序。非聚集索引不会重新组织表中的数据,而是对每一行存储索引列值并用一个指针指向数据所在的页面。(一个值指向多行等于该值的数据)。sqlserver默认情况下建立的索引是非聚集索引。非聚集索引在排序时会对所有的取值进行排序,然后快速找到该值对

2018-01-31 16:10:22 3555

原创 如何判断对象是否还“活着”,是否需要清除?

判断对象是否还活着的第一种方法是引用计数算法,内容是:给对象添加一个引用计数器,每当有一个地方引用他时,计数器值就加1。引用失效时。计数器值就减1。任何时刻的计数器为0的对象就是不可能再被使用的。但是主流的java虚拟机里面没有选用引用计数算法来管理内存,其中最主要的原因是它很难解决对象之间循环引用的问题。举个简单的例子,对象A和B都有字段instance,赋值令A.instance = B及B.

2018-01-24 10:14:58 332

原创 【JVM】创建对象时虚拟机做了什么?

我们都知道,在语言层面上,创建对象通常仅仅是一个new关键字而已。但是在虚拟机中,对象的创建是怎样的一个过程呢?虚拟机在遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程(具体过程这里不做详解)。在类加载检查通过后,接下来虚拟机将为新生对象分配内存。对象

2018-01-19 16:09:06 421

原创 【oracle】oracle的两种工作方式

简单提一下关于oracle的两种工作方式Dedicated Server 和 Shared Server在实际的工作中我们基本上都在用Dedicated Server专用的服务器模式而不用Shared Server模式正常的情况一个用户的连接,连上来以后针对这个连接专门的启一个oracle的serverprocess用户连接和serverprocess对

2018-01-18 15:23:15 1322

原创 having和where的区别

having 和where 都是用来筛选用的having 是筛选组 而where是筛选记录他们有各自的区别1》当分组筛选的时候 用having2》其它情况用where用having就一定要和group by连用,用group by不一有having (它只是一个筛选条件用的)

2018-01-18 15:19:44 2239 1

转载 【spring】事务管理的概念和特性

事务就是用来解决类似问题的。事务是一系列的动作,它们综合在一起才是一个完整的工作单元,这些动作必须全部完成,如果有一个失败的话,那么事务就会回滚到最开始的状态,仿佛什么都没发生过一样。 在企业级应用程序开发中,事务管理必不可少的技术,用来确保数据的完整性和一致性。 事务有四个特性:ACID原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动

2018-01-18 15:17:49 431

转载 【spring】 <aop:pointcut>标签 expression属性

execution()是方法描述的匹配任意公共方法的执行:     execution(public * *(..)) 任何一个以“set”开始的方法的执行:     execution(* set*(..)) AccountService 接口的任意方法的执行:     execution(* com.xyz.service.AccountService.*(..

2018-01-18 15:16:20 901

原创 【mybatis】<![CDATA[ ]]>

这是XML语法。被这个标记所包含的内容将表示为纯文本,在CDATA内部的所有内容都会被解析器忽略。如果文本包含了很多的"但是有个问题那就是               等这些标签都不会被解析,所以我们只把有特殊字符的语句放在 <![CDATA[   ]]>  尽量缩小 的范围。

2018-01-18 15:13:01 1309

原创 maven的定义以及优势

maven是可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。项目非常大的时候,可借助maven将一个项目拆分成多个工程,最好是一个模块对应一个工程,利于分工协作。而且模块之间还是可以发送消息的。借助maven,可将jar包仅仅保存在“仓库”中,有需要该文件时,就引用该文件接口,不需要复制文件过来占用空间。        如果jar包

2018-01-18 15:10:12 627

原创 关于虚拟机中堆内存结构的详解

新建的对象会放在年轻带里面,年轻代填满会触发minor gc,minor gc会清除包括s0,s1在内的所有年轻代里面不用的垃圾。Eden(伊甸园)里面没有被清除的对象就是幸存下来的,就会被放入s0或者s1中,每次所有幸存对象必须放入一个survivor space区域,意味着必须有一个survivor space是空的。对象上面的数字代表他的年龄,即幸存的次数,每次幸存以后都会换survivor

2018-01-18 10:05:22 1981

原创 JVM内存中各部分存放的内容

虚拟机内存中主要有程序计数器、虚拟机栈、本地方法栈、堆和方法区。程序计数器和虚拟机栈都是线程“私有”的内存。程序计数器是一块比较下的内存空间,主要村放代码执行的位置。分支、循环、跳转、异常处理、线程恢复等基础功能都需要一来这个计数器来完成。例如,多线程中,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,他们之间互不影响,独立存储。经常有人把j

2018-01-18 09:53:54 4455

原创 【mysql】mysql中char、varchar和sqlserver中char、varchar、nvarchar的比较

首先需要说明的是mysql中只有char和varchar,并没有nvarchar这种类型。但是sqlsrver中char、varchar和nvarchar都是存在的。先来说说char,char不管在mysql还是sqlserver中,都是一种定长存储类型,所谓定长存储类型,就是存储的字符没有达到定义的长度,就会以英文空格字符的形式填满。但是mysql中varchar不是这样。比如你定义va

2018-01-18 09:41:42 2740

原创 【JSP】转发和重定向的区别

转发(forward)执行forward之后依然是上一次请求。forward的目标页面可以访问原请求的请求参数,因为依然是同义词请求,所有原请求的请求参数,request范围的属性全部存在。地址栏里请求的URL不会改变。重定向(redirect)执行redirect之后生成第二次请求。redirect的目标页面不能访问原请求的请求参数,因为是第二次请求了,所以原请求的请

2018-01-17 17:34:32 848

原创 【JSP】Serialize()方法

Serialize()方法通过序列化表单值,创建URL 编码文本字符串。格式为input输入框的name=value。然后可以通过name直接获取某个文本框value的值。序列化方法返回结果为下列字符串。想要出现在序列化以后字符串中的input标签,必须有name属性。name1=value1&name2=value2&name3=value3

2018-01-17 17:32:39 1533

原创 【JSP】九大内置对象和四大作用域

九大内置对象(隐含对象):         request、response、session、out、page、pageContext、application、config、exception四大作用域:         page、request、session、application

2018-01-17 17:30:49 128

原创 【JSP】关于jsp文件存放以及引用的路径问题

jsp文件里面引入图片或者css,js等文件,默认从jsp文件所在位置的上级目录下查找。如果jsp文件在根目录下,则图片,css,js等文件的导入也是从根目录查找。如果jsp不在根目录下,而是在根目录下的一个文件夹,比如jsp文件夹下面,则图片,css,js等文件的导入就会从这个jsp文件夹里进行查找,这样就会找不到需要导入的东西。所以这时候导入图片,css,js等文件就需要写绝对路径。或者在路径

2018-01-17 17:29:40 3863

原创 【设计模式】单例模式

显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。从具体实现角度来说,就是以下三点:一是单例模式的类只提供私有的构造函数,二是类定义中含有一个该类的静态私有对象,三是该类提供了一个静态的公有的函数用于创建或获取它本身的静态私有对象。懒汉式(饱汉式)(常用形式)public class Singleton

2018-01-17 17:25:53 110

原创 【JavaScript】关于js实现计时器的方法

functiontimer() {        vartoday = new Date();        //定义具体时间时,月份要比实际月份少1,且不加时分秒的话默认为上午八点整,而不是零点        varfirstDay = new Date(2014,7,3,13,35,36);       var date =

2018-01-17 17:24:06 471

原创 【easyui】input输入框的限制和校验条件

添加提示信息:data-options="prompt:'Enter something here...'"校验手机号:data-options="validType:'mobile'"校验邮件: data-options="validType:'email'"输入框不为空: data-options="required:true"允许输入多行文字:data-options

2018-01-17 17:20:45 11028

原创 【easyui】datebox日期选择框的校验问题

如果有两个时间,并且后者依赖前者,可将后者设置为只读,当前者选定日期后,通过onSelect:read调用自己定义的read()方法来将后者放开,允许其选择输入。校验时间时可以使用validType:'compareToday'通过调用自己定义的方法来完成验证(延伸easyui自己定义的方法)如果是带参数的方法,比如验证结束时间时候,需要将开始时间作为参数传入进入(也可以不传参数,而是

2018-01-17 17:19:00 3688

原创 实现批量删除的方法

将获取的id,最好在前台定义为js的数组,这样传入后台是一个逗号隔开的字符串,可以消除其中的空格。比起将其传入后台之后再去掉中间的空格来说,简便一些。当然,也可以传入后台之后消除空格。比如传入后台一个s字符串。可以用s.replace(" ","").split(","); 方法去掉空格,并且以逗号作为分隔符,获得一个数组。然后遍历数组执行删除操作。

2018-01-17 17:09:15 15030 1

原创 【JavaScript】动态导入数据合并单元格的方法

先将数据库数据进行排序(order by,可以根据多个字段进行排序,具有优先级,第二个字段会在第一个字段相同的基础上完成排序),这样具有相同值得数据就会放在一起。然后还用相同的list方法传入前台,传给前台成功以后,调用自己定义的合并单元格的方法。如果要合并多列,需要定义多个方法,按照优先级,优先级低的排序时候应该校验优先级高的数据是否相同。并且调用时候应该先排序优先级低的。

2018-01-17 15:49:12 604

转载 Java 在给定路径上创建文件,所在文件夹不存在时,如何正确创建。

[java] view plain copyString strPath = "E:\\a\\aa\\aaa.txt";  File file = new File(strPath);  if(!file.exists())){      file.createNewFile();  }  这段代码,如果 E:\a\aa\ 文件夹不存在,会报

2017-11-27 11:38:59 3989

转载 Java的Date类与Calendar类

一:Date类  在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理。这里简单介绍一下Date类的使用。  1.使用Date类代表当前系统时间  Date date = new Date(); System.out.println(date);  使用Da

2017-11-27 09:33:19 158

转载 Mybatis与Ibatis比较

1、Mybatis实现了接口绑定,使用更加方便。 在ibatis2.x中我们需要在DAO的实现类中指定具体对应哪个xml映射文件, 而Mybatis实现了DAO接口与xml映射文件的绑定,自动为我们生成接口的具体实现,使用起来变得更加省事和方便。 这可以说是Mybatis最重要的改进。 注意: 虽然Mybatis支持在接口中直接使用annotation的配置方式来简化配置,

2017-11-13 17:58:39 320

转载 线程的两种创建方式及比较

1.线程的概念:线程(thread)是指一个任务从头至尾的执行流,线程提供一个运行任务的机制,对于java而言,一个程序中可以并发的执行多个线程,这些线程可以在多处理器系统上同时运行。当程序作为一个应用程序运行时,java解释器为main()方法启动一个线程。 2.并行与并发:(1)并发:在单处理器系统中,多个线程共享CPU时间,而操作系统负责调度及分配资源给它们。

2017-10-16 16:46:19 336

原创 Ajax的type四种取值区别

1、GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改、增加数据,不会影响资源的内容,即该请求不会产生副作用。无论进行多少次操作,结果都是一样的。2、与GET不同的是,PUT请求是向服务器端发送数据的,从而改变信息,该请求就像数据库的update操作一样,用来修改数据的内容,但是不会增加数据的种类等,也就是说无论进行

2017-10-12 11:14:06 2303

原创 @responseBody注解

1、  @responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据,需要注意的是,在使用此注解之后不会再走视图处理器,而是直接将数据写入到输入流中,他的效果等同于通过response对象输出指定格式的数据。2、    @RequestMap

2017-10-11 11:45:23 167

原创 分页的工具类

package cn.util;/** * 分页的工具类 *  * 总共36条记录,每页10条,问:共几页?4页 当前页 起始条数 1 1 2 11 3 21 4 31 起始条数如何算出来的? (页数 - 1)*10 + * 1 *  * ~生成读写器,做容错处理 * @author sun * */public class PageInfoUt

2017-09-26 11:28:35 213

转载 MD5加密算法

package com.md5;import java.security.MessageDigest;/** * MD5加密算法 * @author 向鹏龙 * */public class Md5 {public static final String KEY = "shuangmuxinke";public final static Stri

2017-09-26 11:21:10 323

转载 数据库连接池

package com.util;import java.io.FileNotFoundException;import java.io.IOException;import java.sql.Connection;import java.util.Properties;import javax.sql.DataSource;import org.a

2017-09-26 10:37:25 174

shopping.zip

本人毕业设计,基于ssm+mysql+easyui+bootstrap开发的小型超市购物系统,内含整个项目源码和sql表结构信息。

2019-08-30

java基础学习课件ppt

包含javase所有常用知识讲解,不到一个月自学所有java基础知识。

2018-01-05

javascript实现计时器

js实现计时器,只需要将设定的开始时间修改为你需要的开始时间就可以使用,制作个人网站,纪念重要日期非常实用。

2018-01-05

时间轴,事件时间轴完整代码

包含时间轴的完整代码,html,css和js文件。只需要将内容和标题更换一下就可以使用。要求更高的也可以修改css样式,但大体模块不变。

2018-01-05

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除