- 博客(52)
- 收藏
- 关注
原创 webSocket实现点对点、群发消息通知
第一:配置Websocket请求的路径package com.ella.operation.server.client;import org.springframework.context.annotation.Configuration;import org.springframework.web.socket.config.annotation.EnableWebSocket;import org.springframework.web.socket.config.annotation.We.
2022-04-22 10:27:12 2192
原创 mybatis和hibernate的区别
第一方面:开发速度的对比就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对简单很容易上手,但也相对简陋些。个人觉得要用好Mybatis还是首先要先理解好Hibernate。比起两者的开发速度,不仅仅要考虑到两者的特性及性能,更要根据项目需求去考虑究竟哪一个更适合项目开发,比如:一个项目中用到的复杂查询基本没有,就是简单的增删改查,这样选择
2022-04-22 10:20:49 203
转载 mysql order by根据某一个字符串字段排序的问题
mysql 在根据某一个字符串字段进行排序的时候,往往没法按照字母进行排序,这时候需要在oder by后面更换成以下形式就可以按照字母就行排序了ORDER BY CONVERT(c.NAME USING gbk) COLLATE gbk_chinese_ci ASC;CONVERT(c.NAME USING gbk) 表示把该字段按照gbk进行重新编码;COLLATE gbk_chinese_ci ASC 表示按照gbk_chinese_ci进行排序,大小写不敏感后缀"_cs"或者"_ci"意思是区分
2022-03-02 10:23:19 860
原创 mysql根据其中一个字段排序后去最新数据
第一种方法:SELECTSUBSTRING_INDEX(GROUP_CONCAT(to_user_code ORDER BY eppntur.modify_time desc),',',1)-- GROUP_CONCAT(user_code ORDER BY eppntur.modify_time desc)FROMes_project_process_node_to_user_ref eppnturWHEREeppntur.disabled = 'FALSE'ANDeppntur.p.
2021-07-02 17:41:33 213
原创 log4j2配置(包含压缩、写数据库)
<dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version></dependency>@Componentpubli...
2019-12-25 17:01:07 2461
原创 gson实现字符串与对象的相互转换
最近一个项目需要用到JSON,需要在JSON字符串和对象之间相互转换,在网上找了些资料,发现google的Gson还是比较不错的。废话不说,下面是简单的例子:先上源码:下载(包含jar包) Person实体类 [java] view plain copypackage com.hsun.json; /** * Person 实体类 * @author ...
2018-07-30 09:42:09 603
原创 Json数组转Gson
关于GSON的入门级使用,这里就不提了,如有需要可以看这篇博文 《Google Gson的使用方法,实现Json结构的相互转换》 ,写的很好,通俗易懂。我为什么写这篇文章呢?因为前几晚跟好友 xiasuhuei321 探讨了一下GSON解析复杂的JSON的时候,能不能只解析源数据中的数组,甚至只解析数组的某一部分。探讨了二十分钟,得出结论:没用过,不知道。所以今天特地研究了一下,发现真的S...
2018-07-26 17:52:36 838
原创 java日期工具类
备注:以上代码有两个需要注意的地方:① Calendar除了getActualMaximum方法之外,还有一个看起来类似的方法getMaximum,但是这两个方法是不同的:getActualMaximum 返回实际的最大数值,getMaximum 返回的是可能的最大数值。上面的代码如果改成getMaximum,那么一般情况都会恒定的返回31 (月份中可能的最大天数是31)...
2018-07-17 17:14:41 298
原创 BigDecimal这个类来实现加减乘除呢
package com.mmall.util;import java.math.BigDecimal;/ ** *敲代码的wqq * / public class BigDecimalUtil { private BigDecimalUtil(){ } public static BigDecimal add(double v1,double v2){ ...
2018-07-17 17:08:10 281
原创 将0.06转换成6%
NumberFormat num = NumberFormat.getPercentInstance(); //返回当前默认语言环境的百分比格式。num.setMaximumIntegerDigits(2); //设置数的整数部分所允许的最大位数num.setMaximumFractionDigits(2); //设置数的小数部分所允许的最大位数double number = 0.1703;...
2018-07-17 17:05:21 774
原创 mac中安装node 、npm
我的实践方法:利用Homebrew安装 Homebrew简称brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或卸载软件。1. 打开终端 ,执行以下命令安装Homebrewruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"1执行上面命令后会提示输...
2018-06-26 15:29:07 330
原创 sleep() 和 wait() 的区别
结合synchronized,会更好的理解sleep()和wait()这两个方法,当然也就知道了他们的区别了。这篇博客就一起学习这两个方法sleep()sleep() 方法是线程类(Thread)的静态方法,让调用线程进入睡眠状态,让出执行机会给其他线程,等到休眠时间结束后,线程进入就绪状态和其他线程一起竞争cpu的执行时间。 因为sleep() 是static静态的方法,他不能改变对象的机锁,当...
2018-06-22 10:39:42 322
原创 MyBatis 之<set>标签的使用
MyBatis在生成update语句时若使用if标签,如果前面的if没有执行,则可能导致有多余逗号的错误。使用set标签可以将动态的配置SET 关键字,和剔除追加到条件末尾的任何不相关的逗号。 没有使用if标签时,如果有一个参数为null,都会导致错误,如下示例:Xml代码<update id="updateByPrimaryKeySelective" parameterType="Recr...
2018-06-22 10:37:56 1057
原创 mybatis动态sql中的trim标签的使用
修剪标记是一个格式化的标记,可以完成设置或者是其中标记的功能,如下代码: 1, 从用户选择* <trim prefix =“WHERE”prefixoverride =“AND | OR”> <if test =“name!= null and name.length()> 0”> AND name =#{name} </ if> &l...
2018-06-22 10:28:13 216
原创 深入浅析Mybatis与Hibernate的区别与用途
1. hibernate是全自动,而mybatis是半自动hibernate完全可以通过对象关系模型实现对数据库的操作,拥有完整的JavaBean对象与数据库的映射结构来自动生成sql。而mybatis仅有基本的字段映射,对象数据以及对象实际关系仍然需要通过手写sql来实现和管理。2. hibernate数据库移植性远大于mybatishibernate通过它强大的映射
2018-01-11 11:20:29 43931 10
原创 springMVC和struts2的区别
1、Struts2是类级别的拦截, 一个类对应一个request上下文,SpringMVC是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应,所以说从架构本身上SpringMVC就容易实现restful url,而struts2的架构实现起来要费劲,因为Struts2中Action的一个方法可以对应一个url,而其类属性却被所有方法共享,这也就无法用注解或其他方式
2018-01-11 11:19:08 347
原创 java Web中的web.xml的初始化参数
web.xml里面可以定义两种参数:(1)application范围内的参数,存放在servletcontext中,在web.xml中配置如下:xml 代码 context/param avalible during application (2)servlet范围内的参数,只能在servlet的in
2018-01-07 12:11:53 1585
原创 Object类的常用方法
1 clone() :创建并返回副本使用clone方法必须实现Cloneable接口,并重写clone方法public class CloneTest implements Cloneable{String str=null;CloneTest(String str){this.str=str;}@Overrideprotected Object clon
2018-01-03 21:01:44 597
转载 经典java笔试题(二)
1、Java的访问修饰符是什么?答案:访问权限修饰符是表明类成员的访问权限类型的关键字。使用这些关键字来限定程序的方法或者变量的访问权限。它们包含:public: 所有类都可以访问 protected: 同一个包内以及所有子类都可以访问 private: 只有归属的类才能访问默认: 归属类及相同包下的子类可以访问2、所有类的父类是什么?答案:Object.3
2018-01-02 21:00:12 1822
原创 读取Excel表格报错问题分析总结(用apache POI读取,表格稍微改动就报错导入不进去)
首先是建立在用apachePOI解析Excel时一定几率是能成功解析导入的,如果一点也不能的话,也可以参考看看我总结的原因,也许也是导致你屡次导入不能的原因之一。 这个问题是前天客户反应的,不用下载的好的模版套进内容再导入的话就报错,怎么也导入不进去,客户即想用从其他直接导出的数据导入我们的产品中用想能自己复制一些其他的内容到自己建立的excel表格中导入进去。今天晚上特意抽出
2018-01-02 20:57:42 1935
转载 pinyin4j把中文句子(含有多音字字母)转成拼音(二维数组递归求所有组合情况返回list)算法实现!
介绍 Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制,然而真正的把含有多音字、数字、字母的中文句子转成拼音得到所有的组合情况却有很大难度,我看过很多有关博客或者帖子,被广大网友视为它的短板和不足,很多网友哀声叹气不能真正得到所有组合情况,一部分也只是用简单循环得到中文句子的拼音组合情况的一种,鄙人利用业余时间研究了研究,把研究结果分享
2018-01-02 20:55:08 1172 1
转载 EasyUI-DataGrid多行动态选择性合并算法实现
jQuery EasyUI中有一个很好用的数据列表控件,即DataGrid控件,后台以一定的json格式传给控件就能在前台展示出来,功能很强大,不过有时需求需要这样即多行合并,如在列表中如果相同的部门字段上下合并达到Excel展示相同的效果,而且有时不止这一个字段的合并,还有其他字段根据内容相同或者其他字段的ID相同啊进行合并。 官网上没有对应的类似的Demo,可能开发中遇到这种情
2018-01-02 20:53:21 412
原创 最常用的15大Eclipse开发快捷键技巧
引言 做java开发的,经常会用Eclipse或者MyEclise集成开发环境,一些实用的Eclipse快捷键和使用技巧,可以在平常开发中节约出很多时间提高工作效率,下面我就结合自己开发中的使用和大家分享一下Eclipse中常用到的快捷键和技巧。 1、alt+?或alt+/:自动补全代码或者提示代码这个是我最得意的快捷键组合了,尤其是当输入syso几
2018-01-02 20:51:01 220
转载 10个对开发项目有害的编程习惯
避免这些常见的编码习惯,会让我们的工作更轻松、软件更安全且更易于扩展。帕雷托法则明确指出,20%的因导致80%的果。又称为80-20法则,它适用于几乎每一个需要人作为劳动主体的相关领域。在软件开发领域,这个法则可以概括为,大多数的问题都是由少数不良编码习惯造成的。改变这些习惯,你会更有效率。10个对开发项目有害的编程习惯下面讲讲最要不得的10条编码习惯:
2018-01-02 20:49:05 318
原创 springmvc的工作原理
SpringMVC框架介绍 1) Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Sprin
2018-01-02 20:44:57 329
原创 java经典笔试题
下面都是我自己的答案非官方,仅供参考,如果有疑问或错误请一定要提出来,大家一起进步啦~~~ 1. 下面哪些是Thread类的方法()A start() B run() C exit() D getPriority()答案:ABD解析:看Java API docs吧:http://docs.oracle.com/javase
2018-01-02 20:21:32 423
原创 mybatis和hibernate的区别
第一方面:开发速度的对比就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对简单很容易上手,但也相对简陋些。个人觉得要用好Mybatis还是首先要先理解好Hibernate。比起两者的开发速度,不仅仅要考虑到两者的特性及性能,更要根据项目需求去考虑究竟哪一个更适合项目开发,比如:一个项目中用到的复杂查询基本没有,就是简单的增删改查,这样选择
2017-11-20 16:45:27 303
原创 Hibernate主键生成策略
1、自动增长identity适用于MySQL、DB2、MS SQL Server,采用数据库生成的主键,用于为long、short、int类型生成唯一标识使用SQL Server 和 MySQL 的自增字段,这个方法不能放到 Oracle 中,Oracle 不支持自增字段,要设定sequence(MySQL 和 SQL Server 中很常用)数据库中的语法如下:MySQL:c
2017-10-26 17:49:32 455
原创 hibernate自动建表时的错误解决办法
错误代码:Incorrect column specifier for column 'addressId'解决办法及叙述:用Hibernate生成数据表时,Hibernate执行了下面的SQL语句: create table Address (addressId varchar(255) not null auto_increment, name
2017-10-26 17:45:03 725
原创 spring属性配置执行过程,单列和原型区别
Spring配置中,采用属性注入时,当创建IOC容器时,也直接创建对象,并且执行相对应的setter方法Student.java 1 package com.scope; 2 3 public class Student { 4 private String name; 5 private String number; 6 publi
2017-10-24 09:45:04 354
原创 Hibernate注解详解
一。实体Bean每个持久化POJO类都是一个实体Bean, 通过在类的定义中使用 @Entity 注解来进行声明。声明实体Bean@Entitypublic class Flightimplements Serializable { Long id; @Id public Long getId() { return id; } public vo
2017-10-22 19:49:56 262
原创 hibernate映射文件配置的dynamic-insert属性配置
hibernate映射文件配置的dynamic-insert属性配置 Hibernate允许我们在映射文件里控制insert和update语句的内容.比如在映射文件中 1)元素 insert属性:设置为false,在insert语句中不包含这个字段,表示永远不会被插入,默认true 2)元素 update属性:设置为false,在update语句中不包含这个字段,表
2017-10-22 18:50:45 515
原创 MySQL事务隔离级别详解
SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。Read Uncommitted(读取未提交内容) 在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读(Dirt
2017-10-22 17:01:53 237
原创 对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()
使用SQLQuery 在Hibernate中使用sql语句session.createSQLQuery.转载对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取这个接口。下面来描述如何使用这个API进行查询。1.标量查询(Scalar queries)最基本的SQL查询就是获得一
2017-10-22 16:48:54 588
原创 struts2自定义类型转换器
首先,何为struts2的类型转换器?类型转换器的作用是将请求中的字符串或字符串数组参数与action中的对象进行相互转换。一、大部分时候,使用struts2提供的类型转换器以及OGNL类型转换机制即可满足大部分类型转换需求。如:类User.javapackage models;public class User { private Strin
2017-10-22 16:25:39 311
原创 MYSQL模糊查询
实例:SQL模糊查询,使用like比较关键字,加上SQL里的通配符,请参考以下: 1、LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。 2、LIKE'%inger' 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。 3、LIKE'%en%' 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Gre
2017-10-20 17:17:00 274
原创 HTTP协议详解
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支持客户/服务器模
2017-10-20 16:01:20 666
原创 struts2为每个线程提供一个action实例
1.struts2为每个线程提供一个action实例,多线程访问时不会出现问题。当使用spring管理struts2的action实例对象时,scope必须配置为prototype或者session,若配置为singleton则多线程访问时会出现问题,例如actionMessage,fieldError等信息会累加,多用户访问时有的用户访问到的是另一个用户的数据。2.scope=“prot
2017-10-19 17:42:34 220
原创 js中通超链接向后台传值,中文乱码(springmvc)
首先需要在前台的js中先经过两次的编码,再在后台中用utf-8解码案例: function search() { var faultAddr = encodeURI(document.getElementById("username").value); username= encodeURI(user
2017-10-15 19:21:00 679
原创 解决spring mvc No mapping found for HTTP request with URI错误的三种方法
1、控制层没有被spring扫描到,控制层没有实例化,检查自己的控制层是否被spring扫描到,检查以下配置:2、web.xml配置文件的标签配置成/*,正确的配置应该是/。学了structs之后再学spring mvc框架的 就会很容易犯这个错误。3、使用的是注解实例化控制层,且web.xml的路径配置为/,却没有在spring的配置文件
2017-10-15 11:16:29 2169
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人