Problems
Contests
Events
Standings
Topic
IDE
Login
Topic
New Topic
Ubuntu 如何安装HappyOJ
happyoj
## Table of contents * [安装jdk](#安装jdk) * [安装mysql和创建数据库](#安装mysql和创建数据库) * [部署OJ网站](#部署OJ网站) * [部署OJ判题核心](#部署OJ判题核心) * [提交代码](#提交代码) * [常用定位方法](#常用定位方法) * [高级配置](#高级配置) ## 安装jdk 下载jdk 8(建议版本) root@7d4e36f7b916:/home/web# wget https://happyoj.com/data/jdk-8u361-linux-x64.tar.gz root@7d4e36f7b916:/home/web# tar zxvf jdk-8u361-linux-x64.tar.gz 配置jdk环境变量: root@7d4e36f7b916:/home/web# vim /etc/profile 配置java环境,在最后增加如下内容,注意路径正确 export JAVA_HOME=/home/web/jdk1.8.0_361/ export CLASSPATH=.:$JAVA_HOME/...
21497
0
HappyOJ
post at
7 months ago
python 使用telnetlib登陆telnet服务器
telnetlib
python
```python import telnetlib import time import logging import re import ipaddress from ipaddress import ip_address logging.basicConfig(format='%(asctime)s - %(pathname)s - [line:%(lineno)d] - %(levelname)s: %(message)s', level=logging.DEBUG) username = ['0000000', 'huawei','root','huawei123','huawei1234'] password = ['Root@123','Huawei@123','Huawei@1234','huawei@123','huawei@1234','Root@1234'] def contains_chars(s, chars): pattern = f"[{''.join(chars)}]" return bool(r...
14298
0
HappyOJ
post at
4 months ago
Python + openCV去除图片中红色字体
```python import cv2 import numpy as np class SealRemove(object): def remove_red_seal(self, image): # 获得红色通道 blue_c, green_c, red_c = cv2.split(image) # 多传入一个参数cv2.THRESH_OTSU,并且把阈值thresh设为0,算法会找到最优阈值 thresh, ret = cv2.threshold(red_c, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) # 实测调整为95%效果好一些 filter_condition = int(thresh * 0.95) nominator_thresh, red_thresh = cv2.threshold(red_c, filter_condition, 255, cv2.THRESH_BINARY) ...
15603
1
HappyOJ
post at
6 months ago
, Latest Reply (
1 months ago
):
Weizengke>>
Github Copilot在代码检视内存泄漏上的能力
Copilot
## 我给了一个带出参的由内存申请的函数,它能够识别函数内没有泄漏,但是需要提醒我调用者有没有释放内存,还是不错。 ![1702474521965.png](/upload/image/20231213/20231213213522_0CFC1D402411F51BA29695C1273C18CB.png) ## 然后我故意构造假的内存泄漏,中间加了return,他一开始没有发现问题,我再次询问后,它竟被我带歪了,(⊙﹏⊙) ![1702474784152.png](/upload/image/20231213/20231213213944_1CD5AE604C3C1F877783EBF6D51FB102.png) ## 然后我构造了一个真实存在内存泄漏的代码,它没能发现问题,由点失望。 ![1702475609612.png](/upload/image/20231213/20231213215329_9F7D472B763BE6A6E823A31478740C8B.png) ## 我再次质疑它,它又反应过来了 ![1702475727238.png](/upload/image/2...
15703
0
HappyOJ
post at
6 months ago
使用Github Copilot辅助开发的一些感受
Copilot
## 我先选择了一段比较简单的代码,发现它给出的解释实际上就是代码本身自注释到的 ![1702470653550.png](/upload/image/20231213/20231213203053_97F20199A94872E5A1F014EF6A5A0B26.png) ## 我又选择了一段逻辑性比较强的代码,对cmd_match_command_integer函数进行提问,回答非常准确 ![1702472384761.png](/upload/image/20231213/20231213205945_B3EA25D0C22A1B4C0BA2F71D1196CACC.png) ## 对于自动补全的函数也能够准确解释cmd_complete_command ![1702472567513.png](/upload/image/20231213/20231213210247_5099426CF19CB0211769DF2D9F951442.png) ## 对于超过500行的代码,Copilot无法给出解释 ![1702472726790.png](/upload/image/20...
15637
0
HappyOJ
post at
6 months ago
@Scheduled注解实现启动时延时60秒执行一次定时任务,后续按照cron定义的计划执行
springboot
happyoj
cron
最近遇到一个问题,通过springboot Scheduled定时调度,在启动时就会执行定时任务,导致启动性能较差。 代码如下: 1)@PostConstruct 注解表示启动时就执行一次。 2)@Scheduled(cron = "0 0 1,6,12,18,21 * * ?") 注解表示按照每天1点/6点/12点/18点/21点执行一次 ```java @Component public class ContestCollectorSchedule { @PostConstruct @Scheduled(cron = "0 0 1,6,12,18,21 * * ?") private void contestCollectorTimer() { OJCollector.CollectContests(); } } ``` 修改后方案如下: 1)取消启动时执行注解 2)增加一个调度器,第一次后延时60秒执行一次,后续按照一年执行一次 这样可以达到启动时延时60秒执行,后续按照每天1点/6点/12点/18点/21点执行一次的效果 ```...
21699
0
HappyOJ
post at
10 months ago
【JS】JS设置粘贴板内容的方法
javascript
方法1: ```javascript navigator.clipboard.writeText(editor.getValue()); ```
21378
0
HappyOJ
post at
10 months ago
Springboot docker容器方式部署https站点,同时http自动重定向到https
springboot
https
happyoj
docker
配置文件: ![1683955193277.png](/upload/image/20230513/20230513131952_4F88DEEF0882E38F39F0E3A82C699F68.png) ```yaml server: port: 8443 redirect-https-port: 443 -----》由于我是用docker容器部署,所以这里重定向是主机端口号 redirect-https-enable: true http-port: 8080 ssl: key-store: classpath:happyoj.com.pfx key-store-password: 证书密码 key-store-type: PKCS12 ``` 代码中新增Redirect2HttpsConfig类执行重定向: ```java package com.oj.config; import lombok.extern.slf4j.Slf4j; import org.apache.catalina.Context; import org...
21627
0
HappyOJ
post at
1 years ago
jquery动态添加的html会导致jquery监听的事件无法响应的问题解决方法
jquery
javascript
$(".tag-layout").html(opt); 动态添加的html会导致jquery监听的事件无法响应到如: ```javascript $(".tag-description").bind("dblclick", function() { ... }); ``` 可以修改为通过如下方式监听: ```javascript $(document).on("dblclick",".tag-description",function(){ ... }); ```
21966
0
HappyOJ
post at
1 years ago
【OJ源码】css + javascript 实现tag标签的显示,插入和自动联想
autocomplete
OJ源码
css
javascript
### 效果 ![1683002216437.png](/upload/image/20230502/20230502123656_9F009692FECA934D599AE3681C965250.png) ![1683001839854.png](/upload/image/20230502/20230502123039_AA522F04756591C24449EBF76BA35F68.png) ### CSS ```css .tags ul{margin-bottom:1em;list-style-type:none;} .tags ul li{list-style-type:none;} .tags {display: block; padding: 1px 3px;} .tags-sidebar{margin: 3px; line-height:28px;} .tags a{ -webkit-border-radius: 4px; -moz-border-radius: 4px; border: 1px solid #DDD; backgrou...
21671
0
HappyOJ
post at
1 years ago
1
Hot Tags
dfs
22
implementation
19
dp
15
蓝桥
14
string
11
math
11
big number
10
number theory
9
combinatorics
9
happyoj
5
springboot
4
brute force
4
javascript
3
bfs
3
greedy
3
如梦令
3
divide and conquer
2
linux
2
Copilot
2
graph
2
probabilities
2
sortings
2
data structures
2
xor
2
python
1
telnetlib
1
cron
1
题解
1
docker
1
https
1
→
Top10
南柯
2023
cxlove
1970
vainner
1763
4
1000310428赵成帅
1718
5
XiaoWen
1710
6
1000380213洪伟焕
1701
7
weiben
1684
8
Jungle.Wei
1678
9
1100310131曾翔宇
1664
10
hongwh
1653
→
Topics
vbox Ubuntu无界面动态扩展磁盘空间
###问题:磁盘创建时时动态扩展方式,现在空间已经不足,却没有自动扩展生效磁盘空间
Problem A + B
略微有单简单
python 使用telnetlib登陆telnet服务器
```python
你好,请问如何在Windows下架设WEB?
大大你好,我是一个小白。
Python + openCV去除图片中红色字体
Github Copilot在代码检视内存泄漏上的能力
## 我给了一个带出参的由内存申请的函数,它能够识别函数内没有泄漏,但是需要提醒我调用者有没有释放内存,还是不错。
使用Github Copilot辅助开发的一些感受
## 我先选择了一段比较简单的代码,发现它给出的解释实际上就是代码本身自注释到的
Ubuntu 如何安装HappyOJ
## Table of contents
@Scheduled注解实现启动时延时60秒执行一次定时任务,后续按照cron定义的计划执行
最近遇到一个问题,通过springboot Scheduled定时调度,在启动时就会执行定时任务,导致启动性能较差。
【JS】JS设置粘贴板内容的方法
方法1:
→