- 博客(39)
- 收藏
- 关注
原创 C#用winform窗口程序操作服务+不显示Form窗体,只显示右下角托盘图标+开机时自启动程序【附带项目地址】
1、点击“创建新项目”,选择“Windows 服务(.NET Framework)”2、给项目命名3、右击项目->添加->新建项,选择“应用程序清单文件(仅限Windows)4、双击第三步生成的app.manifest文件,将修改为5、右击项目->添加->新建项,选择“窗体(Windows窗体)6、双击Form1.cs文件,打开“Form1.cs[设计]”,选择左侧的工具箱->所有Windows窗体->Button(若不能拖动到Form上,则直接双击即可)7、引入两个文件。
2025-01-08 09:25:24
483
原创 用VS C#构建Windows服务【纯操作版,附带项目地址】
4、双击“ProjectInstaller.cs”文件,右键“serviceProcessInstaller1”,选择“属性”,将Account改成LocalSystem。①注册服务:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil.exe /i。④注销服务:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil.exe /u。(2)Description:描述。
2025-01-06 10:43:00
351
原创 java agent的使用【通俗易懂版】
(1)创建Attach项目,引入javassist.jar包、com.sun.tools.attach-1.8.0_jdk8u172-b11.jar包。(3)创建MyAgentTransferboot类,实现ClassFileTransformer接口,重写transform方法。如:-javaagent:D:\Work_Code\javaAgent\StringLenAgent.jar=‘1’(1)创建Agent项目,引入javassist.jar包。(2)编写agentmain方法。
2024-12-24 16:57:34
749
原创 ecplise导出jar包的方式(是否需包含引入的jar包)
1、仅导出项目的jar包(不包含引入的jar包)2、仅导出项目的jar包(包含引入的jar包)
2024-12-23 14:33:52
144
原创 java.lang.UnsupportedClassVersionError: com/javaAgent/Agent1 has been compiled by a more recent vers
换成jdk1.8报错【java.lang.UnsupportedClassVersionError: com/javaAgent/Agent1 has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0】
2024-12-23 13:51:11
222
原创 关于BeanUtils.copyProperties是否能正常复制字段【详细版】
1、字段相同,类型不同(不复制,也不报错)2、子类父类(1)子类传给父类(可以正常复制)(2)父类传给子类(可以正常复制)3、子类父类(属性类对象)(1)子类属性传给父类属性(可以正常复制)(2)父类属性传给子类属性(不复制,也不报错)具体代码如下:1、字段相同,类型不同(不复制,也不报错)2、子类父类(1)子类传给父类(可以正常复制)linkId1payType(2)父类传给子类(可以正常复制)linkId1。
2024-11-29 09:33:30
678
原创 JAVA发布订阅模式Demo,支持异步+记录日志+重新发布操作
五、如果需要用日志记录Listener执行之后的结果(成功/失败)以便可以将失败的数据重新执行,则可以用抽象函数的方式将保存日志的函数写好,而每一个子类只专注于要实现的方法(这时候不能用注解方式,而要用implements ApplicationListener的方式)2、Listener继承BaseEventListener,实现抽象方法doBiz。1、创建Listener并开启异步处理(用注解@EventListener方式)1、继承ApplicationEvent类,并可以添加自己所需要的参数。
2024-10-15 14:23:20
261
原创 跨域Access to XMLHttpRequest at ‘http://localhost:8181/list‘ from origin ‘http://localhost:8080‘ has
跨域是指浏览器不能执行其他网站的脚本。它是浏览器同源策略造成的,是浏览器对JS实施的安全限制例如:后端已经接收到请求,并返回了,但前端没有收到。
2022-12-18 23:13:03
3543
1
原创 使用Vue+ElementUI的下拉菜单多选时,文本内容过长导致显示溢出自动换行
使用Vue+ElementUI的下拉菜单多选时,文本内容过长导致显示溢出自动换行
2022-11-21 10:35:32
4775
原创 SQL语句中在where使用select中定义的别名会报错Unknown column ‘xx‘ in ‘where clause‘
SQL语句中在where使用select中定义的别名会报错Unknown column 'xx' in 'where clause'
2022-11-21 10:20:37
526
原创 gitee上传/拉取代码
1、使用git在gitee上传代码第一步:进入项目根目录,右击鼠标,选择Git Bash HerePS:若第一次上传项目到码云,需要进行全局配置:git config –global user.email 'you@example.com'git config –global user.name 'Your name'```第二步:建立本地git仓库:git init第三步:将本地项目所有文件放置暂存区git add .第四步:上传注释git commit -m "注释"若显
2022-05-12 12:35:13
8634
1
原创 一道面试题:用synchronized实现lock锁
/** * 用synchronized实现lock锁 */public class MyLock { private final static long NONE = -1; private long owner = NONE; public synchronized void lock(){ long currentThreadId = Thread.currentThread().getId(); if(owner==currentThre
2020-08-18 16:05:57
158
原创 Command line is too long. Shorten command line....
报错内容:Error running ‘Application (1)’: Command line is too long. Shorten command line for Application (1) or also for Spring Boot default configuration解决办法:1、修改项目下 .idea\workspace.xml,找到标签 ,在标签里加一行 样式如下:<component name="PropertiesComponent">.
2020-08-10 18:01:30
734
原创 mysql的limit分页优化
当数据量达到几十万时select * from table limit 10可能会达到十几二十秒,查询非常慢,这时候需要进行一个优化。子查询优化SELECT a.PERSON_ID, a.PRIMARY_NAME, a.GENDER, a.ACTIVE_STATUS, a.BIRTH_DATEFROM aml_dev.person0 aINNER JOIN (SELECT PERSON_ID FROM aml_dev.person0 ORDER BY PERSON_ID
2020-08-10 14:16:18
176
原创 mysql有Memory引擎存储数据,为什么要用redis
Memory1、Memory不支持行锁只只支持表锁,所以在进行并发操作的时候会导致大量的阻塞,效率低。2、数据库重启,会导致内存中的数据全部丢失,不可靠。Redis1、可以通过RDB,AOF持久化数据,可靠性高mysql缓存失效1、SQL语句不一致2、不确定时,如now(),uuid()3、不使用任何表查询语句,如select ‘A’4、查询mysql,information_schema或performance_schema数据库中的表时5、表中的数据或者表结构进行了更改,如inser
2020-08-10 11:23:18
541
原创 wait和notify
class MyQueue { private final ArrayList<String> list = new ArrayList<>(5); public void consume() { while(true) { if(list.size()==0) { list.wait(); } System.out.println(list.remove(0)); list.notify(); } } public
2020-08-10 10:46:57
160
原创 #{}和${}的区别
使用#{}的位置会被替换成"?",然后通过PrepareStatement对象的setXXX方法设置值,而${}只是进行简单的拼接,被直接替换为参数值,有sql注入的问题,所以一般用#{},无法满足需求的时候,再用${}
2020-08-03 17:40:26
172
原创 Operation not allowed after ResultSet closed
原因:在批量执行sql语句的时候,没执行完就关闭了数据库连接,从而抛出异常。解决方法:1、优化sql语句,降低执行的时间;2、调大执行时间
2020-08-03 17:16:18
668
原创 JDK8采用红黑树不用AVL树的原因
AVL树严格遵守左右子树高度差不能超过1,查找效率比较高,平衡速度慢,所以插入删除效率比较低。红黑树是不严格的平衡二叉树,从根到任何叶子的最短路径和最长路径之间的差异可以是2倍,平衡速度快,插入和删除的效率高。...
2020-08-03 11:37:26
244
原创 HashMap源码分析
1、HashMap负载因子默认为0.75的原因 * Because TreeNodes are about twice the size of regular nodes, we * use them only when bins contain enough nodes to warrant use * (see TREEIFY_THRESHOLD). And when they become too small (due to * removal or resiz
2020-08-03 11:18:33
322
原创 一道关于Java多态性例题
class A { public String show(D obj) { return "A and D"; } public String show(A obj) { return "A and A"; }}class B extends A { public String show(B obj) { return "B and B"; } public String show(A obj) {
2020-07-31 17:59:07
494
原创 关于微信开放平台第三方接口编写
1、获取验证票据第三方平台会推送component_verify_ticket但数据是加密的,需要我们进行解密。先可以看到平台提供了一个加密解密的代码,本人用的是Java
2020-05-09 10:10:39
448
原创 @Valid和@Validated区别
1、分组@Validated:提供了一个分组功能,可以在入参验证时,根据不同的分组采用不同的验证机制。@Valid:作为标准JSR-303规范,还没有吸收分组的功能。2、嵌套验证由于@Valid可以用在成员属性上,所以可以进行嵌套验证例如有个Item实体public class Item { @NotNull(message = "id不能为空") @Min(valu...
2020-04-27 10:24:14
210
原创 ecplise常用快捷键「部分」
这只是我个人觉得比较实用的快捷键~ctrlctrl + d 删除当前行ctrl + t 继承树结构ctrl + k 快速定位下一个选中字符ctrl + z 回退ctrl + y 前进ctrl + f11 执行main方法ctrl + shiftctrl + shift + o 自动引导类包ctrl + shift + f 格式化代码ctrl + shift + s 保存所有未...
2020-04-08 09:56:20
112
原创 SQLyog连接数据库报错plugin caching_sha2_password could not be loaded
1.打开cmd登录数据库mysql -u root -p 2.进入mysql依次执行如下命令#修改加密规则ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #更新用户的密码ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_na...
2020-04-03 16:01:07
172
原创 注入dao的时候报的错Autowired(required=true)
expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}不要将参数required改为false解决问题,应该要在dao的实现类上...
2020-04-02 18:19:50
1001
原创 Windows杀死进程的方式
1、netstat -aon 可以查看所有进程2、netstat -aon | findstr “端口号” 可以查看指定端口号的进程3、taskkill /f /t /im “进程id或者进程名称” 杀死指定进程...
2020-03-30 14:40:30
517
C#用winform窗口程序操作服务和多屏幕水印的显示去除+不显示Form窗体,只显示右下角托盘图标+开机时自启动程序
2025-01-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人