- 博客(38)
- 收藏
- 关注
原创 解决 Android Studio 不显示自定义 gradle 任务的问题
File->Setting->Experimental 中,勾选 Configure all Gradle tasks during Gradle Sync (this can make Gradle Sync slower)不管怎么同步,把鼠标点碎了也无法在 gradle 窗口中找到这个任务,并且会发现在 gradle 窗口中的任务列表非常少。原因:新版 as 默认把自定义任务和其他非重要任务隐藏了。很奇怪为什么谷歌把这个功能在新版本中默认取消了!
2024-12-17 05:54:40
496
原创 导入 OpenCV for Android 的技巧
3、示例中有很多 opencv 的使用,有十几个子应用。如果能成功运行起来任意一个应用,则说明 sdk 可以正常工作。与 samples 平级的有一个外部项目被引进,就是 sdk 文件夹,在 setting.gradle中通过 include 引进的名称为 opencv 的项目。5、在 setting.gradle中通过 include 引进的名称为 opencv 的项目下,打开build文件夹,路径应该是:\build\outputs\aar 中生成的一个arr文件。2、同步项目,解决所有的适配问题。
2024-11-28 10:06:44
338
原创 mongodb 在 Windows 环境下迁移数据库的问题
网上众说纷纭,什么防火墙、安全配置,都不对,是因为如果 mongodb 服务器开启了用户验证,则客户端登录时,一定要指定验证的数据库,而 compass 工具是默认内置指定了验证数据库,所以不需要手动指定,而使用命令行工具时,则必须指定。Windows 安装后,使用管理员身份打开 cmd 命令窗口,导航到安装目录的 bin 目录下,如果是默认安装的话,应该是:C:\Program Files\MongoDB\Tools\100\bin。前者用于备份,后者用于恢复,两者合起来使用,就实现了数据库迁移。
2024-09-03 18:28:05
645
原创 Apache + Tomcat + ajp 协议配置
根据经验,ajp 大约可以提高 20% 的运行效率,但是如果你考虑到以后更换前端代理服务器的话,就不要使用 ajp 协议了,http 协议可能是最好的选择,因为更通用。前端 web 服务器使用 apache 的好处就不在赘述,这里重点讲一下如何使用 ajp 协议和 http 协议与后端 tomcat 服务器通信的区别。ajp:使用二进制进行通信,拥有极高的效率,同时也会耗费更多的系统资源;http:使用超文本与 tomcat 通信,效率略差,但是灵活性更高;
2024-08-27 22:00:01
633
原创 Tomcat Manager 上传 war 包大小的限制
网上基本上都是让修改 tomcat 配置 server.xml 文件中的 Connector 节,包括 chatGPT 也是这个建议,其实是不对的。manager 默认限制 50 m,超过这个大小会引发异常。
2024-08-27 17:06:47
359
原创 Spring Security 配置 CORS 失效的问题
但是一旦项目引用了 security 后,却并不是那么容易了,不管你怎么配置,总是不生效,无法对指定的域名和源放行,也就是说,你想让你的目标域名可以使用js调用你的应用,却发现总是被 拒绝,报cors异常。看清楚了,必须把 加上,否则,corsFilter 过滤器是不起作用滴!1、首先确保 spring mvc + security 可以正常运行;
2024-08-05 11:21:51
593
原创 SpringMVC 项目中使用@Profile注解的极简教程
其次,没有使用 @Profile 注解的类在任何时候都有效,也就是说,不管 web.xml 配置文件中,如何修改 spring.profiles.active 的值,一个类或者方法,没有使用 @Profile 注解,它总是有效的。比如你有一个控制器类 TestController,用于在 测试环境下的使用,一旦被部署人员不小心部署到正式环境下,其实是非常危险的一件事。如果你想让你的类或者一个方法只在特定的环境下有效,那么可以使用 @Profile 注解来实现。
2024-07-28 11:49:55
239
原创 Ebean, 被国人冷落的 ORM 框架(保姆级教程)
结论:Ebean 是一个号称轻量级的 ORM 对象,但是可以做任何 Mybatis 做的事情,也可以做 Mybatis 做不了的事情。它不需要mybatis繁琐的配置,也不需要hibernate死板的标准 操作,但是却可以实现上述二者的效果。配置 ebean 的扫描路径,需要 ebean 自动化管理的实体类等,需要在这个目录下。Ebean,是一个与mybatis、hibernate同类型的orm框架,但是却极为简洁、高效。第六步:在上述配置的路径下,新建一个实体类 User ,用于测试。
2024-07-24 13:11:39
917
原创 Ubuntu 环境下 vsftpd 设置前端路由器
在vsftpd的配置文件中添加如下内容,以启动被动模式(穿透 NAT 和防火墙,必须使用被动模式)2、外网端口 10000-10100,映射到内网 ip 的 10000-10100。首先确保在局域网环境下通过 filezilla 可以顺利连接使用 vsftpd。此处第 2 点特别重要,因为是一个端口范围的映射,和普通映射不太一样。1、外网端口 2421 映射到 内网 ip 上的 21 端口。在 NAT 路由器上,设置端口映射。
2024-07-16 16:40:18
146
原创 宿主机无法访问 Docker 容器的端口问题(8009)
docker 开通端口。容器启动后,得知此容器的IP地址为 172.17.0.2 ,查看该地址的 8080 端口,可以正常访问,因此,在 apache 的虚拟机配置中。但是当 tomcat 配置了 ajp 连接器以后,见上述《配置一》,却无法访问 ajp://172.17.0.2:8009/sns/ ,经过精确诊断,是 8009 端口不通。这在普通的主机中配置是没问题的。可以顺利路由到容器的 web 应用,即。
2023-12-05 16:24:08
1230
原创 Apache 反向代理 Tomcat 会话保持问题
每发起一次请求,在 web 应用中的 Session Id 都会变化。也就是说,每请求一次都会产生一个会话对象 Session。中保存的值,经过 debug 发现,每一次请求,都会生成一个新的 session 对象。针对一个 tomcat ,如果要保持 session 对象,正确的做法是配置 ProxyPassReverseCookiePath。这个配置,在项目 myweb 中保存的 session 的值,当下一次请求时,将无法获取这个 session。
2023-11-30 23:42:28
633
原创 Tomcat 解析 html 关键步骤
这是部分的内容在 tomcat 安装目录下的 conf 文件夹下的 web.xml 文件中。有人抬杠说这个 web.xml 文件中没有我说的上述内容,那么就直接复制粘贴。记住,是 tomcat 的 conf 文件夹中的 web.xml 配置文件,不是项目的配置文件。1> 把 这一节的注释取消。记住,是下面这一大段的注释。4> 把下面 的注释取消。3> 把下面 这一大段的注释取消。2> 把下面这一段的注释取消。
2023-11-28 15:46:49
635
原创 VMware 安装 Ubuntu 后,虚拟机不能上网的解决方案
有一个ip地址为 127.0.0.1 的那个网卡是虚拟机自用的回环网卡,千万不要设置那个网卡。在上面图示中,“桥接到”列表框中,选择一个你的宿主机中能够访问互联网的那个网卡。所以,默认值虽然是“自动”选择,但是有时候会选择一个无法访问互联网的网卡,导致一切努力化为泡影。在此过程中,如果有错误产生,可能是刚才配置文件中有语法错误,仔细查看错误信息,对症下药。确定保存后,在 Ubuntu 中,使用 sudo curl -I www.eagsen.com 命令验证是否可以获得鹰信首页的返回值。
2023-11-27 15:23:09
1147
原创 鹰信 Session 共享方案
三、业务系统把获取到的 session id 存入 cookie,在请求业务系统时,判断 cookie 的值,从该值中取出验证成功的 session id,如果存在则放行,不存在则验证失败。二、ucenter 后台调用 eagsen service bus 登录成功后获取 session id。同时,eagsen service bus 把该 id 存入内存数据库。一、业务系统判断是否登录,未登录跳转 ucenter 呈现登录页面。
2023-10-31 15:16:37
60
原创 Xamarin.iOS 创建 MAUI 项目,ScrollView 滚动条不工作的问题解决
网上说了很多方案,什么计算高度、调用 ForceLayout 方法等,都是坑。在百试不灵后,尝试 Home 键退回桌面,再进入 app 发现,ScrollView 居然正常了。也就是说,ScrollView 已经自适应了高度,只是视图没有刷新。于是调用页面级别的 InvalidateMeasure 方法后,成功实现了视图刷新。在 cs 代码中对 Label lblText 赋值一个大文本以后,外层的 ScrollView 不能显示全部内容,也就是说 ScrollView 无法自适应子控件内容变化后的高度。
2023-10-11 17:37:32
300
2
原创 嫁入豪门的 Xamarin,微软无奈的跨平台方案
但是毕竟是“老牌”的软件公司,常言道:瘦死的骆驼比马大,微软嗅到了开发市场的需求,那就是 Android 和 iOS 渐行渐远的应用开发路线。毫不客气地说,VS 6.0 就是小品界的赵本山,篮球界的乔丹,无厘头界的周星驰。就连微软的 CEO 鲍尔默也看走眼了,搞了很多“硬”的产品,一个老牌的“软”件公司,总想搞新潮的“硬”件,因此被年轻的老盖茨给“劝退”了。然而,“微软”“微硬”都不好使,一代王者沉浸在桌面软件的辉煌中不能自拔,把手机的操作系统做的像缩小版的 Windows 桌面系统,注定被移动市场淘汰。
2023-10-11 17:22:48
133
原创 Docker 使用 Dockerfile 创建镜像及 push 到远程仓库
denied: requested access to the resource is denied大功告成!“E:\docker\Dockerfile”是 Dockerfile 文件所在的文件夹,“my-ubuntu”是新建的镜像的名字,最好加上 tag,最终如下: E:\docker\Dockerfile> docker build -t my-ubuntu:9-27 . (最后有个点)
2023-09-27 17:32:05
1097
原创 Apache 配置 ssl 后,tomcat “代理与反向代理”不能工作的解决办法
很显然,配置二是根据已有的配置一,由 certbot 自动产生的。但是,却无法正常工作,如果我们访问 https://app.mydomain.com , 浏览器的地址栏却跳转到了 https://app.mydomain.com/app ,这显然不符合我们的预期。这时,通过 http://app.mydomain.com 可以正常访问项目,且地址栏中的 url 地址也没有发生任何跳转,仍然是 http://app.mydomain.com ,这是符合预期的。同理,我们给这个配置命名为:“配置二”。
2023-09-22 10:18:26
278
原创 鹰信 AES 加密 / 解密 SDK 授权使用方法
鹰信使用 AES 128位加密算法,在运行鹰信 Web 应用程序的服务器上实现“一机一码”的方式进行授权,所有未经授权的机器,无法获取明码的数据信息。为满足 《中华人民共和国数据安全法》的要求,对用户敏感信息进行加密保存,鹰信认真履行数据安全的法律义务,对所有涉及用户隐私的数据进行加密存储。三、把“授权码”配置到应用程序中后,可以使用 eagsen-aes-cipher-*.*.jar 进行加密解密操作。二、把上述“机器码”提交给鹰信授权管理部门,使用 auth-code.jar 产生一个授权码。
2023-09-20 15:49:45
186
原创 Mongodb 使用命令行进行用户管理
本文基于 Compass 版本 1.38.0 环境(一定瞪大眼睛看清楚版本号,这个很关键,版本的命令文本差别极大 ,首先要确定 Compass 的版本和 Server 的版本兼容,其次还要确认 Compass 版本支持的命令)。mongodb 提供了一个可视化的管理工具 Compass,对于数据库和集合的增删改查等操作都可以满足,可就是偏偏居然想不到的是:不支持可视化的“用户”和“权限”的操作。除了“用户”和“权限”的蹩脚之外,其他还有很多,比如不能为数据库改名,还比如每个版本的命令差别很大。
2023-07-19 16:59:34
288
原创 如何在 IDEA 中对一个目录单独打Jar包
6、在上面的“+”号中添加一项 “Directory Content” ,选择编译目录下的指定文件夹,切记,是编译目录,一般情况下是指 build 目录下的 classes 文件夹下的目录,即包路径。3、删除下图红框中的 ****** compile output 项目,这个是“全部编译结果”的含义,不需要,因为我们需要的是某一个目录的代码包。4、在绿框选中的项目下,添加一个“文件夹”,记住是“文件夹”。文件夹的目录,就是“包”的目录。7、完成上述步骤后,如下图所示,请确保路径的所属关系。
2023-07-04 10:26:24
2480
原创 IDEA运行 html 静态页面无法使用ip地址的解决方案
在 IDEA 环境中,可以通过 Open in browser 的方式,直接运行 html 文件。如果一切顺利的话,可以在浏览器中打开一个 http://localhost:63223/ 开头的连接。但是比较困惑的是如果把 localhost 换成本机的 ip 地址,则无法访问该 url。这一点对于调试来说,尤其是前端的兼容性调试是极为重要的,比如在局域网内如何通过手机浏览这个网页。如果在局域网中其他客户端使用 ip 地址访问时,务必关闭 IDEA 所在机器的防火墙。
2023-06-16 17:12:25
1623
1
原创 Spring MVC 无法访问根目录的极端情况
在 tomcat 的 web.xml 配置文件最后,有一项 <welcome-file-list> ... </welcome-file-file>的配置。把里面的其中一个子项修改为 <welcome-file>/</welcome-file> ,其余的子项全部注释即可。比如 http://www.eagsen.com/more/1099 可以正常路由到控制器方法。而 http://www.eagsen.com/ 却不能路由到控制器方法。2、排除其他配置问题,如 context path 的配置问题等。
2023-05-06 18:44:50
192
原创 IDEA 创建的 web 项目,svn托管
2、check out 后,idea自动检测 web.xml 和 gradle scribe 文件,确认识别的 web 应用。操作load gradle scribe 脚本文件,不要载入 gradle project。1、只需要把两个文件build.gradle 和 settings.gradle, 和两个文件夹 gradle 和 src 托管至 svn 服务器即可。3、如果module下面没有web项目文件夹,添加一个web应用文件夹,把配置文件指向原有的web.xml文件。
2023-03-22 10:14:38
262
原创 Idea 2022 创建 Artifacts 运行 Tomcat 步骤
中右侧 Available Elements 窗口中,选中一个 Module,右键弹出菜单,选择 Extract into / 菜单项。选中 xml 的最后一级文件夹,然后操作 + 号菜单,选择添加 Directory Content。Project Structure / Artifacts / 中使用 + 号菜单进入如下图界面。首先确保 Project Structure 下 Modules 的配置正确。选择应用程序中对应的文件夹。
2023-02-21 16:05:27
832
原创 IDEA xml 配置文件无法发布到应用 war 包的问题
使用 IDE 提供的工具,创建一个基于 Gradle 构建的 web 应用项目。正常导入各种依赖后,在编译发布的文件夹 out 下的 classes 根目录下找不到 spring-mvc.xml 文件。选中 Project Structure->Artifacts->WEB-INF->classes 之后,在上面的➕选择下拉列表,添加一个 Directory Content 文件夹,把该文件的链接指向项目中的希望发布到 classes 目录下的资源文件夹 resources。这是 IDEA 的一个bug。
2022-12-12 16:17:42
423
原创 IDEA 启动时卡在:部署已在【XXX】毫秒内完成
如果出现标题中所述的问题,是当前服务器访问数据库服务器,被数据库服务器的白名单设置给阻拦了。切记,此问题属于非标问题,请非鹰信工程师绕行。其他tomcat设置能正常启动。首先确保 jar 包没问题。
2022-12-11 11:20:50
736
原创 SSI 指令 include 的路径问题
上述 URL 格式是项目的根目录,而 tomcat 的根目录是 http://localhost:8080/ ,不包括 Website/ 的部分。file 参数很容易理解,也就是说被引用的 header.inc 文件要与引用者在同一个目录下。而 virtual 参数就有一定的迷惑性,“/”不是项目的根目录,而是 tomcat 的根目录。鉴于此,如果使用了 SSI 功能,最好就是在开发阶段就部署在 tomcat 的根目录下,这样就避免了很多开发与部署时的困惑与麻烦。
2022-11-20 11:30:46
314
原创 spring mvc 引用属性文件字段报错 Could not resolve placeholder ‘xxx‘ 解决
在 spring的机制中,针对 PropertyPlaceholderConfigurer 的调用只执行一次,也就是说在引用 jdbc.properties 之后,无论对 mvc-property.properties 文件做何种方式的引用,都是无效的,在使用 @Value 注解时都会引发一个找不到字段值的异常。-- 需要使用的属性文件,务必在这个list中一次性添加完成,然后需要使用时,仍然需要在springmvc的配置文件中再次声明 -->-- 如果有其他属性文件,则都在这里按照上述格式列出 -->
2022-11-15 10:42:12
593
原创 Android Studio 制作应用程序的系列图标
1、资源文件夹右键2、选择 Image Asset3、导入设计好的位图,或者矢量图,选择背景色。4、完成各个版本使用的以默认ic开头的图标
2022-05-14 02:37:17
1629
原创 鹰信消息交互代码定义
大于 0 的正整数表示普通消息小于 0 的负整数表示异常消息1 : 执行成功-1 : 执行失败1010:参数为 null 值
2022-02-26 14:27:54
156
原创 Eclipse Java 代码不编译的故障排除
故障现象:项目名字有红色的错误提示符,基本可以判定 Java 代码没有成功编译,运行的都是最后一次编译成功的代码;故障确认:workspace~\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\AppStore\WEB-INF\classes\ 路径下的类文件的最后修改时间,是不是与当前编译时间一致,如果明显早于当前时间,则属于本文所述的故障;故障排除:项目名称 右键->Build Path->Conf
2022-02-21 10:36:48
2621
原创 Eclipse 中 SpringMVC 的 jar 包路径问题
jar 包默认在 lib 文件夹中,如果修改 lib 的名字,或者在其下新建子文件夹存放 jar 包,即使顺利进行使用 Build Path,且 web 应用能启动,但是 SpringMVC 是不好用的。普通的jsp可以访问,控制器截获不了,总是报 404....
2022-02-21 04:52:19
420
原创 PHP 服务器端什么时候设置 Set-Cookie
在不启动 session 支持的情况下,headers_list()中字段只有一个:X-Powered-By: PHP/5.5.30启动 session 支持以后,即执行 session_start(); 之后,headers_list()中会自动填充多项字段值,其中包括 Set-Cookie:X-Powered-By: PHP/5.5.30Set-Cookie: PHPSESSID=cfoum1ce86ocjo3p93ci4e7535; path=/Expires: Thu, 19 Nov
2022-01-23 01:57:21
909
原创 鹰信密钥证书生成的开源算法(Java)
“密钥证书” 是鹰信专门为鹰信云的“数据隐私”机制设计的一种文件。在登录时产生,上传之前加密,下载之后解密;整个传输和存储过程都是密文,因此其安全性、隐私性得到了保障。当然,缺点就是:“密钥证书”一旦丢失,所有基于该证书加密的文件将不能使用。强烈建议使用鹰信云自动管理,或者发送到私人邮箱保管。/** * 为当前登录的用户创建一个密钥证书文件 * Created by Henry on 2019/6/6 * * @return 创建成功的密钥证书文件...
2020-07-22 15:20:35
951
原创 Java 方法参数是“传值调用”还是“传址调用”?-《从Hello World 到三味杂陈》
1、基本数据类型;如 int2、基本数据类型的封装类型;Integer3、String 类型4、enum 枚举类型5、interface 类型总结:凡是不支持重写 clone 方法的,都是传值,其余的都是传引用;
2020-07-05 15:33:12
1317
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人