JNA使用总结

这两天工作有一项任务,需要用 java 去调用 c 语言编写的 SDK,用到了 JNA,用的过程中遇到了些问题,在这里总结下使用方法,记录下。 分为几个步骤:编写一个继承了 Library 的接口,在类中声明接口,编写结构体(如果有需要),调用接口。 1. 编写 Library 接口   在接口中声明的方法要和 SDK 的函数对应上,方法名要对应函数名。   参数的话,基本类型一样,指针对应 Pointer、XxxByReference,结构体的对应需要自定义 java 类。详情可以参见 ht
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

html 表

例: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style> #clock{ width: 400px; height: 400px; border: 1px solid red; border-radius: 50%; /*分 秒 相对表的定位*/ position: relative; } #minute{ width: 10px; height: 100px; background: bla
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

软件构造 第三章 第二部分

设计规约 概述:方法的规约、前置/后置条件、操作式规约、规约的强度及其比较、如何设计好的规约 一个完整的方法 一个完整的方法包括规约spec和实现体implementation; "方法"是程序的积木,它可以被独立的开发、测试、复用; 使用“方法”的客户端,无需了解方法内部如何工作,这就是抽象的概念; 参数类型和返回值类型的检查都是在静态类型检查阶段完成的。 什么是规约,为什么需要规约 为什么要有设计规约 很多bug来自于双方之间的误解;没有规约,那么不同开发者的理解就可能不同 代码惯例增加了
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

java ArrayList remove

packimport java.util.ArrayList; import java.util.List; public class ArrayListRemove { public static void main(String[] args) { List<String> list=new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c")
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

关于Spring Boot你不得不知道的事--Spring Boot的基本操作

1 Pom文件 1.1 spring-boot-starter-parent 表示当前pom文件从spring-boot-starter-parent继承下来,在spring-boot-starter-parent中提供了很多默认配置,可以简化我们的开发。 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

Istio Routing极简教程

官网文档: https://istio.io/docs/reference/config/networking/#VirtualService 在学习像Istio这样的新技术时,看一下示例应用程序总是一个好主意。 Istio repo有一些示例应用程序,但它们似乎有各种不足。 文档中的BookInfo是一个很好的示例。 但是,对于我而言,它太冗长,服务太多,而且文档似乎专注于管理BookInfo应用程序,而不是从头开始构建。 有一个较小的helloworld例子,但它更多的是关于自动伸缩而不是
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

通过jedis连接redis单机成功,使用redis客户端可以连接集群,但使用JedisCluster连接redis集群一直报Could not get a resource from the pool

一,问题描述: (如题目)通过jedis连接redis单机成功,使用JedisCluster连接redis集群一直报Could not get a resource from the pool 但是使用redis客户端可以连接集群(我使用的redis desktop manager) 在java中通过jedis连接redis单机也成功,但使用JedisCluster连接redis集群一直报Could not get a resource from the pool, 我以命令行方式操作是没问题
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

thinkphp3.2.2 没有定义数据库配置

出现这个问题,温习下tp配置多个数据库 <?php return array( //默认数据库 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'localhost', // 服务器地址 'DB_NAME' => 'thinkphp', // 数据库名 'DB_USER' => 'root', // 用户名 'DB_PWD' => 'root', // 密码 'DB_PORT' => 3306, // 端口 'DB_PREFIX' => 'think_'
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

计算机网络复习总结(二)

计算机网络复习总结(二) 第二章 物理层 物理层的主要任务: 确定与传输媒体的接口有关的一些特性,即: 机械特性:指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等等。 电气特性:指明在接口电缆的各条线上出现的电压的范围。 功能特性:指明某条线上出现的某一电平的电压表示何种意义。 过程特性:指明对于不同功能的各种可能事件的出现顺序。 信道:用来表示向某一个方向传送信息的媒体。 单向通信 :又称单工通信,即只能有一个方向的通信而没有反方向的交互。 例:无线电广播、有线电广播、电视广
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

[类欧几里得] Maximum Sine

题目描述 给定整数a,b,p,q,设f(x)=abs(sin(p/q*πx)) 找到最小的可能的整数x使f(x)最大 且 a<=x<=b 题解 https://www.cnblogs.com/gczdajuruo/p/11008123.html https://www.luogu.org/problemnew/solution/P5170 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ll;
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

assembly|reads to contig|contig to scaffold|coverage|depth| tandem repeats

(组装方面):SOAPdenovo ,因为采用de Bruijn graph algorithm算法和stepwise strategy ,所以排错能力高,所以我们获得高质量数据。 de Bruijn graph algorithm算法???? reads到contig :多个reads比对,比对后reads之间有重叠(overlap)区,拼接获得的序列称为Contig。 contig到scaffold:把mate-pair得到的用于确立位置的短reads和insert组合,将原本孤立的con
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

MMM的一周计划 准备公告

(19.6.17——19.6.22) 目前本周还没有过去所以还会更新 第0周 目前博客更新暂定于 [题目难度颜色见洛谷] 1.绿题以上绝对更新 2.黄题可能更新 3.其他估计不会有更新 准备工作 1.本周写了什么 6.18 洛谷 P1403 [AHOI2005]约数研究 P2858 [USACO06FEB]奶牛零食Treats for the Cows [暂时没有更博客] 6.19 洛谷: P1140相似基因 [暂时没有更博客] P5019铺设道路 P5020货币系统 P2196挖地雷 P23
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

前端开发入门到进阶第三集【锚点滚动动画】

https://www.jb51.net/article/96574.htm
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

Day 24 面向对象进阶2

目录 面向对象进阶2 类的封装 为什么要封装 两个层面的封装 类的property特性 什么是property特性 装饰器 类与对象的绑定方法和非绑定方法 绑定方法 面向对象进阶2 类的封装 为什么要封装 封装数据的主要原因:保护隐私 封装方法的主要原因:隔离复杂度 两个层面的封装 封装分为两个层面 第一个层面:创建类和对象会分别创建二者的名称空间,我们只能用类名.或者对象名.的方式去访问里面的名字,这就是一种封装,对象可以拿到类名称空间中的名字,但是类没法拿到对象名称空间中的名字 第二个层面
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

(转)非常好的WebApi入门文章

如何在VS中创建基于.NET的后端应用程序,该应用程序使用C#语言从Web API中提取。让我们开始吧! 为服务器后端逻辑选择语言的问题是几乎每个开发人员最重要的问题之一,特别是对于初学者。目前已经有很多不同的语言:Java,.NET(C#,VD),Ruby,Python,Perl,JavaScript(Node.js),Go,C ++。 除了这些语言的语法特征外,还有许多其他问题/问题,例如扩展的可能性,不同类型数据库的使用,高学习曲线,容错要求,大量数据等等。上。 哪种语言最受欢迎?你应该
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

安装VMware Tools和设置屏幕

在虚拟机窗口的虚拟机-安装VMware Tools,点击安装,直到安装完成,出现以下界面 在主文件夹中新建VM文件夹,将VMware Tools中的VMwareTools-10.0.10-4301679.tar.gz复制到VM文件夹。然后选择提取到此文件中,如图 打开终端:cd vm ls cd vm.......-distrib 输入 sudo ./vmware-tools-distrib/vmware-install.pl ,回车键,开始安装 不断YES即可直到安装完成。 接下来,设置共享
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

在腾讯云centos7.2上安装配置Node.js记录

应为爱好前端所以打算在腾讯云服务器上安装JavaScript引擎Node.js,下面是安装步骤: 安装准备: 下载node.js的.tar.xz安装包:https://nodejs.org/dist/v10.16.0/node-v10.16.0-linux-x64.tar.xz 安装文件上传工具FileZilla(你也可以直接在服务器上输入 wget https://nodejs.org/dist/v10.16.0/node-v10.16.0-linux-x64.tar.xz 命令下载) Xs
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

产品经理之路(六)

本文简述产品经理的工作方法及应用之商业需求分析。 一、需求采集 1、需求来源渠道 ①公司内部(老板、其他部门或同事) ②产品经理自己(策划、挖掘) ③公司外部(用户、客户、伙伴) 2、需求获取方式 ①业务发展的要求 ②用户调查结论 ③用户反馈分析 ④产品数据分析 ⑤竞品分析 3、需求管理表(要素) ①来源渠道 ②需求描述 ③需求性质:优化、新增、bugfix、idea ④需求评述 ⑤备注:提出人、提出时间 ⑥后续计划:排期、留存、暂缓、合并、搁置 4、产品需求池 汇总管理(部门级别) 二、需求
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

Android Studio三种运行方法

  一、使用内置模拟器。   二、使用下载的模拟器(mumu等)。   三、使用USB手机调试。
分类: 其他 发布时间: 06-20 19:56 阅读次数: 0

发布程序加密防反编译

发布程序前一定要做加密,不然会被破的体无完肤。推荐几款加密产品。Virbox Protector Standalone 加壳工具效果:代码加密,防止静态反编译加密技术:代码混淆/虚拟化/代码加密/智能压缩/使用体验:提供demo版和正式版,加密操作简单,直接对dll或者exe加壳保护。对java的jar包/class文件、python的pyc文件等也有加密方案。新版本支持批量加壳。支持的开发语言比
分类: 企业开发 发布时间: 06-20 19:55 阅读次数: 0