分享88个Java框架源码,总有一款适合您

简介: 分享88个Java框架源码,总有一款适合您

分享88个Java框架源码,总有一款适合您


 

88个Java框架源码下载链接:https://pan.baidu.com/s/1uKHn6GshPNzCMSJMT7eqzg?pwd=vpl9

提取码:vpl9

Python采集代码下载链接:采集代码.zip - 蓝奏云

hsweb企业后台管理框架 v4.0.15

Jboot微服务框架 v4.0.8

MaxKey单点登录认证系统 v3.5.14

sqltoy-orm框架系统 v5.2.34

def sprider(self,title_name="JS"):
        """
       采集
       JavaScript https://down.chinaz.com/class/602_574_1.htm
       Java https://down.chinaz.com/class/574_517_1.htm
       :return:
       """
        if title_name == "PHP":
            self.folder_name = "PHP源码"
            self.second_column_name = "572_5"
        elif title_name == "JS":
            self.folder_name = "JavaScript框架源码"
            self.second_column_name = "602_574"
        elif title_name == "Java":
            self.folder_name = "Java框架源码"
            self.second_column_name = "574_517"
        BaseFrame().right("本次采集参数:日志路径:" + str(BaseFrame().LOG_PATH) + "")
        BaseFrame().right("本次采集参数:sprider_count=" + str(self.sprider_count) + "")
        BaseFrame().right("本次采集参数:title_name=" + title_name + "")
        BaseFrame().right("本次采集参数:second_column_name=" + self.second_column_name + "")
        first_column_name = title_name # 一级目录
        self.sprider_category = title_name  # 一级目录
        second_folder_name = str(self.sprider_count) + "个" + self.folder_name #二级目录
        self.sprider_type =second_folder_name
        self.merchant=int(self.sprider_start_count) //int(self.max_pager)+1 #起始页码用于效率采集
        self.file_path = self.save_path + os.sep + self.sprider_top_level + os.sep + first_column_name + os.sep + second_folder_name
        self.save_path = self.save_path+ os.sep +  self.sprider_top_level + os.sep+first_column_name+os.sep + second_folder_name+ os.sep + self.folder_name
        BaseFrame().debug("开始采集ChinaZCode"+self.folder_name+"...")
        sprider_url = (self.base_url + "/class/{0}_1.htm".format(self.second_column_name))
        down_path="D:\\Freedom\\Sprider\\ChinaZ\\"+ self.sprider_top_level+"\\"+first_column_name+"\\"+second_folder_name+"\\Temp\\"
        if os.path.exists(down_path) is True:
            shutil.rmtree(down_path)
        if os.path.exists(down_path) is False:
            os.makedirs(down_path)
        if os.path.exists(self.save_path ) is True:
            shutil.rmtree(self.save_path )
        if os.path.exists(self.save_path ) is False:
            os.makedirs(self.save_path )
        chrome_options = webdriver.ChromeOptions()
        diy_prefs ={'profile.default_content_settings.popups': 0,
                    'download.default_directory':'{0}'.format(down_path)}
        # 添加路径到selenium配置中
        chrome_options.add_experimental_option('prefs', diy_prefs)
        chrome_options.add_argument('--headless') #隐藏浏览器
        # 实例化chrome浏览器时,关联忽略证书错误
        driver = webdriver.Chrome(options=chrome_options)
        driver.set_window_size(1280, 800)  # 分辨率 1280*800
        # driver.get方法将定位在给定的URL的网页,get接受url可以是任何网址,此处以百度为例
        driver.get(sprider_url)
        # content = driver.page_source
        # print(content)
        div_elem = driver.find_element(By.CLASS_NAME, "main")  # 列表页面 核心内容
        element_list = div_elem.find_elements(By.CLASS_NAME, 'item')
        laster_pager_ul = driver.find_element(By.CLASS_NAME, "el-pager")
        laster_pager_li =laster_pager_ul.find_elements(By.CLASS_NAME, 'number')
        laster_pager_url = laster_pager_li[len(laster_pager_li) - 1]
        page_end_number = int(laster_pager_url.text)
        self.page_count=self.merchant
        while self.page_count <= int(page_end_number):  # 翻完停止
            try:
                if self.page_count == 1:
                    self.sprider_detail(driver,element_list,self.page_count,page_end_number,down_path)
                    pass
                else:
                    if self.haved_sprider_count == self.sprider_count:
                        BaseFrame().debug("采集到达数量采集停止...")
                        BaseFrame().debug("开始写文章...")
                        self.builder_word(self.folder_name, self.word_content_list)
                        BaseFrame().debug("文件编写完毕,请到对应的磁盘查看word文件和下载文件!")
                        break
                    #(self.base_url + "/sort/{0}/{1}/".format(url_index, self.page_count))
                    #http://soft.onlinedown.net/sort/177/2/
                    next_url = self.base_url + "/class/{0}_{1}.htm".format(self.second_column_name, self.page_count)
                    driver.get(next_url)
                    div_elem = driver.find_element(By.CLASS_NAME, "main")  # 列表页面 核心内容
                    element_list = div_elem.find_elements(By.CLASS_NAME, 'item')
                    self.sprider_detail( driver, element_list, self.page_count, page_end_number, down_path)
                    pass
                #print(self.page_count)
                self.page_count = self.page_count + 1  # 页码增加1
            except Exception as e:
                print("sprider()执行过程出现错误:" + str(e))
                sleep(1)

okhttps轻量级HTTP客户端 v4.0.1

maku-boot企业级快速开发平台 v3.0.0

Spring Boot应用开发框架 v3.0.2

Spring Boot应用开发框架 v2.7.8

LinkWeChat开源系统 v3.3.1

APIJSON网络传输协议 v6.0.0

JeeSite快速开发平台 v5.2.1

JeeSite Spring Cloud v5.2.1

Jackson高性能的JSON处理 v2.14.2

BeetlSQL数据库访问框架 v3.20.0

pig权限管理系统 v3.6.5

Erupt低代码全栈类框架 v1.11.2

Sa-Token权限认证框架 v1.34.0

SOFABoot开源框架 v3.16.3

Discovery微服务框架 v6.20.0

Discovery微服务框架 v3.37.0

mina高性能Java网络框架 v2.2.1

Netty高性能网络应用框架 v4.1.87

Play Framework应用程序框架 v2.8.19

Dubbo服务框架 v3.1.5

Dubbo服务框架 v2.7.21

Novel前后端分离权限管理系统 v1.8.2

easyAi傻瓜式Java AI框架 v1.0.5

smart-socket AIO通信框架 v1.6.1

SOFABolt网络通信框架 v1.6.6

ActFramework全栈框架 v1.9.2

AdminLTE-admin 轻量级权限管理框架 v2.2

sureness认证鉴权框架 v1.0.8

hippo4j动态线程池框架 v1.4.3

盘古开发框架 v5.3.0

BudWk企业级开源开发框架 v8.0.0

TCP Gateway v1.0

Knife4j v4.0.0

SOFA-Bolt网络通信框架 v1.6.6

RuoYi若依权限管理系统 v4.7.6

MateCloud微服务架构 v4.6.8

Easy-Es 搜索引擎框架 v1.1.1

liteFlow规则引擎框架 v2.9.6

JEECG BOOT 低代码开发平台 v3.4.4

Spring Boot应用开发框架 v2.6.14

Hippy跨端开发框架 v2.15.5

Unirest轻量级的HTTP开发库 v3.14.1

flyray-base分布式基础框架 v1.0

Hibernate数据持久层框架 v6.1.6

Voovan v5.0.0 alpha

JSite 快速开发框架 v0.6.0

JFinal极速WEB+ORM框架 v5.0.8

JGroups通讯框架 v4.2.22

JustAuthPlus v1.0.7

import os
import shutil
import time
from time import sleep
from docx import Document
from docx.shared import Inches
from framework.base.BaseFrame import BaseFrame
from sprider.business.DownLoad import DownLoad
from sprider.business.SeleniumTools import SeleniumTools
from sprider.business.SpriderTools import SpriderTools
from selenium import webdriver
from selenium.webdriver.common.by import By
from sprider.model.SpriderEntity import SpriderEntity
from sprider.access.SpriderAccess import SpriderAccess
title_name = "社会教育"
class ChinaZJsSelenium:
    base_url = "https://sc.chinaz.com/"  # 采集的网址
    save_path = "D:\\Freedom\\Sprider\\ChinaZ\\"
    sprider_count = 88 # 116+66+20
    sprider_start_count = 0
    word_content_list = []
    folder_name = ""
    page_end_number = 0
    max_pager = 24  # 每页的数量
    haved_sprider_count = 0  # 已经采集的数量
    page_count = 1  # 每个栏目开始业务content="text/html; charset=gb2312"
    filter_down_file = []
    word_image_count = 5  # word插入图片数量 同时也是明细采集图片和描述的数量
    sprider_detail_index = 0  # 明细方法采集的数量 累加
    sprider_top_level = "HTML"

mica mqtt 组件 v2.0.3

Jboot微服务框架 v3.17.1

lock4j高性能分布式锁 v2.2.3

Forest轻量级HTTP客户端框架 v1.5.28

springrain云原生微服务实现 v1.0

angularjs Web页面框架 v12.2.17

Ehcache Java 缓存框架 v3.10.8

JeeSite Spring Cloud v4.6.0

JeeSite快速开发平台 v4.6.0

ServiceComb Java Chassis微服务SDK v2.8.1

jabdp快速开发平台 v1.2.0 bulid20221114

Guns后台管理系统 v7.3.1

SpringBlade微服务开发平台 v3.5.0

Roses v7.3.1

Cola Cloud v1.0

Vue.js渐进式框架 v2.7.14

Hibernate数据持久层框架 v5.6.14

light-task-scheduler v1.6.6

Smart Admin通用型中后台解决方案 v1.12.0

jdchain v1.6.5

spring-boot-elasticsearch v1.0

open-cloud微服务平台 v3.0.0

koalas-rpc v1.0

tiny框架 v3.4.10.1

kitty权限管理系统 v1.0 前端

kitty权限管理系统 v1.0 后端

xxl-sso分布式单点登录框架 v1.1.0

MyBatis数据持久层框架 v3.5.11

t-io百万级网络框架 v3.8.3

magic-api HTTP接口映射框架 v2.0.1

Hibernate数据持久层框架 v5.3.28

WxJava微信开发工具包 v4.4.0

fhs-framework快速开发平台 v3.2.0

MyBatis Mapper v2.0.0

AgileBPM敏捷工作流开发平台 v1.6.8

import os
import shutil
def void_folder(path):
    # 访问path路径下的文件或文件夹
    lst = os.listdir(path)
    # 打印每一层的文件或文件夹
    for name in lst:
        # 拼接名称,得到绝对路径,判断该文件是否符合是文件夹
        real_path = os.path.join(path, name)
        # 如果是文件夹,则打空格表示,并且递归访问下一层
        if os.path.isdir(real_path):
            # print(name)
            files = os.listdir(real_path)
            if len(files) == 0:
                print("void_folder():"+name)
                shutil.rmtree(real_path)
                endindex = len(real_path) - len(name)
                real_path = real_path[0:endindex]
                void_folder(real_path)
            else:
                void_folder(real_path)
        # 如果不是文件夹,直接打印,不再递归访问下一层
        else:
            #print(name)
            pass
def void_file(dirPath):
    dirs = os.listdir(dirPath)  # 查找该层文件夹下所有的文件及文件夹,返回列表
    for file in dirs:
        file_full_name = dirPath + '/' + file
        file_ext = os.path.splitext(file_full_name)[-1]
        if file_ext is None  or file_ext=="":
            continue
        if "rar" == str(file_ext.split(".")[1]):
            os.remove(file_full_name)
        if "zip" == str(file_ext.split(".")[1]):
            os.remove(file_full_name)
        if "gz" == str(file_ext.split(".")[1]):
            os.remove(file_full_name)
        if "tgz" == str(file_ext.split(".")[1]):
            os.remove(file_full_name)
# 查找指定文件夹下所有相同名称的文件
def search_file(dirPath, fileName):
    dirs = os.listdir(dirPath)  # 查找该层文件夹下所有的文件及文件夹,返回列表
    for currentFile in dirs:  # 遍历列表
        absPath = dirPath + '/' + currentFile
        if os.path.isdir(absPath):  # 如果是目录则递归,继续查找该目录下的文件
            search_file(absPath, fileName)
        elif currentFile == fileName:
            #print(absPath)  # 文件存在,则打印该文件的绝对路径
            os.remove(absPath)

最后送大家一首诗:

山高路远坑深,

大军纵横驰奔,

谁敢横刀立马?

惟有点赞加关注大军。

 

目录
相关文章
|
5天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
18 2
|
9天前
|
JSON Java Apache
非常实用的Http应用框架,杜绝Java Http 接口对接繁琐编程
UniHttp 是一个声明式的 HTTP 接口对接框架,帮助开发者快速对接第三方 HTTP 接口。通过 @HttpApi 注解定义接口,使用 @GetHttpInterface 和 @PostHttpInterface 等注解配置请求方法和参数。支持自定义代理逻辑、全局请求参数、错误处理和连接池配置,提高代码的内聚性和可读性。
|
29天前
|
存储 Java
深入探讨了Java集合框架中的HashSet和TreeSet,解析了两者在元素存储上的无序与有序特性。
【10月更文挑战第16天】本文深入探讨了Java集合框架中的HashSet和TreeSet,解析了两者在元素存储上的无序与有序特性。HashSet基于哈希表实现,添加元素时根据哈希值分布,遍历时顺序不可预测;而TreeSet利用红黑树结构,按自然顺序或自定义顺序存储元素,确保遍历时有序输出。文章还提供了示例代码,帮助读者更好地理解这两种集合类型的使用场景和内部机制。
38 3
|
18天前
|
人工智能 前端开发 Java
基于开源框架Spring AI Alibaba快速构建Java应用
本文旨在帮助开发者快速掌握并应用 Spring AI Alibaba,提升基于 Java 的大模型应用开发效率和安全性。
基于开源框架Spring AI Alibaba快速构建Java应用
|
18天前
|
消息中间件 Java 数据库连接
Java 反射最全详解 ,框架设计必掌握!
本文详细解析Java反射机制,包括反射的概念、用途、实现原理及应用场景。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
Java 反射最全详解 ,框架设计必掌握!
|
26天前
|
前端开发 Java 数据库连接
Spring 框架:Java 开发者的春天
Spring 框架是一个功能强大的开源框架,主要用于简化 Java 企业级应用的开发,由被称为“Spring 之父”的 Rod Johnson 于 2002 年提出并创立,并由Pivotal团队维护。
43 1
Spring 框架:Java 开发者的春天
|
10天前
|
人工智能 监控 数据可视化
Java智慧工地信息管理平台源码 智慧工地信息化解决方案SaaS源码 支持二次开发
智慧工地系统是依托物联网、互联网、AI、可视化建立的大数据管理平台,是一种全新的管理模式,能够实现劳务管理、安全施工、绿色施工的智能化和互联网化。围绕施工现场管理的人、机、料、法、环五大维度,以及施工过程管理的进度、质量、安全三大体系为基础应用,实现全面高效的工程管理需求,满足工地多角色、多视角的有效监管,实现工程建设管理的降本增效,为监管平台提供数据支撑。
26 3
|
15天前
|
运维 自然语言处理 供应链
Java云HIS医院管理系统源码 病案管理、医保业务、门诊、住院、电子病历编辑器
通过门诊的申请,或者直接住院登记,通过”护士工作站“分配患者,完成后,进入医生患者列表,医生对应开具”长期医嘱“和”临时医嘱“,并在电子病历中,记录病情。病人出院时,停止长期医嘱,开具出院医嘱。进入出院审核,审核医嘱与住院通过后,病人结清缴费,完成出院。
47 3
|
24天前
|
SQL Java 关系型数据库
java连接mysql查询数据(基础版,无框架)
【10月更文挑战第12天】该示例展示了如何使用Java通过JDBC连接MySQL数据库并查询数据。首先在项目中引入`mysql-connector-java`依赖,然后通过`JdbcUtil`类中的`main`方法实现数据库连接、执行SQL查询及结果处理,最后关闭相关资源。
|
20天前
|
缓存 Java 数据库连接
Hibernate:Java持久层框架的高效应用
通过上述步骤,可以在Java项目中高效应用Hibernate框架,实现对关系数据库的透明持久化管理。Hibernate提供的强大功能和灵活配置,使得开发者能够专注于业务逻辑的实现,而不必过多关注底层数据库操作。
12 1