- 博客(51)
- 资源 (4)
- 收藏
- 关注
原创 解决get方式java后端乱码
针对url拼接参数后端乱码的问题,可以采用对参数进行两次编码,然后在后端进行解码的方式,示例代码如下:1. 前端代码: var url = '<%=basePath%>'+'arcticle/getArticle.do?title='+encodeURI(encodeURI(title))2. 后端代码@RequestMapping(value="/getArticle"...
2019-08-15 10:28:46
434
原创 springMVC使用自定义标签控制按钮显示
; formData.append("file", $('#file')[0].files[0]); url="<%=basePath%>user/uploadFile.do?code="+$("#code").val()"; $.ajax({ ur...
2019-08-15 09:47:49
280
原创 js根据json对象数组动态生成表格
需求:(1).ajax取得json对象数组后,根据数组内所有json对象的所有key和value生成相应的表格标题和表格数据; (2).不显示json数据的某些key; (3).对某些key进行先后排序显示。 2.js代码:(function(){$("#queryButton").bind('click',function() {$.ajax({url:"...",type:"POST
2017-10-15 15:06:45
9027
原创 java8中DateTime类功能简介
最近项目中有对日期和时间的操作,用到了DateTime类进行时间操作,用DateTime可方便地进行日期和时间的加减操作,具体用法请看以下示例:DateTime today = new DateTime(new Date()):得到 当前的DateTime类型的时间DateTime yesterday = today.minusDays(1):得到昨天的时间DateTime tomor
2017-07-25 15:34:44
2006
原创 java枚举类型与字符串或其他类型的互转
我们在项目中经常会遇到把枚举类型的显示名显示到文档,或从文档中导入枚举类型时把显示名转换成相应的枚举类型,这时候就需要在文档显示时,调用枚举类型的响应转化方法。要想得到显示名就要调用枚举类型的toString方法,反之从字符串得到 相应的枚举类型需要调用parse方法。示例代码如下:public enum EnumTest { TESTONE("枚举类型1"), TES
2017-07-25 14:52:52
6593
原创 关于java类继承特性的一些认识
1. 首先,java类继承的类即父类可以是抽象类也可以是非抽象类,抽象类里可以有类属性,也可以有方法,但方法至少有一个是抽象方法。2. 子类不必实现父类的所有方法,子类实现了父类的所有抽象方法,才不会是抽象类,否则子类仍然是抽象类,是不能实例化的。3. 子类会继承所有的父类属性,也可以自己增加新的属性,也可以在构造方法或普通方法里修改父类的属性。4. 继承的一大目的就是要利用多态,可能
2017-06-16 17:20:06
313
原创 用cmd命令生成项目webservice客户端
1. 命令格式为: wsimport -s D:/workspaceForEclipse/projectForTest/src -p com.test.ws -b D:/simple-binding.xjb -keep http://172.0.0.1:8080/job/ws/testService?wsdl2.各项含义:(1). -s D:/workspaceForEclipse/p
2017-06-16 16:39:32
5535
转载 深入Java集合学习系列:HashMap的实现原理
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2. HashMap的数据结构: 在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本
2017-06-15 11:12:22
200
转载 深入Java集合学习系列:ArrayList的实现原理
1. ArrayList概述: ArrayList是List接口的可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。 每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向ArrayList中不断添加元素,其容量
2017-06-15 11:10:37
200
转载 spring + redis 实现数据的缓存
1、实现目标 通过redis缓存数据。(目的不是加快查询的速度,而是减少数据库的负担) 2、所需jar包 注意:jdies和commons-pool两个jar的版本是有对应关系的,注意引入jar包是要配对使用,否则将会报错。因为commons-pooljar的目录根据版本的变化,目录结构会变。前面的版本是org.apache.pool,而后面的版本是org
2017-06-14 09:09:40
544
转载 反射获取对象成员的字段值,getFields()和getDeclaredFields()用法区别
用反射获取内部类的属性其实很简单。。我弄了半天才弄好,由于很弱智的原因啊,写此博文已吸取教训。 虽简单,但是太坑爹了,getFields()只能获取public的字段,包括父类的。 而getDeclaredFields()只能获取自己声明的各种字段,包括public,protected,private。 而我写的Characters类中的属性是在继承父类的,父类中是protect
2017-06-12 14:18:23
1096
转载 Java POI 导出EXCEL经典实现 Java导出Excel弹出下载框
在web开发中,有一个经典的功能,就是数据的导入导出。特别是数据的导出,在生产管理或者财务系统中用的非常普遍,因为这些系统经常要做一些报表打印的工作。而数据导出的格式一般是EXCEL或者PDF,我这里就用两篇文章分别给大家介绍下。(注意,我们这里说的数据导出可不是数据库中的数据导出!么误会啦^_^) 呵呵,首先我们来导出EXCEL格式的文件吧。现在主流的操作Excel文件的
2017-06-08 09:45:18
720
转载 JSP内置对象介绍
一、内置对象介绍内置对象不能在中使用!内置对象所属类pageContextjavax.servlet.jsp.PageContextrequestjavax.servlet.http.HttpServletRequestresponsejavax.servlet.http.HttpServletRe
2017-06-08 09:12:23
326
转载 SSH分页(Hibernate实现简单分页查询)
直接正题一、INewsDao.java(DAO接口): 1 package cn.dy.dao; 2 3 import java.util.List; 4 import cn.dy.bean.News; 5 6 public interface INewsDao { 7 8 //其他代码省略 9 10 11
2017-06-05 14:56:12
662
转载 Java动态代理机制详解(JDK 和CGLIB,Javassist,ASM)
class文件简介及加载 Java编译器编译好Java文件之后,产生.class 文件在磁盘中。这种class文件是二进制文件,内容是只有JVM虚拟机能够识别的机器码。JVM虚拟机读取字节码文件,取出二进制数据,加载到内存中,解析.class 文件内的信息,生成对应的 Class对象: class字节码文件是根据JVM虚拟机规范中规
2017-06-01 09:52:32
455
转载 《深入理解mybatis原理》 MyBatis的架构设计以及实例分析
MyBatis是目前非常流行的ORM框架,它的功能很强大,然而其实现却比较简单、优雅。本文主要讲述MyBatis的架构设计思路,并且讨论MyBatis的几个核心部件,然后结合一个select查询实例,深入代码,来探究MyBatis的实现。一、MyBatis的框架设计 注:上图很大程度上参考了iteye 上的chenjc_it 所写的博文原理分析之二:框
2017-05-31 15:52:56
521
转载 JSON:如果你愿意一层一层剥开我的心,你会发现...这里水很深——深入理解JSON
我们先来看一个JS中常见的JS对象序列化成JSON字符串的问题,请问,以下JS对象通过JSON.stringify后的字符串是怎样的?先不要急着复制粘贴到控制台,先自己打开一个代码编辑器或者纸,写写看,写完再去仔细对比你的控制台输出,如果有误记得看完全文并评论,哈哈。var friend={ firstName: 'Good', 'lastName':
2017-05-27 15:50:03
909
转载 java项目几种常见数据库连接池的使用比较
最原始的数据库使用就是打开一个连接并进行使用,使用过后一定要关闭连接释放资源。由于频繁的打开和关闭连接对jvm包括数据库都有一定的资源负荷,尤其应用压力较大时资源占用比较多容易产生性能问题。由此使用连接池的作用就显现出来,他的原理其实不复杂:先打开一定数量的数据库连接,当使用的时候分配给调用者,调用完毕后返回给连接池,注意返回给连接池后这些连接并不会关闭,而是准备给下一个调用者进行分配
2017-05-27 15:31:27
634
转载 数据库连接池的作用及c3p0的详解
1.JDBC数据库连接池的必要性在使用开发基于数据库的web程序时,传统的模式基本是按以下步骤: 在主程序(如servlet、beans)中建立数据库连接。进行sql操作断开数据库连接。这种模式开发,存在的问题:普通的JDBC数据库连接使用 DriverManager 来获取,每次向数据库建立连接的时候都要将 Connection 加载到内存中,再
2017-05-26 16:13:50
556
转载 连接Linux服务器操作Oracle数据库
连接Linux服务器操作Oracle数据库 由于项目已经上线,现场的数据库服务器不允许直接用Oracle的客户端plsqldev.exe来连接,只能通过Linux服务器的命令来操作。 以下是用SecureCRT 5.1客户端连接Linux服务器来操作Oracle数据库: 1.连接到Linux服务器(输入服务器的ip地址) ssh 10.199.94.2
2017-05-26 15:58:57
1733
1
转载 MyBatis 延迟加载,一级缓存,二级缓存设置
什么是延迟加载 resultMap中的association和collection标签具有延迟加载的功能。 延迟加载的意思是说,在关联查询时,利用延迟加载,先加载主信息。使用关联信息时再去加载关联信息。设置延迟加载 需要在SqlMapConfig.xml文件中,在标签中设置下延迟加载。 lazyL
2017-05-25 16:39:45
233
转载 java日志处理组件log4j--log4j.xml配置详解
注:本资料通过网络查找然后整理而成首先要对配置文件的各个参数进行说明,这样才能合理的进行配置。参数意义说明:配置根Logger[html] view plain copy其语法为: log4j.rootLogger = [ level ] , appenderName1, appenderName2, …
2017-05-25 09:23:08
301
转载 log4j 日志信息的引入 — 解决项目运行过程中的日志信息
定义log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改
2017-05-24 15:50:10
907
转载 一次非常有意思的 SQL 优化经历
我用的数据库是mysql5.6,下面简单的介绍下场景课程表create table Course(c_id int PRIMARY KEY,name varchar(10))数据100条学生表:create table Student(id int P
2017-05-24 15:46:24
252
转载 Java反射机制应用实践
引言Java反射机制是一个非常强大的功能,在很多大型项目比如Spring, Mybatis中都可以看见反射的身影。通过反射机制我们可以在运行期间获取对象的类型信息,利用这一特性我们可以实现工厂模式和代理模式等设计模式,同时也可以解决Java泛型擦除等令人苦恼的问题。本文我们就从实际应用的角度出发,来应用一下Java的反射机制。反射基础p.s: 本文需要读者对反射机制
2017-05-24 10:50:26
199
原创 myBatis获取SqlSession连接对象的两种方式
1、spring配置文件applicationContext.xml,代码如下: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:jee="http://www.sp
2017-05-18 11:05:30
11468
转载 JDK动态代理的实现及原理
动态代理,听上去很高大上的技术,在Java里应用广泛,尤其是在hibernate和spring这两种框架里,在AOP,权限控制,事务管理等方面都有动态代理的实现。JDK本身有实现动态代理技术,但是略有限制,即被代理的类必须实现某个接口,否则无法使用JDK自带的动态代理,因此,如果不满足条件,就只能使用另一种更加灵活,功能更加强大的动态代理技术—— CGLIB。Spring里会自动在JDK的代理
2017-05-16 15:06:09
233
转载 servlet过滤器、监听器、struts2拦截器的区别
1.过滤器Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码、做一些业务逻辑判断等。其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截到请求,此时你就可以对请求或响应(Request、Response)统一设置编码,简化操作;同时还可进行逻辑判断,如用户是否已经登陆、有没有权限访问该
2017-05-11 16:55:58
258
转载 java的方法锁、对象锁以及类锁的区别
首先的明白Java中锁的机制synchronized 在修饰代码块的时候需要一个reference对象作为锁的对象. 在修饰方法的时候默认是当前对象作为锁的对象. 在修饰类时候默认是当前类的Class对象作为锁的对象.线程同步的方法:sychronized、lock、reentrantLock分析方法锁(synchronized修饰方法时)通过在方法声明
2017-05-11 14:46:26
735
转载 array,vertor,arraylist,hashable,hashmap等几个易混淆概念的区别
Array可以存放Object和基本数据类型,但创建时必须指定数组的大小,并不能再改变,Vertor是放的Object。Vertor一维,Hashmap/Hashtabe二维;Vertor/Arraylist用index作检索,Hashmap/Hashtabe用key作为检索;Hashmap,Arraylist不是同步的,意味着它们的速度更快;Hashtable,Verto
2017-05-10 16:57:12
356
转载 Struts2的工作原理(图解)详解
Struts2的工作原理 上图来源于Struts2官方站点,是Struts 2 的整体结构。一个请求在Struts2框架中的处理大概分为以下几个步骤(可查看源码:https://github.com/apache/struts):1 客户端初始化一个指向Servlet容器(例如Tomcat)的请求2 这个请求经过一系列
2017-05-10 16:51:39
402
转载 Java内存模型(JMM)
概述 多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。在讨论Java内存模型和线程之前,先简单介绍一下硬件的效率与一致性。硬件的效率与一致性
2017-05-09 16:36:41
268
转载 HttpServletRequest和HttpServletResponse详解
请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口。主要的与请求和接口相关的类及接口 方 法说 明ServletInputStreamServlet的输入流ServletOutputStreamServlet的输出流
2017-05-09 16:23:50
263
转载 ActionContext详解
ActionContext ActionContext是Action的上下文,Struts2自动在其中保存了一些在Action执行过程中所需的对象,比如session, parameters, locale等。Struts2会根据每个执行HTTP请求的线程来创建对应的ActionContext,即一个线程有一个唯一的ActionContext。因此,使用者可以使用静态方法ActionCo
2017-05-09 15:13:21
397
转载 Struts Action 与ActionSupport的区别
一、Action 跟 Actionsupport 的区别当我们在写action的时候,可以实现Action接口,也可以继承Actionsupport这个类.到底这两个有什么区别呢?Action接口有:public static final java.lang.String SUCCESS = "success"; public static final java.lan
2017-05-08 15:49:11
1219
原创 struts拦截器配置和使用
struts项目需要用到拦截器,用于校验session是否过期以及用户是否已登录,session过期和用户未登录则跳转到登录界面。首先是在struts的配置文件struts.xml里进行拦截器bean的配置,代码如下 "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://s
2017-05-08 15:21:32
1429
原创 解决hql子查询不能用max聚合函数的问题
hibernate框架下想查出日志表最新的一条记录,因为主键id是递增的,所以用子查询选出表中最大的id作为主查询的条件,代码如下:public class MonitorDAO extends HibernateEntityDao {public TLog findLatestLog() {String sql = "from TLog where id=(select max(id
2017-05-08 14:03:05
2173
转载 SpringMVC介绍之Validation
SpringMVC介绍之Validation 对于任何一个应用而言在客户端做的数据有效性验证都不是安全有效的,这时候就要求我们在开发的时候在服务端也对数据的有效性进行验证。SpringMVC自身对数据在服务端的校验有一个比较好的支持,它能将我们提交到服务端的数据按照我们事先的约定进行数据有效性验证,对于不合格的数据信息SpringMVC会把它保存在错误对象中,这些错误信息我们也
2017-04-24 09:29:20
358
基于Simulink永磁同步电机矢量控制系统仿真
2013-05-10
自动控制原理A1
2013-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人