JAVA-and-J2EE
页面展示HTML的原代码不解析
星期六, 十一月 7th, 2020 | html5, JAVA-and-J2EE | 没有评论
1.页面需要展示原文本,不需要解析,但是碰到有 html标签的部分需要注意
2.使用如下几种方式
2.1 使用 xmp标签 现在在html5中已经废弃,不建议再使用但是也最简单,无需转化
<xmp> 这里的代码将原样输出: <script>这里是脚本</script> </xmp> |
2.2 使用 code 标签或者 pre标签,需要替换尖括号对应的转义符
如下转义即可
var info= "<script>这里是脚本</script>"; //替换一个 info = info.replace('<', '<').replace('>', '>'); //全局替换 //g是重点,如果替换的为‘/’,需要转义,吧/</g替换为'/\//g' info = info.replace(/</g, '<').replace(/>/g, '>'); |
<code> 这里的代码将原样输出: <script>这里是脚本</script> </code> <--pre> 这里的代码将原样输出: <script>这里是脚本</script> <--/pre> |
2.3 使用 textarea标签
<textarea> 这里的代码将原样输出: <script>这里是脚本</script> </textarea> |
Lombok注解的类在eclipse下寻找getter/setter调用的办法
星期一, 十一月 2nd, 2020 | JAVA-and-J2EE | 没有评论
现在用Lombok已经是很普遍了,这里不去争好不好用,只解决个人遇到的不方便之处.
stackoverflow上对应的解决方法原文地址:
https://stackoverflow.com/questions/42644923/eclipse-with-lombok-search-for-getter-and-setter-usages
1.在面板处开启 outline 的选项,可以看到对应的 get和set方法,已经支持 @Setter 和@Getter 、@Data注解
2.右键 选择 “Open Call Hierarchy” 即可看到调用的情况
Right-click on the method in the Outline view, and use “Open Call Hierarchy”.
An other way to do it is to right-click on the annotation (@Setter for instance), and use “Open Call Hierarchy” on it
Map不同实现对null值的限制不同
星期五, 十月 23rd, 2020 | JAVA-and-J2EE | 没有评论
Map不同实现对null值的限制不同,罗列如下:
类 | key | value | 线程安全 |
---|---|---|---|
HashTable | 不可为null | 不可为null | 线程安全 |
ConcurrentHashMap | 不可为null | 不可为null | 线程安全 |
TreeMap | 不可为null | 可为null | 线程不安全 |
HashMap | 可为null | 可为null | 线程不安全 |
HashTable由于实现上使用key的hashcode()方法,所以key不能为null。ConcurrentHashMap需要使用key的hashcode(),TreeMap使用key的compare()方法排序,所以key不能为null。
vertx升级到3.9.2的mysql client的变动
星期五, 十月 2nd, 2020 | JAVA-and-J2EE | 没有评论
0. 应用有半年多没有动了,今天发现接口的数据丢失,未查到原因,重启应用解决,后续可能会放弃此应用 待定,先升个级
1.vertx升级到3.9.2 发现编译出错 调整修改
更多使用文档参加:https://vertx.io/docs/vertx-mysql-client/java/
client .query("SELECT * FROM users WHERE id='sara'") .execute(ar -> { if (ar.succeeded()) { RowSet<Row> result = ar.result(); System.out.println("Got " + result.size() + " rows "); } else { System.out.println("Failure: " + ar.cause().getMessage()); } // Now close the pool client.close(); |
guava-retrying延迟重试使用
星期三, 九月 30th, 2020 | JAVA-and-J2EE | 没有评论
0.很好用,但还是放弃使用了,主要guava依赖的版本原因,在guava-29和28版本中无法使用
项目git地址:https://github.com/rholder/guava-retrying
1.用法的几个类 列出如下:
<dependency> <groupid>com.github.rholder</groupid> <artifactid>guava-retrying</artifactid> <version>2.0.0</version> </dependency> |
表重命名快速指令
星期日, 九月 20th, 2020 | JAVA-and-J2EE | 没有评论
表重命名sql指令:
RENAME TABLE t_user TO t_user_20200920; RENAME TABLE data_user TO t_user; |
启用远程调用Docker下应用selenium-chrome服务
星期五, 九月 18th, 2020 | JAVA-and-J2EE, linux | 没有评论
1.服务调用本地的chromedriver驱动部署到服务器上比较麻烦,借助docker可以快速使用和独立
docker-selenium 的git地址:https://github.com/SeleniumHQ/docker-selenium
如果未安装docker可以一键安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun #或者:国内源速度快点 curl -sSL https://get.daocloud.io/docker | sh ##启动docker sudo systemctl start docker |
docker run -d -p 4444:4444 -v /dev/shm:/dev/shm selenium/standalone-chrome:4.0.0-alpha-7-prerelease-20200907 |
2.启用chrome的支持cdp功能远程驱动
› Continue reading
freemarker循环、日期格式化、常用汇总
星期六, 八月 15th, 2020 | JAVA-and-J2EE, spring-boot | 2 Comments
首先权威地址官方地址:https://freemarker.apache.org/
中文版使用手册地址:http://freemarker.foofun.cn/toc.html
1.日期格式及解决日期为NULL报错的写法
${(user.birthday?string("yyyy-MM-dd"))!} //--或者-- ${(user.birthday?string("yyyy-MM-dd"))!'--'} |
2.判断对象是否存在再进行操作
<#if user?? >「${user.name }」<#else>无</#if> |
3.循环及计数使用
<#list listUser as user> <#if user?? >「${user.name }」<#else>无</#if> <#if user?counter gt 3 > ${user.email} </#if> </#if> |
防止selenium和ChromeDriver的JS检测java版处理
星期一, 七月 27th, 2020 | JAVA-and-J2EE, linux | 没有评论
启用最新版本的 selenium-java的4.0.0-alpha-X版本即可支持CdpCommand抵挡 webdriver的检测为true
maven如下:
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java --> <dependency> <groupid>org.seleniumhq.selenium</groupid> <artifactid>selenium-java</artifactid> <version>4.0.0-alpha-6</version> </dependency> <dependency> <groupid>com.google.guava</groupid> <artifactid>guava</artifactid> </dependency> |
对应java代码如下
› Continue reading
springboot的瘦身部署计划lib依赖包分离
星期二, 六月 30th, 2020 | JAVA-and-J2EE, linux | 没有评论
1.springboot目前都趋向于使用jar部署,但是问题是每次打包的
fatjar都比较大,有50M左右,发布上传比较耗时,尤其是服务器在海外的情况更是感觉浪费时间
2.把依赖的lib包剥离出来,单独依赖减少每次的打包大小量
注意:若有新增加的依赖或者调整依赖库的版本需要重新调整lib,切记.
3.开始方法:正常打包 获取BOOT-INF下的lib依赖jar包
mvn clean install
› Continue reading
Search
相关文章
热门文章
最新文章
文章分类
- ajax (10)
- algorithm-learn (3)
- Android (6)
- as (3)
- computer (85)
- Database (30)
- disucz (4)
- enterprise (1)
- erlang (2)
- flash (5)
- golang (3)
- html5 (18)
- ios (4)
- JAVA-and-J2EE (186)
- linux (143)
- mac (10)
- movie-music (11)
- pagemaker (36)
- php (50)
- spring-boot (2)
- Synology群晖 (2)
- Uncategorized (6)
- unity (1)
- webgame (15)
- wordpress (33)
- work-other (2)
- 低代码 (1)
- 体味生活 (40)
- 前端 (21)
- 大数据 (8)
- 游戏开发 (9)
- 爱上海 (19)
- 读书 (4)
- 软件 (3)