- 博客(16)
- 资源 (3)
- 收藏
- 关注
原创 Spring Boot配置多个DataSource
使用Spring Boot时,默认情况下,配置DataSource非常容易。Spring Boot会自动为我们配置好一个DataSource。如果在application.yml中指定了spring.datasource的相关配置,Spring Boot就会使用该配置创建一个DataSource。如果在application.yml中没有指定任何spring.datasource的相关
2017-09-27 15:11:25 1609
原创 spring boot 中application.properties 介绍及配置
application.properties大家都不陌生,我们在开发的时候,经常使用它来配置一些可以手动修改而且不用编译的变量,这样的作用在于,打成war包或者jar用于生产环境时,我们可以手动修改环境变量而不用再重新编译。spring boo默认已经配置了很多环境变量,例如,tomcat的默认端口是8080,项目的contextpath是“/”等等,可以在这里看spring boot默认
2017-09-27 14:35:48 900
原创 字符串加密解密工具
在写代码中,经常会用到字符串的加密、解密,尤其是用户密码,不能直接出现在代码或者配置中,最好用加密方法进行加密,下面提供一个加密解密工具。package com.zheng.common.util;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;import javax.crypto.*;import javax
2017-09-27 13:10:22 3124
转载 《Effective Java》(26~28)阅读笔记
接着上期继续看本书高质量编码建议26~28条的阅读笔记26.优先考虑泛型引用书中的话“一般来说,将集合声明参数化,以及使用JDK所提供的泛型和泛型方法,这些都不太困难。编写自己的泛型会比较困难一些,但是值得花些时间去学习如何编写”。 当在编写不可避免要使用数组时,可参考以上两种数组和泛型的实现方式。27.优先考虑泛型方法泛型方法即在定义方法的返回值前加上,例如C
2017-09-27 12:49:03 226
转载 《Effective Java》(23~25)阅读笔记
接着上期继续看本书高质量编码建议23~25条的阅读笔记23.请不要在新代码中使用原生态类型 从这条开始涉及泛型相关的点。 从JDK5开始Java新增了“泛型”新特性,例如:List,在这之前则只有List不会限定类型。 如今的JDK版本中还是可以写原生类型,但这会带来隐藏的不安全问题。如果在声明一个列表变量时不使用泛型而使用原生类型,如下:
2017-09-26 21:22:36 169
转载 《Effective Java》(17~22)阅读笔记
接着上期继续看本书高质量编码建议12~16条的阅读笔记17.要么为继承而设计,并提供文档说明,要么禁止使用继承不要过度设计。 面向对象编程,从一开始被洗脑难免在上手写代码时都会首先思考有没有公共方法啊,能不能把两个类抽象成一个父类再继承啊等,慎重使用继承,当要使用继承时一定要在文档注释中写明重写这个方法会给其他方法带来什么影响。书中给出建议如果类并不是为了继承而生,那么这个类
2017-09-26 20:35:20 151
转载 《Effective Java》(12~16)阅读笔记
接着上期继续看本书高质量编码建议12~16条的阅读笔记12.考虑实现comparable接口关于Comparable接口其中只有一个方法——compareTo。此方法和equals有类似之处,不过它所表达的含义相比equals要更多。equals通常是比较两个值是否相等,相等返回true,不相等返回false。compareTo则约定为第1对象若“大于”第2个对象则返回整数,“
2017-09-24 18:53:35 150
转载 《Effective Java》(9~11)阅读笔记
接着上期继续看本书高质量编码建议9、10、11条的阅读笔记9.覆盖equals时总要覆盖hashcode方法如果这个类仅仅是重写了equals方法而没有重写hashCode,那么这个类和基于散列的集合类一起工作时就会出现问题。 首先明确一个概念,两个对象使用equals返回true,则它们的hashCode也一定相等;如果两个对象的hashCode相等,则它们的equ
2017-09-23 23:14:31 238 1
转载 《Effective Java》(7~8)阅读笔记
接着上期继续看本书高质量编码建议7、8条的阅读笔记7.避免使用最终方法此处所谓的终结方法指的就是finalize()方法,这个方法可能对于从C++转向Java的新手感到混淆,因为在C++中有一个“析构函数”,析构函数所代表的意义就是在这个对象垃圾回收前所做的一些动作例如资源的关闭等。对于Java来说垃圾回收是自动的,或者称之为不可预知或不可控,尽管finalize方法所代表的也是在
2017-09-21 13:20:24 182
转载 十大Intellij IDEA快捷键
Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论。每个人都有自己的最爱,想排出个理想的榜单还真是困难。以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧。1 智能提示Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,
2017-09-21 11:51:26 459
转载 《Effective Java》(5~6)阅读笔记
接着上期继续看本书高质量编码建议5、6条的阅读笔记第5条:避免创建不必要的对象 此条目下书中提到“当你应该重用现有对象的时候,请不要创建新的对象”。 最为突出的例子莫过于字符串常量的创建,众所周知String字符串有两种创建方式。 String str=“hello"; String str = new String("hello");
2017-09-19 12:29:22 266
转载 《Effective Java》(3~4)阅读笔记
接着上期继续看本书高质量编码建议3、4条的阅读笔记3.用私有构造器或者枚举类型强化singleton的属性书中的此条目下,我总结出来认为最有价值的是“能被序列化的线程安全的类,被序列化后是否还会是单例”。单例模式几乎人人会写,例如上面提到的勤加载(饿汉式)的单例模式: public class Instance{ private static
2017-09-18 19:06:27 294
转载 《Effective Java》(1~2)阅读笔记
Java经典书籍《Effective Java(第二版)》相信大家都看过,此书共有78条关于编写高质量Java代码的建议,这里是通俗易懂地讲解,会持续全部更新完78条,希望大家每天读一篇,一起学完这78条,相信可以写出高质量代码。1.考虑静态工厂方法代替构造器通常情况下我们会利用类的构造器对其进行实例化,这似乎毫无疑问。但“静态工厂方法”也需要引起我们的高度注意。 什么是“静
2017-09-18 12:54:10 387
原创 Bootstrap Modal-静态框使用及遇到的问题
Bootstrap Modals 是使用的定制的JQuery 插件创建的,下面是使用方法:1.1:导入对应的js。css,需要导入bootstrap.js或者bootstrap.min.js文件,bootstrap的前提是jQuery,所以我们要导入jquery.min.js对应导入代码:1.2:具体用法有2种1、通过 data 属性:在控制器元素(比如按
2017-09-07 13:00:44 4283
原创 JPA 使用
前言 在还没有接触到Spring之前,我写数据库操作都是徒手写JDBC,各种连接的建立,结果集的处理、连接的释放、异常的处理。虽然自己有了固定的模板,但是还是很繁琐。随后用了spring中JdbcTemplate,spring自动帮我处理了jdbc连接的建立和释放,已经所有可能的异常捕获,我只需要关注的是结果集的处理,这个极大的提高的我开发效率,而且jdbcTemplate 所有的sql都
2017-09-03 21:23:02 244
原创 nginx 安装、基本命令-和负载均衡
linux 下安装nginx 这里用yum命令,yum install nginx 一行代码搞定 安装好后直接启动 service nginx start 如果出现:nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol) 问题
2017-09-01 14:25:59 1241
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人