Skip to content

Instantly share code, notes, and snippets.

View gexiangdong's full-sized avatar
🏠
Working from home

GeXiangDong gexiangdong

🏠
Working from home
View GitHub Profile
import SwiftUI
struct ContentView: View {
var body: some View {
NavigationView{
VStack{
Text("Hello, Home!")
.padding()
NavigationLink(destination: ChildView()) { Text("go to child view") }
@gexiangdong
gexiangdong / CreateMono.java
Created October 24, 2020 06:09
SpringGateWay中处理请求的几个例子
// create a Mono that just return an empty list
Mono<List> mono = Mono.create(
(callback) -> {
callback.success(Collections.emptyList());
}
);
@gexiangdong
gexiangdong / RotateImage.java
Created November 2, 2019 04:25
Rotate a BufferedImage
public BufferedImage rotateImage (BufferedImage img, int n) {
int w = img.getWidth();
int h = img.getHeight();
BufferedImage bImg = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
bImg.getGraphics().drawImage(img, 0, 0, null);
int l = (int) Math.ceil(Math.sqrt(w * w * 1.0 + h * h));
double rotationRequired = Math.toRadians (n);
@gexiangdong
gexiangdong / HttpGet.java
Created April 24, 2019 10:03
服务器返回4xx等时,读取responsebody
import java.io.*;
import java.util.*;
import java.net.*;
public class HttpGet{
public static void main(String[] argbs) throws Exception{
String url = "http://localhost:8080/";
@gexiangdong
gexiangdong / DynamicCompiler.java
Created April 4, 2019 03:04
Java动态编译并通过反射执行
import java.io.File;
import java.lang.reflect.Method;
import java.net.URI;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.Arrays;
import javax.tools.JavaCompiler;
import javax.tools.JavaFileObject;
import javax.tools.SimpleJavaFileObject;
@gexiangdong
gexiangdong / README.md
Last active March 31, 2019 01:06
Java打印方式汇总

实现Java打印功能有3种方式

javax.print.PrintService

使用javax.print包下的类来打印,可以打印文档,PDF等等文档

Doc doc = new SimpleDoc(new FileInputStream("tobeprint.pdf"), DocFlavor.BYTE_ARRAY.PDF, null);
PrintService ps = PrintServiceLookup.lookupDefaultPrintService();
DocPrintJob job = ps.createPrintJob();
@gexiangdong
gexiangdong / README.md
Last active April 11, 2024 10:04
JWT token的生成和解析

创建和解析JWT,可以使用如下依赖:

  <dependency>
    <groupId>com.auth0</groupId>
    <artifactId>java-jwt</artifactId>
    <version>3.3.0</version>
  </dependency>
@gexiangdong
gexiangdong / README.md
Last active July 2, 2023 12:21
CSS中用SVG图片做背景图

用CSS把SVG图片显示为背景图,可分为2种写法:

  1. 单独的.svg文件,css里用 background-image: url('xx.svg'); 去调用
  2. 使用url的data属性,把svg文件合并到css中

第2种写法直接把svg的xml内容拷贝到css中,有些浏览器会识别不出来,这是由于写法不规范造成的。 规范的写法把svg内容放到css内时需要encode,有两种encode方式: base64 和 URLEncode

base64

@gexiangdong
gexiangdong / README.md
Last active March 3, 2019 01:03
Character.isLetterOrDigit 无法判断一个字符(可能是中文)是否是字母或数字

判断一个字符是否是字母或数字,最原始的办法可以去比较是否在 0-9, a-z, A-Z 之间。这样写代码稍稍有点长。

char c;
...
if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <== 'Z') || (c >= '0' && c <= '9')){
}

发现 Character 类有一个 isLetterOrDigit(char ch)方法,看名字似乎是解决这个问题,但试用一下发现 / \ . 等标点可以返回false,但遇到中文会返回true。

@gexiangdong
gexiangdong / MyClass.java
Last active February 13, 2019 10:44
动态继承一个类/抽象类(不是接口),(动态实现接口参照https://gist.github.com/gexiangdong/f7536a8d86a631b1c391acf13d334a90
/**
* 被创建的类的例子
*/
public class MyClass {
private String name;
public String getName() {
return name;
}