3 言曌

尚未进行身份认证

志存高远,笃行不倦。

等级
TA的排名 1k+

Vim 命令合集

命令历史以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim在命令行窗口中输入以下命令即可vim直接启动vimvimfilename打开vim并创建名为filename的文件 文件命令打开单个文件vimfile同时打开多个文件vimfile1file2file3...在vim窗口中打开一

2018-04-02 23:11:49

Mac环境下安装配置Redis

一、下载安装1、下载redis我下的是最新版 redis-4.0.6.tar.gz官网地址:https://redis.io/ 我放在 /Users/liuyanzhao/Documents/JavaStudy/redis-4.0.6.tar.gz下2、解压安装进行解压缩tar-zxvfredis-4.0.6.tar.gz 对文件夹进行重命名mv redis-4.0.6redis 进入...

2018-04-02 23:09:11

SpringMVC 统一异常处理

1描述在J2EE项目的开发中,不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的、不可预知的异常需要处理。每个过程都单独处理异常,系统的代码耦合度高,工作量大且不好统一,维护的工作量也很大。那么,能不能将所有类型的异常处理从各处理过程解耦出来,这样既保证了相关处理过程的功能较单一,也实现了异常信息的统一处理和维护?答案是肯定的。下面将介绍使用S...

2018-04-02 23:06:59

serialVersionUID作用

serialVersionUID适用于Java的序列化机制。简单来说,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常,即是InvalidCastEx...

2018-04-02 22:59:31

Java之POI操作,封装ExcelUtil实现Excel导入导出

最近老师布置了一个任务,实现Excel和数据库的导入导出。这个问题起初看起来是不复杂,实现简陋的导入导出比较容易。但是,后来老师要求写一个包装类,让其他同学能够直接使用。这就涉及到了泛型和反射的内容,其实也不复杂。最终,在网上找到一段代码,写得挺好的,然后一顿调试和修改,就能直接拿来用了。现在也分享给大家。 基本功能*1.实体属性配置了注解就能导出到excel中,每个属性都对应一列.*2....

2018-04-02 22:58:02

Restful API 的设计规范

RestfulAPI的设计规范1.URIURI规范资源集合vs单个资源避免层级过深的URI对Composite资源的访问2.RequestHTTP方法安全性和幂等性复杂查询BookmarkerFormatContentNegotiation6.Response分页response7.错误处理8.服务型资源9.异步任务10.API的演进版本URI失效11.安全参考文档本文总...

2018-04-02 22:56:43

Hibernate 懒加载 Unable to evaluate the expression Method threw ‘org.hibernate.LazyInitializationExcept

问题描述这里有一个角色表Role,用户表User,权限表Permission,角色和权限关系表RolePermissionRole实体类有五个属性roleId,roleName,roleStatus(这三个是Role表的三个字段),userList(一个角色对应多个用户,ManyToOne)rolePermissionList(角色权限关系也是ManyToOne的关系)后面两个...

2018-04-02 22:55:03

Hibernate 泛型实现 dao 层的基类

最近在用Hibernate操作数据库的时候,发现每个实体类都要写增删改查,像这样。package com.change.dao;import com.change.entity.User;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.s...

2018-04-02 22:54:15

Spring Data JPA 实现多表关联查询

最近抽出时间来做博客,数据库操作使用的是 JPA,相对比Mybatis而言,JPA 单表操作非常方便,增删改查都已经写好了。但是多表操作就不如Mybatis那种直接写sql语句来得方便,JPA 的多表操作比较麻烦。 需求描述获得文章列表,文章列表里需要显示每篇文章的分类目录列表,因为一个文章可能有多个分类,一个分类当然也可以对应多篇文章的。 下面是我用截图软件画的一个图,描述的是三张表...

2018-04-02 22:53:33

Java 基于UDP 实现单播、组播、广播 Socket 编程

UDP信息传递的方式单播(unicast):是指封包在计算机网络的传输中,目的地址为单一目标的一种传输方式。它是现今网络应用最为广泛,通常所使用的网络协议或服务大多采用单播传输,例如一切基于TCP的协议。 组播(multicast):也叫多播,多点广播或群播。指把信息同时传递给一组目的地址。它使用策略是最高效的,因为消息在每条网络链路上只需传递一次,而且只有在链路分叉的时候,消息才会被复制。多...

2018-04-02 22:52:27

Mac电脑下使用Socket报错socket抛出Can’t assign requested address解决

最近在学习Socket,在使用UDP组播的时候,死活报错。一直 Can'tassignrequestedaddress 在网上查了几篇文章,得到了解决 解决方法方法一、(测试没通过)禁用IPv6具体方法,可以百度(mac如何禁用ipv6) 方法二、添加环境变量(测试没通过)在etc下面的profile文件(后缀忘了,大概是cnf)中增加exportJAVA_OPTS="-Djava.n...

2018-04-02 22:51:12

Mac配置腾讯云服务器SSH秘钥免登陆

之前博主登录ssh往往都是在终端里敲命令:ssh用户名@ip地址,然后输入密码这种方法登录的。这个方式一般情况下是没问题的,但是最近云服务器比较多,需要经常登录管理,所以需要频繁输入密码很麻烦。还有一点是,时间一长就掉线了,又要重新输入密码,体验很不好。所以不得不使用尝试去使用密钥的方式登录。当然ssh秘钥方法登录还有一个特点是安全性,只需要你的电脑访问那台服务器,还不够安

2018-03-17 11:14:43

Mac电脑下使用Socket报错socket抛出Can’t assign requested address解决

最近在学习Socket,在使用UDP组播的时候,死活报错。一直 Can'tassignrequestedaddress 在网上查了几篇文章,得到了解决 解决方法方法一、(测试没通过)禁用IPv6具体方法,可以百度(mac如何禁用ipv6) 方法二、添加环境变量(测试没通过)在etc下面的profile文件(后缀忘了,大概是cnf)中增加

2018-03-17 11:13:36

深入理解java异常处理机制

1.引子try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下面的代码,“猜猜”它执行后的结果会是什么?不要往后看答案、也不许执行代码看真正答案哦。如果你的答案是正确,那么这篇文章你就不用浪费时间看啦。package Test;public cla...

2018-03-17 11:11:19

通过 Socket 实现 UDP 编程 入门

上一篇文章介绍了基于TCP协议的Socket通信,本文介绍基于UDP协议的Socket通信,还是一个用户登录的例子。 UDP协议(用户数据报协议)是无连接、不可靠、无序的。UDP协议以数据报作为数据传输载体。 进行数据传输时,首先要将要传输的数据定义成数据报(Datagram),在数据报中指明所要达到的Socket(主机地址和端口),然后再将数据报发送出去。相关操作类:Datag...

2018-03-17 10:33:23

通过 Socket 实现 TCP 编程入门

这里我们通过一个用户登录的例子来学习基于TCP协议的Socket通信。 Socket通信模型  Socket通信步骤 ServerSocket构造器和成员方法1、ServerSocket构造方法 2、ServerSocket成员方法 Socket构造器和成员方法1、Socket构造器 2、Socket成员方法 一个服务端和支持多个客户端的对话demo1、server.java...

2018-03-17 10:32:31

SpringMVC+Spring Data JPA实现增删改查操作

这是博主在巩固Spring+SpringMVC+SpringData JPA 时,做的一个demo。后面的开发也会继续以这个为基础。效果图预览地址:http://demo.liuyanzhao.com/SpringMVC_CURD/admin/user/list涉及技术1、Spring2、SpringMVC3、SpringData JPA4、文件上传(图片上传实时预览)5、Bootstrap...

2018-03-17 10:29:21

Java项目部署到云服务器最简单的方法

一个简单的Java项目部署到云服务器一般需要三步第一步、在本地开发好项目,然后打包,如war文件第二步、配置云服务器环境,如安装java环境,Tomcat服务器,MySQL数据库等第三步、将打包好的项目丢到Tomcat服务器中,导入数据库 本文将介绍一种最为简单的方法来部署和管理你的项目。一、购买云服务器和安装系统云服务器可以在阿里云或者腾讯云购买,一般也不贵,学生认证的话,大家1...

2018-03-17 10:26:04

js 里不能使用${pageContext.request.contextPath}解决方案

在 JSP 页面中通常我们使用 ${pageContext.request.contextPath}来获得当前项目的根目录。但是我们在js文件里是无法使用这个。function checkUsername() {    $.ajax({        async: false,        type: "POST",        url: '/admin/user/isUsernameE...

2018-03-17 10:25:13

SpringMVC+Spring Data JPA +Bootstrap 分页实现和模糊查询分页

本文将介绍使用 SpringMVC +SpringData JPA 实现分页功能。SpringDataJSP里面一个一个Pageable的类可以帮我们实现分页,非常好用。先看效果图用户列表分页 用户查询(根据用户名,昵称,email,个人主页,手机号)模糊查询分页  如果是首页不显示上一页,如果是尾页不显示下一页。 分页的API使用SpirngData JPA 的Page替...

2018-03-17 10:24:21

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!