- 博客(13)
- 收藏
- 关注
原创 阿里云jenkins项目构建
git地址:https://gitee.com/skd-wang-ming/sacffold.git。密码位置: /root/.jenkins/secrets/initialAdminPassword。阿里云系统默认只有jre,没有jdk,但是maven执行需要jdk,所以需要重新安装jdk。打开浏览器访问:http://localhost:8080。oracle官网下载对应操作系统的jdk。下载LTS(长期稳定版)最新war包。下载最新版Binary tar.gz。默认8080端口启动。
2023-07-31 17:57:35
165
1
原创 注解的种类及应用
文章目录普通注解@override元注解(meta-annotation)@Document@Retention@Target@Inherited注解的应用与反射普通注解@override@Target(ElementType.METHOD)@Retention(RetentionPolicy.SOURCE)public @interface Override {}@interface的作用其实是声明Override是注解,并继承Annonation接口,这个可以从反编译的文件看出。其实所有
2020-07-11 10:51:17
590
原创 byte的长度为什么是-128至127
数值原码补码-128无法表示1000 0000-1271111 11111000 0001-1261111 11101000 001000000 00000000 00001270111 11110111 1111byte数组中存储的数据,都是以补码的形式存在的。
2020-07-07 00:31:19
621
原创 怎样将int转换为byte
一个int占用4个byte,所以需要声明一个4位长度的byte数组public byte[] int2Byte(int i) { byte[] bytes = new byte[4]; bytes[0] = (byte) ((i >> 24)); bytes[1] = (byte) ((i >> 16)); bytes[2] = (byte) ((i >> 8)); bytes[3] = (
2020-07-07 00:30:24
6625
原创 原码、反码、补码、移位、运算符&|
文章目录原码反码补码移位运算符& 、|思考补码的作用为什么负数的补码是原码按位取反再加一?反码的作用应用场景以下均以byte类型存储8位为例原码5 0000 0101-5 1000 0101首位是符号位,0表示正,1表示负反码5 0000 0101-5 1111 1010正数的反码是本身负数的反码是除了符号位,其余位取反;补码5 0000 0101-5 1000 1011正数的补码是本身负数的补码是它的反码加1移位以下出现的二进制都是原码5 <<
2020-07-06 00:37:03
398
原创 各种单例的优缺点
文章目录饿汉式优点缺点懒汉式优点缺点懒汉式加锁优点缺点懒汉式双重检查锁优点缺点静态内部类式优点枚举类优点缺点真的没有缺点吗?常用哪一种?饿汉式public class Singleton { private final static Singleton instance = new Singleton(); private Singleton() { } public static Singleton getInstance() { return in
2020-07-01 01:13:39
306
原创 mysql的隔离级别及死锁
文章目录隔离级别read uncommitted(未提交读)read committed(提交读)serializable(可串行化)隔离级别read uncommitted(未提交读)会出现的问题:一个事物读取到另一个事物未提交的数据比如A、B事物同时开启后,A事物修改了表person,未提交,但是由于是在A事物中, 所以A事物中可以查询到修改后的数据。此时B事物去查询,也可以发现A事物修改后的数据,这就出现了脏读。read committed(提交读)解决的问题:脏读会出现的问题:一个事物
2020-06-28 22:41:40
3533
2
原创 Oracle的PL/SQL:函数、过程、包、触发器
文章目录PL/SQL过程、函数包触发器PL/SQLsql语言只是一种访问、操作数据库的语言,并不能进行程序设计。PL/SQL(procedual Language/SQL)过程化sql语言是oracle在标准sql语言基础上进行扩展后形成的程序设计语言。是一种oracle独有的、支持应用开发的语言。普通的PL/SQL程序都是匿名的,比如:declare id int; name varchar2(10);begin insert into STUDENT (id, na
2020-06-21 19:31:59
315
原创 HTTP报文的主要组成
HTTP报文概念在服务端和客户端交互的媒介就是报文,分为请求报文,响应报文,客户端发往服务端的称为请求报文,相反的称为相应报文。组成如访问www.baidu.com第一行为:方法(method)服务器URL 版本第二行及以后:首部(header),格式均为key: value第一行为:版本 状态码 原因短语第二行及以后:首部(header),格式均为key: value以下均为响应报文的主体(body)方法方法主要是作为一种标识,一种规定。比如get请求,一般就作为获取信息使用
2020-06-11 21:50:46
644
原创 jdk动态代理的最简单demo
文章目录DEMO原理问题DEMOpublic class MyHandler implements InvocationHandler { private Object object; public MyHandler(Object object) { this.object = object; } /** * @param proxy 调用方法的代理实例,被代理的对象 * @param method 调用的方法 * @
2020-06-05 01:15:12
209
原创 mybatis的一级二级缓存原理及具体实现
文章目录一级缓存概念实现原理应用场景二级缓存概念实现应用场景使用其他缓存总结一级缓存概念其实就是将查询出来的数据备份一份,再次需要该数据时,直接从备份数据中取出来,省去了再次查询数据库的时间。创建数据库连接后,会使用到sqlsession对象,调用一个select语句后,返回的结果会存储到一个map中,再次调用该select时,会从map中获取到该数据,不会去从数据库查询。当调用update、delete、insert时,缓存中的数据会被清除。实现同一个sqlsession两次selectp
2020-06-04 01:33:45
180
原创 java反射原理及应用
原理在程序运行过程中,获取实例对象(被new出来的对象)的成员变量信息、方法信息,某些情况也可以修改信息,这个过程其实就是反射。获取对象信息的原理其实就是:每个实例对象都可以使用.getClass()获取对应的Class对象,信息都存储在Class这个对象里边。 String name = new String(); Class<? extends String> aClass1 = name.getClass();通过Class去获取该对象的成员变量
2020-06-04 01:25:02
168
原创 org.postgresql.util.PSQLException: ERROR: operator does not exist: numeric = character varying
1、错误代码: String sql = "select * from CASEDATA where DEADBODYHP = ?"; PreparedStatement prepareStatement = conn.prepareStatement(sql); prepareStatement.setString(1, "1"); prepareStatement.executeQuery();2、原因:在postgres中,CASEDATA表的DEADBODYHP字段类型是nume
2020-05-12 22:51:24
11191
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人