操作无法完成,因为文件已在 OpenJDK Platform binary 中打开。

在使用 OpenJDK 时,有时会遇到文件被 `OpenJDK Platform binary` 占用的情况,这通常发生在 Java 应用程序或 JVM 进程未正确释放资源的情况下。以下是一些解决该问题的方法: ### 查看并终止占用进程 可以通过任务管理器查看当前运行的 Java 进程,并手动结束它们[^2]。 1. **Windows 系统**: - 按下 `Ctrl + Shift + Esc` 打开任务管理器。 - 在“进程”选项卡中查找名为 `java.exe` 或 `javaw.exe` 的进程。 - 右键点击这些进程并选择“结束任务”。 2. **Linux 或 macOS 系统**: - 使用命令行工具,输入以下命令来列出所有 Java 进程: ```bash ps aux | grep java ``` - 获取到 PID 后,使用 `kill` 命令终止进程: ```bash kill -9 <PID> ``` ### 使用命令行工具 可以使用 `handle` 工具(Windows)来查找哪个进程正在使用特定文件。 - 下载并解压 [Sysinternals Suite](https://docs.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite),其中包含 `handle.exe`。 - 在命令提示符中运行: ```cmd handle.exe 文件路径 ``` - 根据输出的信息找到对应的 PID 并结束进程。 ### 修改应用程序配置 对于某些应用程序(如 IDEA 或 SuperMap iServer),可以尝试修改其配置以使用不同的 JDK 版本。 - 更换 SuperMap-iServer 内置的 OpenJDK,改用自己安装的 Sun JDK。 - 安装 Sun JDK 并正确配置 `JAVA_HOME`、`JRE_HOME`、`CLASS_PATH` 和 `Path` 等环境变量。 - 将原有的 JRE 文件夹重命名,例如将 `C:\SuperMap\SuperMapiServer10i\support` 下的 `jre` 重命名为 `jre_bak`。 ### 示例代码:检查和杀死 Java 进程(适用于 Linux/macOS) ```bash # 列出所有 Java 进程 ps aux | grep java # 假设 PID 是 12345,则杀死该进程 kill -9 12345 ``` ### 预防措施 为了避免此类问题再次发生,可以在开发环境中采取一些预防措施: - 确保每次关闭应用时都正确退出 JVM。 - 对于长期运行的应用,定期重启服务以释放资源。 - 使用稳定的 JDK 发行版,如 Oracle JDK 或 Adoptium 提供的 OpenJDK 构建版本。 ---

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

Python内容推荐

复杂工况下基于时空特征交互与非线性映射的轴承剩余寿命预测方法(Python代码实现)

复杂工况下基于时空特征交互与非线性映射的轴承剩余寿命预测方法(Python代码实现)

内容概要:本文提出了一种在复杂工况下基于时空特征交互与非线性映射的轴承剩余寿命(RUL)预测方法,并提供了完整的Python代码实现。该方法通过深度融合时间序列动态特征与空间结构特征,构建高精度的非线性映射模型,以应对实际工业环境中多变负载、转速波动等复杂因素对轴承退化过程的影响。研究涵盖了数据预处理、特征提取、模型构建与训练、性能评估等全流程,重点突出了时空特征融合机制的设计与非线性退化趋势建模的有效性,旨在提升剩余寿命预测的准确性与鲁棒性。此外,文中详细阐述了模型的理论基础、关键构成及验证方法,确保方法在实际应用中的可靠性和可复现性。; 适合人群:具备一定Python编程基础和机器学习知识,从事设备故障诊断、工业大数据分析、预测性维护等相关领域的科研人员及工程技术人员。; 使用场景及目标:①应用于工业设备健康管理与预测性维护系统中,实现对轴承等关键部件的精准寿命预测;②为复杂工况下的机械系统可靠性评估提供技术支持,提升运维效率与安全性;③作为学术研究参考,推动深度学习在时序-空间特征融合与非线性退化建模方向的发展。; 阅读建议:建议读者结合所提供的Python代码进行实践操作,深入理解数据预处理流程、时空特征提取策略以及模型训练与验证细节。在学习过程中应重点关注特征交互机制与非线性映射结构的设计原理,并通过调整参数或引入实际数据进行对比实验,以增强模型调优与工程落地能力。

基于高创新模型MS-TCN-TiDE的短期负荷预测研究(Python代码实现)

基于高创新模型MS-TCN-TiDE的短期负荷预测研究(Python代码实现)

内容概要:本文提出了一种基于高创新模型MS-TCN-TiDE的短期负荷预测方法,该模型融合多尺度时序卷积网络(MS-TCN)与时间依赖密集编码器(TiDE),专为电力系统短期负荷预测任务设计。通过Python代码实现,模型能够有效捕捉电力负荷数据中的多尺度时间特征和复杂时序依赖关系,显著提升在非理想电网工况下的预测精度。研究系统性地涵盖了模型架构设计、训练流程、参数优化及实验验证全过程,并利用真实数据集验证了其在短期负荷预测中的优越性能与强鲁棒性。; 适合人群:具备一定Python编程能力和深度学习基础,从事电力系统分析、能源管理、负荷预测等相关领域的科研人员及工程技术人员,特别是研究生、高校教师和电力行业的研发工作者。; 使用场景及目标:①应用于电网调度、能源管理系统中的短期电力负荷预测任务;②为智能电网、综合能源系统提供高精度的负荷数据支撑;③作为深度学习在时序预测领域应用的研究范例,推动MS-TCN与TiDE模型在工业级场景中的创新实践与技术转化。; 阅读建议:建议读者结合文中提供的Python代码进行动手实践,深入理解模型结构与训练细节,同时可在不同数据集上复现实验结果,进一步探索模型的泛化能力、优化潜力及在复杂工况下的适应性表现。

openjdk11.0.16安装包

openjdk11.0.16安装包

可以直接下载使用,也可以去官网自行下载:https://mail.openjdk.org/ openjdk和jdk的区别如下: openjdk是jdk的开源版本,源代码完全相同,但是部分功能无法使用。 openjdk只包含最精简的JDK,而jdk包含很多其他软件包。 openjdk采用GPL V2协议,而jdk采用JRL协议。 openjdk没有部署功能,不包含浏览器插件、Java Web Start、Java控制面板等。 openjdk不包含JMX中的可选元件SNMP部分的代码,而Icedtea则为这些不完整的部分开发了相同功能的源代码。 openjdk可以在商业上使用,而jdk只允许个人研究使用。 总的来说,openjdk是jdk的开源版本,两者在功能上略有差异。 Red Hat版本的OpenJDK是OpenJDK的发行版,由Red Hat提供和维护。它主要用于Red Hat企业版Linux(RHEL)和其他Red Hat分发版。 要使用Red Hat版本的OpenJDK,您可以从Red Hat官网下载并安装相应的软件包。在安装过程中,您可以选择安装哪个版本的OpenJDK。

Java SE - Downloads | Oracle Technology Network | Oracle 中国.pdf

Java SE - Downloads | Oracle Technology Network | Oracle 中国.pdf

Java SE - Downloads | Oracle Technology Network | Oracle 中国.pdf

javacv-platform-1.3.3-src

javacv-platform-1.3.3-src

视频人脸识别,取代jmf。。。 Introduction JavaCV uses wrappers from the JavaCPP Presets of commonly used libraries by researchers in the field of computer vision (OpenCV, FFmpeg, libdc1394, PGR FlyCapture, OpenKinect, librealsense, CL PS3 Eye Driver, videoInput, ARToolKitPlus, and flandmark), and provides utility classes to make their functionality easier to use on the Java platform, including Android. JavaCV also comes with hardware accelerated full-screen image display (CanvasFrame and GLCanvasFrame), easy-to-use methods to execute code in parallel on multiple cores (Parallel), user-friendly geometric and color calibration of cameras and projectors (GeometricCalibrator, ProCamGeometricCalibrator, ProCamColorCalibrator), detection and matching of feature points (ObjectFinder), a set of classes that implement direct image alignment of projector-camera systems (mainly GNImageAligner, ProjectiveTransformer, ProjectiveColorTransformer, ProCamTransformer, and ReflectanceInitializer), a blob analysis package (Blobs), as well as miscellaneous functionality in the JavaCV class. Some of these classes also have an OpenCL and OpenGL counterpart, their names ending with CL or starting with GL, i.e.: JavaCVCL, GLCanvasFrame, etc. To learn how to use the API, since documentation currently lacks, please refer to the Sample Usage section below as well as the sample programs, including two for Android (FacePreview.java and RecordActivity.java), also found in the samples directory. You may also find it useful to refer to the source code of ProCamCalib and ProCamTracker as well as examples ported from OpenCV2 Cookbook and the associated wiki pages. Please keep me informed of any updates or fixes you make to the code so that I may integrate them into the next release. Thank you! And feel free to ask questions on the mailing list if you encounter any problems with the software! I am sure it is far from perfect... Downloads To install manually the JAR files, obtain the following archives and follow the instructions in the Manual Installation section below. JavaCV 1.3.3 binary archive javacv-platform-1.3.3-bin.zip (212 MB) JavaCV 1.3.3 source archive javacv-platform-1.3.3-src.zip (456 KB) The binary archive contains builds for Android, Linux, Mac OS X, and Windows. The JAR files for specific child modules or platforms can also be obtained individually from the Maven Central Repository. We can also have everything downloaded and installed automatically with: Maven (inside the pom.xml file) <dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.3.3</version> </dependency> Gradle (inside the build.gradle file) dependencies { compile group: 'org.bytedeco', name: 'javacv-platform', version: '1.3.3' } sbt (inside the build.sbt file) libraryDependencies += "org.bytedeco" % "javacv-platform" % "1.3.3" This downloads binaries for all platforms, but to get binaries for only one platform we can set the javacpp.platform system property (via the -D command line option) to something like android-arm, linux-x86_64, macosx-x86_64, windows-x86_64, etc. Please refer to the README.md file of the JavaCPP Presets for details. Another option available for Scala users is sbt-javacv. Required Software To use JavaCV, you will first need to download and install the following software: An implementation of Java SE 7 or newer: OpenJDK http://openjdk.java.net/install/ or Sun JDK http://www.oracle.com/technetwork/java/javase/downloads/ or IBM JDK http://www.ibm.com/developerworks/java/jdk/ Further, although not always required, some functionality of JavaCV also relies on: CL Eye Platform SDK (Windows only) http://codelaboratories.com/downloads/ Android SDK API 14 or newer http://developer.android.com/sdk/ JOCL and JOGL from JogAmp http://jogamp.org/ Finally, please make sure everything has the same bitness: 32-bit and 64-bit modules do not mix under any circumstances. Manual Installation Simply put all the desired JAR files (opencv*.jar, ffmpeg*.jar, etc.), in addition to javacpp.jar and javacv.jar, somewhere in your class path. Here are some more specific instructions for common cases: NetBeans (Java SE 7 or newer): In the Projects window, right-click the Libraries node of your project, and select "Add JAR/Folder...". Locate the JAR files, select them, and click OK. Eclipse (Java SE 7 or newer): Navigate to Project > Properties > Java Build Path > Libraries and click "Add External JARs...". Locate the JAR files, select them, and click OK. IntelliJ IDEA (Android 4.0 or newer): Follow the instructions on this page: http://developer.android.com/training/basics/firstapp/ Copy all the JAR files into the app/libs subdirectory. Navigate to File > Project Structure > app > Dependencies, click +, and select "2 File dependency". Select all the JAR files from the libs subdirectory. After that, the wrapper classes for OpenCV and FFmpeg, for example, can automatically access all of their C/C++ APIs: OpenCV documentation FFmpeg documentation Sample Usage The class definitions are basically ports to Java of the original header files in C/C++, and I deliberately decided to keep as much of the original syntax as possible. For example, here is a method that tries to load an image file, smooth it, and save it back to disk: import static org.bytedeco.javacpp.opencv_core.*; import static org.bytedeco.javacpp.opencv_imgproc.*; import static org.bytedeco.javacpp.opencv_imgcodecs.*; public class Smoother { public static void smooth(String filename) { IplImage image = cvLoadImage(filename); if (image != null) { cvSmooth(image, image); cvSaveImage(filename, image); cvReleaseImage(image); } } } JavaCV also comes with helper classes and methods on top of OpenCV and FFmpeg to facilitate their integration to the Java platform. Here is a small demo program demonstrating the most frequently useful parts: import java.io.File; import java.net.URL; import org.bytedeco.javacv.*; import org.bytedeco.javacpp.*; import org.bytedeco.javacpp.indexer.*; import static org.bytedeco.javacpp.opencv_core.*; import static org.bytedeco.javacpp.opencv_imgproc.*; import static org.bytedeco.javacpp.opencv_calib3d.*; import static org.bytedeco.javacpp.opencv_objdetect.*; public class Demo { public static void main(String[] args) throws Exception { String classifierName = null; if (args.length > 0) { classifierName = args[0]; } else { URL url = new URL("https://raw.github.com/Itseez/opencv/2.4.0/data/haarcascades/haarcascade_frontalface_alt.xml"); File file = Loader.extractResource(url, null, "classifier", ".xml"); file.deleteOnExit(); classifierName = file.getAbsolutePath(); } // Preload the opencv_objdetect module to work around a known bug. Loader.load(opencv_objdetect.class); // We can "cast" Pointer objects by instantiating a new object of the desired class. CvHaarClassifierCascade classifier = new CvHaarClassifierCascade(cvLoad(classifierName)); if (classifier.isNull()) { System.err.println("Error loading classifier file \"" + classifierName + "\"."); System.exit(1); } // The available FrameGrabber classes include OpenCVFrameGrabber (opencv_videoio), // DC1394FrameGrabber, FlyCaptureFrameGrabber, OpenKinectFrameGrabber, OpenKinect2FrameGrabber, // RealSenseFrameGrabber, PS3EyeFrameGrabber, VideoInputFrameGrabber, and FFmpegFrameGrabber. FrameGrabber grabber = FrameGrabber.createDefault(0); grabber.start(); // CanvasFrame, FrameGrabber, and FrameRecorder use Frame objects to communicate image data. // We need a FrameConverter to interface with other APIs (Android, Java 2D, or OpenCV). OpenCVFrameConverter.ToIplImage converter = new OpenCVFrameConverter.ToIplImage(); // FAQ about IplImage and Mat objects from OpenCV: // - For custom raw processing of data, createBuffer() returns an NIO direct // buffer wrapped around the memory pointed by imageData, and under Android we can // also use that Buffer with Bitmap.copyPixelsFromBuffer() and copyPixelsToBuffer(). // - To get a BufferedImage from an IplImage, or vice versa, we can chain calls to // Java2DFrameConverter and OpenCVFrameConverter, one after the other. // - Java2DFrameConverter also has static copy() methods that we can use to transfer // data more directly between BufferedImage and IplImage or Mat via Frame objects. IplImage grabbedImage = converter.convert(grabber.grab()); int width = grabbedImage.width(); int height = grabbedImage.height(); IplImage grayImage = IplImage.create(width, height, IPL_DEPTH_8U, 1); IplImage rotatedImage = grabbedImage.clone(); // Objects allocated with a create*() or clone() factory method are automatically released // by the garbage collector, but may still be explicitly released by calling release(). // You shall NOT call cvReleaseImage(), cvReleaseMemStorage(), etc. on objects allocated this way. CvMemStorage storage = CvMemStorage.create(); // The OpenCVFrameRecorder class simply uses the CvVideoWriter of opencv_videoio, // but FFmpegFrameRecorder also exists as a more versatile alternative. FrameRecorder recorder = FrameRecorder.createDefault("output.avi", width, height); recorder.start(); // CanvasFrame is a JFrame containing a Canvas component, which is hardware accelerated. // It can also switch into full-screen mode when called with a screenNumber. // We should also specify the relative monitor/camera response for proper gamma correction. CanvasFrame frame = new CanvasFrame("Some Title", CanvasFrame.getDefaultGamma()/grabber.getGamma()); // Let's create some random 3D rotation... CvMat randomR = CvMat.create(3, 3), randomAxis = CvMat.create(3, 1); // We can easily and efficiently access the elements of matrices and images // through an Indexer object with the set of get() and put() methods. DoubleIndexer Ridx = randomR.createIndexer(), axisIdx = randomAxis.createIndexer(); axisIdx.put(0, (Math.random()-0.5)/4, (Math.random()-0.5)/4, (Math.random()-0.5)/4); cvRodrigues2(randomAxis, randomR, null); double f = (width + height)/2.0; Ridx.put(0, 2, Ridx.get(0, 2)*f); Ridx.put(1, 2, Ridx.get(1, 2)*f); Ridx.put(2, 0, Ridx.get(2, 0)/f); Ridx.put(2, 1, Ridx.get(2, 1)/f); System.out.println(Ridx); // We can allocate native arrays using constructors taking an integer as argument. CvPoint hatPoints = new CvPoint(3); while (frame.isVisible() && (grabbedImage = converter.convert(grabber.grab())) != null) { cvClearMemStorage(storage); // Let's try to detect some faces! but we need a grayscale image... cvCvtColor(grabbedImage, grayImage, CV_BGR2GRAY); CvSeq faces = cvHaarDetectObjects(grayImage, classifier, storage, 1.1, 3, CV_HAAR_FIND_BIGGEST_OBJECT | CV_HAAR_DO_ROUGH_SEARCH); int total = faces.total(); for (int i = 0; i < total; i++) { CvRect r = new CvRect(cvGetSeqElem(faces, i)); int x = r.x(), y = r.y(), w = r.width(), h = r.height(); cvRectangle(grabbedImage, cvPoint(x, y), cvPoint(x+w, y+h), CvScalar.RED, 1, CV_AA, 0); // To access or pass as argument the elements of a native array, call position() before. hatPoints.position(0).x(x-w/10) .y(y-h/10); hatPoints.position(1).x(x+w*11/10).y(y-h/10); hatPoints.position(2).x(x+w/2) .y(y-h/2); cvFillConvexPoly(grabbedImage, hatPoints.position(0), 3, CvScalar.GREEN, CV_AA, 0); } // Let's find some contours! but first some thresholding... cvThreshold(grayImage, grayImage, 64, 255, CV_THRESH_BINARY); // To check if an output argument is null we may call either isNull() or equals(null). CvSeq contour = new CvSeq(null); cvFindContours(grayImage, storage, contour, Loader.sizeof(CvContour.class), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE); while (contour != null && !contour.isNull()) { if (contour.elem_size() > 0) { CvSeq points = cvApproxPoly(contour, Loader.sizeof(CvContour.class), storage, CV_POLY_APPROX_DP, cvContourPerimeter(contour)*0.02, 0); cvDrawContours(grabbedImage, points, CvScalar.BLUE, CvScalar.BLUE, -1, 1, CV_AA); } contour = contour.h_next(); } cvWarpPerspective(grabbedImage, rotatedImage, randomR); Frame rotatedFrame = converter.convert(rotatedImage); frame.showImage(rotatedFrame); recorder.record(rotatedFrame); } frame.dispose(); recorder.stop(); grabber.stop(); } } Furthermore, after creating a pom.xml file with the following content: <project> <modelVersion>4.0.0</modelVersion> <groupId>org.bytedeco.javacv</groupId> <artifactId>demo</artifactId> <version>1.3.3</version> <dependencies> <dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.3.3</version> </dependency> </dependencies> </project> And by placing the source code above in src/main/java/Demo.java, we can use the following command to have everything first installed automatically and then executed by Maven: $ mvn compile exec:java -Dexec.mainClass=Demo Build Instructions If the binary files available above are not enough for your needs, you might need to rebuild them from the source code. To this end, the project files were created for: Maven 3.x http://maven.apache.org/download.html JavaCPP 1.3 https://github.com/bytedeco/javacpp JavaCPP Presets 1.3 https://github.com/bytedeco/javacpp-presets Once installed, simply call the usual mvn install command for JavaCPP, its Presets, and JavaCV. By default, no other dependencies than a C++ compiler for JavaCPP are required. Please refer to the comments inside the pom.xml files for further details. Project lead: Samuel Audet [samuel.audet at gmail.com](mailto:samuel.audet at gmail.com) Developer site: https://github.com/bytedeco/javacv Discussion group: http://groups.google.com/group/javacv

Linux 的64位JDK6 文件

Linux 的64位JDK6 文件

编译android必备,网上不是很好找的资源。

Android修改源码获取root权限执行su命令的git diff记录

Android修改源码获取root权限执行su命令的git diff记录

打开链接下载源码: https://pan.quark.cn/s/7b24b43d028d 通过调整源代码使应用程序能够获取root权限并运行su命令的git差异记录

Oracle  Application FrameworkApplication Development  Framework

Oracle Application FrameworkApplication Development Framework

Oracle Application Framework OAF and Application Development Framework ADF Oracle Application Framework OAF and Application Development Framework ADF Oracle Application Framework OAF and Application Development Framework ADF Oracle Application Framework OAF and Application Development Framework ADF ">Oracle Application Framework OAF and Application Development Framework ADF Oracle Application Framework OAF and Application Development Framework ADF Oracle Application Framework OAF and Application Development Framework ADF Oracle Application Framework OAF and Application Deve [更多]

面向风光不确定性的电-热-气-氢综合能源系统Wasserstein分布鲁棒优化调度研究(Matlab代码实现)

面向风光不确定性的电-热-气-氢综合能源系统Wasserstein分布鲁棒优化调度研究(Matlab代码实现)

面向风光不确定性的电-热-气-氢综合能源系统Wasserstein分布鲁棒优化调度研究(Matlab代码实现)内容概要:本文针对风光发电固有的不确定性,研究了电-热-气-氢多能耦合综合能源系统的优化调度问题,提出了一种基于Wasserstein距离的分布鲁棒优化方法。该方法构建了以系统运行成本和碳排放成本最小化为目标的两阶段优化模型,通过引入Wasserstein球来描述风光出力的概率分布模糊集,有效规避了传统随机规划对精确概率分布的依赖,在保证调度方案经济性的同时,显著提升了其在不确定性环境下的鲁棒性和可靠性。研究详细阐述了模型的数学推导、求解算法(如C&CG算法)及在典型算例系统上的仿真验证过程。; 适合人群:具备电力系统、优化理论或能源系统相关背景的研究生、科研人员及工程技术人员。; 使用场景及目标:①为应对高比例可再生能源接入带来的不确定性挑战,提供一种先进的鲁棒优化调度理论与方法;②指导综合能源系统(IES)的规划与运行决策,实现多能互补、降本增效与低碳发展的协同优化。; 阅读建议:读者应重点理解Wasserstein分布鲁棒优化的基本思想及其相较于传统随机/鲁棒优化的优势,结合Matlab代码实现,动手复现并分析不同参数(如不确定性预算、Wasserstein半径)对调度结果的影响,以深入掌握该方法的工程应用价值。

device-tree-compiler包版本1.4.5-3 amd64

device-tree-compiler包版本1.4.5-3 amd64

下载代码方式:https://pan.quark.cn/s/a4b39357ea24 fdtput软件的版本已经更新到了1.4.5版本,需要下载device-tree-compiler_1.4.5-3_amd64.deb这个文件,并使用dpkg -i命令来进行安装操作

ArteryTek.AT32F403A-407-DFP.2.2.0.pack

ArteryTek.AT32F403A-407-DFP.2.2.0.pack

ArteryTek.AT32F403A-407-DFP.2.2.0.pack比上一版更新,支持更多芯片

小肥柴的Hadoop之旅 快速实验篇(A9-1)基于多源气象因子的降水相关性分析与时空格局挖掘 的相关实验脚本和数据

小肥柴的Hadoop之旅 快速实验篇(A9-1)基于多源气象因子的降水相关性分析与时空格局挖掘 的相关实验脚本和数据

小肥柴的Hadoop之旅 快速实验篇(A9-1)基于多源气象因子的降水相关性分析与时空格局挖掘 的相关实验脚本和数据,方便查看

Delphi 13.2控件之永康期末卷.rar

Delphi 13.2控件之永康期末卷.rar

Delphi 13.2控件之永康期末卷.rar

无人机路径规划、轨迹生成及利用A、Theta、最小吸附优化和MATLAB中的PID跟踪进行控制。.zip

无人机路径规划、轨迹生成及利用A、Theta、最小吸附优化和MATLAB中的PID跟踪进行控制。.zip

1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。


java项目-第174期ssm高校信息资源共享平台-ssm毕业设计

java项目-第174期ssm高校信息资源共享平台-ssm毕业设计

java项目-第174期ssm高校信息资源共享平台-ssm毕业设计

基于零信任的微服务动态访问控制.zip

基于零信任的微服务动态访问控制.zip

微服务下传统"内网可信"边界模型失效:静态RBAC粒度粗、突破边界后可横向移动、静态JWT长期有效、配置无法感知环境变化。本文设计零信任微服务动态访问控制系统,以"永不信任、持续验证"为核心,构建身份、环境、行为三维信任评估模型,按评分分级放行、二次验证、降权或拒绝,形成"认证-评估-授权-拦截-审计"闭环。 系统基于Java 17与Spring Cloud实现,Spring Authorization Server完成OAuth2授权与JWT签发,Gateway统一拦截校验,策略服务按评分动态下发权限。功能分身份认证、信任评估、动态授权、网关拦截、审计日志五模块,配六张核心数据表。信任评估融合认证强度、凭据状态等身份证据,设备指纹、地理位置等环境证据,以及访问频率、基线偏离等行为证据,按0.40/0.25/0.35权重融合为0~1评分;评分随事件与时间衰减演化,0.35秒内同步至网关。 在四业务服务、一万用户、百万请求环境测试:越权拦截率99.2%,误拦截率0.6%,权限调整0.35秒,校验时延15毫秒,网关吞吐1.2万QPS;越权读、写、横向访问、提权、令牌重放五类攻击拦截率均≥98.8%。相较静态RBAC、静态Token、单因子风险评分三类基线,本系统在拦截率、误拦截率与AUC上全面占优;消融实验表明三维证据互补,行为基线对识别"凭证合法但行为异常"的盗用与内部威胁尤为关键。 【课程报告内容】 摘要 第1章 绪论 第2章 相关技术与理论 第3章 系统需求分析 第4章 系统总体设计 第5章 系统详细设计与实现 第6章 系统测试与分析 第7章 总结与展望 参考文献 附件-实现指南

几何旋转和天线校准模式对GNSS相位缠绕的组合效应(Matlab代码实现)

几何旋转和天线校准模式对GNSS相位缠绕的组合效应(Matlab代码实现)

内容概要:本文系统研究了几何旋转和天线校准模式对全球导航卫星系统(GNSS)相位缠绕的组合效应,提出了一种基于Matlab的仿真与分析方法。通过构建精确的数学模型,深入分析了不同几何姿态变化及天线相位中心校准方式对GNSS载波相位观测值的影响机制,重点探讨了相位缠绕现象在动态旋转条件下的演变规律及其对高精度定位性能的潜在影响。研究结合理论推导与Matlab代码实现,实现了多场景下的数据模拟、相位缠绕补偿计算及结果可视化,验证了模型的有效性和实用性,为提升GNSS在复杂运动平台上的定位精度提供了理论支持与技术路径。; 适合人群:具备一定GNSS测量原理基础和Matlab编程能力的科研人员、导航定位领域工程师以及从事高精度定位相关研究的高校研究生。; 使用场景及目标:①用于深入理解和量化几何旋转与天线校准对GNSS相位缠绕的耦合影响;②为动态载体(如无人机、航天器)上的GNSS高精度姿态测定与定位提供误差修正方案;③作为教学与科研中的典型案例,辅助掌握GNSS误差源建模与Matlab仿真实现方法。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,通过调整旋转角度、天线指向及校准参数等方式开展仿真实验,观察相位缠绕的变化趋势,从而深刻理解其物理机制,并探索有效的补偿策略。

块设备层三部曲①:块设备层总览(包裹、体检表与节奏大师).docx

块设备层三部曲①:块设备层总览(包裹、体检表与节奏大师).docx

块设备层三部曲①:块设备层总览(包裹、体检表与节奏大师).docx

(简化)Swift-URLSession+Codable(网络底层封装).zip

(简化)Swift-URLSession+Codable(网络底层封装).zip

Swift-URLSession+Codable(网络底层封装).zip

分布式电源接入对配电网影响的研究(Matlab代码实现)

分布式电源接入对配电网影响的研究(Matlab代码实现)

内容概要:本文围绕分布式电源接入对配电网的影响展开研究,利用Matlab代码实现相关仿真与分析,重点探讨了分布式电源并网后对配电网电压分布、潮流变化、电能质量及系统稳定性等方面的作用机制。研究通过构建典型配电网模型,结合光伏、风电等分布式电源的出力特性,仿真分析不同渗透率、接入位置和运行方式下的配电网响应,进而评估其影响规律,并提出相应的优化对策与解决方案。文中还可能涉及无功优化、灵敏度分析、智能算法配置等技术手段,以提升配电网对分布式电源的接纳能力。; 适合人群:具备电力系统基础知识,熟悉Matlab/Simulink仿真环境,从事新能源并网、配电网规划与运行等相关领域的科研人员及工程技术人员。; 使用场景及目标:①掌握分布式电源接入对配电网电压、潮流等关键指标的影响规律;②学习基于Matlab的配电网建模与仿真方法;③探索提升配电网稳定性和电能质量的优化配置策略; 阅读建议:建议读者结合文中提供的Matlab代码,逐步复现仿真过程,深入理解模型构建逻辑与算法实现细节,同时可拓展应用于IEEE 33节点等标准测试系统,加强实践能力。

最新推荐最新推荐

recommend-type

城市空气质量时空预测与污染源贡献度分析.zip

大气污染是影响公众健康与生态环境的重要问题,精准的空气质量时空预测与污染源贡献度量化是精准治污的关键支撑。针对现有研究多源融合不充分、时空关联刻画不足、预测与源解析割裂三方面缺陷,本文设计实现了城市空气质量时空预测与污染源贡献度分析系统,融合监测、气象、工业排放与交通四类数据,构建基于时空注意力的LSTM(STAM-LSTM)预测模型与基于正定矩阵因子分解(PMF)的源解析模型,形成数据融合-特征工程-预测-源解析-可视化闭环。 系统实现四类数据时空对齐与融合,构建时序与空间邻域特征,以普通克里金插值生成1km网格浓度场;STAM-LSTM引入时空注意力自适应学习站点间污染传输时变权重,以72小时输入预测未来24小时逐小时PM2.5浓度;PMF识别交通、工业、燃煤、扬尘与二次生成五个源因子,量化各源全年贡献度并分析时空演变。 实验表明:STAM-LSTM预测RMSE 24.6、MAE 17.8、R² 0.88,相对LSTM基线(30.2)提升18.5%;普通克里金插值误差8.9,优于反距离加权(11.4);源解析显示交通源28.4%、工业源23.1%、燃煤源19.6%为主要贡献源,冬季燃煤源升至27.3%、早高峰交通源达34.8%,下风向工业源贡献高出上风向8~12个百分点;减排情景显示交通源减排20%可使年均PM2.5下降5.7%,与源贡献度排序一致。 系统按五模块14组件实现,功能测试16项用例全部通过,为大气污染预警、源管控与减排政策制定提供了决策依据。 【课程报告内容】 摘要 第1章 绪论 第2章 相关技术与理论 第3章 系统需求分析 第4章 系统总体设计 第5章 系统详细设计与实现 第6章 系统测试与分析 第7章 总结与展望 参考文献 附件-实现指南
recommend-type

基于iTransformer-BiGRU-KAN多模型融合的滚动轴承剩余寿命预测研究(Python代码实现)

基于iTransformer-BiGRU-KAN多模型融合的滚动轴承剩余寿命预测研究(Python代码实现)内容概要:本文提出了一种基于iTransformer-BiGRU-KAN多模型融合的滚动轴承剩余寿命预测方法,旨在通过结合多种先进深度学习模型的优势,提升在复杂工况下的预测精度与鲁棒性。该方法利用iTransformer捕捉长期时间序列中的全局依赖关系,通过BiGRU模型提取双向时序特征,最后引入KAN(Kernel Attention Network)增强非线性映射与关键特征的自适应加权能力,实现对轴承退化过程的精准建模。文中详细介绍了模型架构设计、训练流程及在公开数据集上的实验验证,结果表明该融合模型相比单一模型在预测精度和稳定性方面均有显著提升。; 适合人群:具备一定机器学习与深度学习基础,从事设备故障诊断、工业大数据分析或智能运维相关领域的研究人员及工程技术人员,尤其适合研究生及以上学历或有相关项目经验的专业人员。; 使用场景及目标:①应用于工业设备状态监测与预测性维护系统中,实现对滚动轴承等关键部件剩余寿命的精准预测;②为复杂时间序列回归任务提供多模型融合的设计思路与技术参考;③推动深度学习在智能制造与工业物联网领域的落地应用。; 阅读建议:建议读者结合Python代码实现部分,深入理解各子模型的接口设计与融合逻辑,重点关注特征融合机制与注意力权重的可视化分析,以便在实际项目中灵活调整与优化模型结构。
recommend-type

中文版本的几何画板 几何必备

有时候写代码遇到了数学问题可以通过这个分析。
recommend-type

python4.14版本的环境下载器

可以快速的通过python下载器来下载python3.14版本。
recommend-type

几何旋转和天线校准模式对GNSS相位缠绕的组合效应(Matlab代码实现)

几何旋转和天线校准模式对GNSS相位缠绕的组合效应(Matlab代码实现)内容概要:本文研究了几何旋转和天线校准模式对全球导航卫星系统(GNSS)相位缠绕的组合效应,并提供了基于Matlab的代码实现方案。相位缠绕是GNSS高精度定位中的重要误差源,受卫星与接收机相对几何关系及天线相位中心变化的共同影响。文章通过建模分析几何旋转与天线校准参数对相位缠绕的影响机制,探讨二者耦合作用下的修正方法,旨在提升GNSS数据处理的精度与可靠性。研究涵盖了理论建模、算法实现与仿真实验,结合Matlab工具进行数值模拟与结果可视化,验证了所提方法的有效性。; 适合人群:具备一定GNSS基础知识和Matlab编程能力的科研人员、研究生及从事高精度定位相关工作的技术人员。; 使用场景及目标:①用于GNSS高精度数据处理中相位缠绕误差的精确建模与修正;②支持地壳形变监测、精密授时、卫星定轨等对定位精度要求较高的应用场景;③为相关算法开发与教学研究提供可复现的代码实例。; 阅读建议:建议读者结合GNSS误差处理的相关理论,边运行代码边理解算法细节,重点关注几何旋转模型与天线校准参数的集成方式,并可通过修改参数进行敏感性分析以加深理解。
recommend-type

学生成绩管理系统C++课程设计与实践

资源摘要信息:"学生成绩信息管理系统-C++(1).doc" 1. 系统需求分析与设计 在进行学生成绩信息管理系统开发前,首先需要进行系统需求分析,这是确定系统开发目标与范围的过程。需求分析应包括数据需求和功能需求两个方面。 - 数据需求分析: - 学生成绩信息:需要收集学生的姓名、学号、课程成绩等数据。 - 数据类型和长度:明确每个数据项的数据类型(如字符串、整型等)和长度,例如学号可能是字符串类型且长度为一定值。 - 描述:详细描述每个数据项的意义,以确保系统能够准确处理。 - 功能需求分析: - 列出功能列表:用户界面应提供清晰的操作指引,列出所有可用功能。 - 查询学生成绩:系统应能通过学号或姓名查询学生的成绩信息。 - 增加学生成绩信息:允许用户添加未保存的学生成绩信息。 - 删除学生成绩信息:能够通过学号或姓名删除已经保存的成绩信息。 - 修改学生成绩信息:通过学号或姓名修改已有的成绩记录。 - 退出程序:提供安全退出程序的选项,并确保所有修改都已保存。 2. 系统设计 系统设计阶段主要完成内存数据结构设计、数据文件设计、代码设计、输入输出设计、用户界面设计和处理过程设计。 - 内存数据结构设计: - 使用链表结构组织内存中的数据,便于动态增删查改操作。 - 数据文件设计: - 选择文本文件存储数据,便于查看和编辑。 - 代码设计: - 根据功能需求,编写相应的函数和模块。 - 输入输出设计: - 设计简洁明了的输入输出提示信息和操作流程。 - 用户界面设计: - 用户界面应为字符界面,方便在命令行环境下使用。 - 处理过程设计: - 设计数据处理流程,确保每个操作都有明确的处理逻辑。 3. 系统实现与测试 实现阶段需要根据设计阶段的成果编写程序代码,并进行系统测试。 - 程序编写: - 完成系统设计中所有功能的程序代码编写。 - 系统测试: - 设计测试用例,通过测试用例上机测试系统。 - 记录测试方法和测试结果,确保系统稳定可靠。 4. 设计报告撰写 最后,根据系统开发的各个阶段,撰写详细的设计报告。 - 系统描述:包括问题说明、数据需求和功能需求。 - 系统设计:详细记录内存数据结构设计、数据文件设计、代码设计、输入/输出设计、用户界面设计、处理过程设计。 - 系统测试:包括测试用例描述、测试方法和测试结果。 - 设计特点、不足、收获和体会:反思整个开发过程,总结经验和教训。 时间安排: - 第19周(7月12日至7月16日)完成项目。 - 7月9日8:00到计算机学院实验中心(三楼)提交程序和课程设计报告。 指导教师和系主任(或责任教师)需要在文档上签名确认。 系统需求分析: - 使用表格记录系统需求分析的结果,包括数据项、数据类型、数据长度和描述。 - 分析数据项如学生成绩信息、状态器、链表节点等,确定其属性和行为。 以上就是文档中提到的学生成绩信息管理系统开发的关键知识点。开发此类系统需要熟练掌握C++编程基础,了解面向对象的程序设计思想,以及熟悉文件操作和链表等数据结构的应用。此外,良好的软件开发流程意识、测试意识和文档撰写能力也是必不可少的。
recommend-type

别再手动拖拽了!用Lumerical脚本批量创建FDTD仿真结构(附完整代码)

# 告别低效建模:Lumerical脚本自动化实战指南 在光子学仿真领域,时间就是科研生命线。当同行还在GUI界面里反复点击菜单时,你已经用脚本批量生成了20组参数化结构——这不是未来场景,而是每位FDTD用户都应该掌握的基础生产力革命。本文将彻底改变你与Lumerical的交互方式,从手动拖拽的农耕时代,跃迁到自动化建模的工业文明。 ## 1. 为何脚本建模是必然选择 2019年Nature Photonics的一项研究显示,科研工作者在仿真工具上平均浪费37%的时间在重复性操作上。对于需要参数扫描的纳米光学结构设计,这个数字可能更高。手动创建10个不同尺寸的纳米柱阵列意味着: -
recommend-type

Java邮件解析任务中,如何安全高效地提取HTML邮件内容并避免硬编码、资源泄漏和类型转换异常?

<think>我们被要求优化一段Java代码,该代码用于处理邮件(特别是来自特定发件人的构建通知邮件)。代码的主要问题包括: 1. 重复获取邮件内容:在检查MIME类型后,多次调用`msg[i].getContent()`,这可能导致性能问题或流关闭异常。 2. 类型转换问题:直接将邮件内容转换为`Multipart`而不进行类型检查,可能引发`ClassCastException`。 3. 代码结构问题:逻辑嵌套过深,可读性差,且存在重复代码(如插入邮件详情的操作在两个地方都有)。 4. 硬编码和魔法值:例如在解析HTML表格时使用了硬编码的索引(如list3.get(10)),这容易因邮件
recommend-type

RH公司应收账款管理优化策略研究

资源摘要信息:"本文针对RH公司的应收账款管理问题进行了深入研究,并提出了改进策略。文章首先分析了应收账款在企业管理中的重要性,指出其对于提高企业竞争力、扩大销售和充分利用生产能力的作用。然后,以RH公司为例,探讨了公司应收账款管理的现状,并识别出合同管理、客户信用调查等方面的不足。在此基础上,文章提出了一系列改善措施,包括完善信用政策、改进业务流程、加强信用调查和提高账款回收力度。特别强调了建立专门的应收账款回收部门和流程的重要性,并建议在实际应用过程中进行持续优化。同时,文章也意识到企业面临复杂多变的内外部环境,因此提出的策略需要根据具体情况调整和优化。 针对财务管理领域的专业学生和从业者,本文提供了一个关于应收账款管理问题的案例研究,具有实际指导意义。文章还探讨了信用管理和征信体系在应收账款管理中的作用,强调了它们对于提升企业信用风险控制和市场竞争能力的重要性。通过对比国内外企业在应收账款管理上的差异,文章总结了适合中国企业实际环境的应收账款管理方法和策略。" 根据提供的文件内容,以下是详细的知识点: 1. 应收账款管理的重要性:应收账款作为企业的一项重要资产,其有效管理关系到企业的现金流、财务健康以及市场竞争力。不良的应收账款管理会导致资金链断裂、坏账损失增加等问题,严重影响企业的正常运营和长远发展。 2. 应收账款的信用风险:在信用交易日益频繁的商业环境中,企业必须对客户信用进行评估,以便采取合理的信用政策,降低信用风险。 3. 合同管理的薄弱环节:合同是应收账款管理的法律基础,严格的合同管理能够保障企业权益,减少因合同问题导致的应收账款风险。 4. 客户信用调查:了解客户的信用状况对于预测和控制应收账款风险至关重要。企业需要建立有效的客户信用调查机制,识别和筛选信用良好的客户。 5. 应收账款回收策略:企业应建立有效的账款回收机制,包括定期的账款跟进、逾期账款的催收等。同时,建立专门的应收账款回收部门可以提升回收效率。 6. 应收账款管理流程优化:通过改进企业内部管理流程,如简化审批流程、提高工作效率等措施,能够提升应收账款的管理效率。 7. 应收账款管理策略的调整和优化:由于企业的内外部环境复杂多变,因此制定的管理策略需要根据实际情况进行动态调整和持续优化。 8. 信用管理和征信体系的作用:建立和完善企业内部信用管理体系和征信体系,有助于企业更好地控制信用风险,并在市场竞争中占据有利地位。 9. 对比国内外应收账款管理实践:通过研究国内外企业在应收账款管理上的不同做法和经验,可以借鉴先进的管理理念和方法,提升国内企业的应收账款管理水平。 综上所述,本文深入探讨了应收账款管理的多个方面,为RH公司乃至其他同类型企业提供了应收账款管理的改进方向和策略,对于财务管理专业的教育和实践都具有重要的参考价值。
recommend-type

新手别慌!用BingPi-M2开发板带你5分钟搞懂Tina Linux SDK目录结构

# 新手别慌!用BingPi-M2开发板带你5分钟搞懂Tina Linux SDK目录结构 第一次拿到BingPi-M2开发板时,面对Tina Linux SDK里密密麻麻的文件夹,我完全不知道从哪下手。就像走进一个陌生的大仓库,每个货架上都堆满了工具和零件,却找不到操作手册。这种困惑持续了整整两天,直到我意识到——理解目录结构比死记硬背每个文件更重要。 ## 1. 为什么SDK目录结构如此重要 想象你正在组装一台复杂的模型飞机。如果所有零件都混在一个箱子里,你需要花大量时间寻找每个螺丝和面板。但如果有分门别类的隔层,标注着"机身部件"、"电子设备"、"紧固件",组装效率会成倍提升。Ti