- acme自签证书
获取acme自签证书1、安装安装acmegitclonehttps://gitee.com/neilpang/acme.sh.gitcdacme.sh./
[email protected]、获取阿里云ak/sk3、生成证书通过环境变量导入ak/skexportAli_Key="控制台获取ak"exportAli_Secret="控制台获取sk"生成证书(有效期3个月
- 【docker】如何正确拉取langgraph-api
等风来不如迎风去
AI入门与实战docker容器运维
加这些配置都没用#设置代理环境变量exportHTTP_PROXY=http://127.0.0.1:7890exportHTTPS_PROXY=http://127.0.0.1:7890#设置更长的超时时间exportDOCKER_CLIENT_TIMEOUT=
- 本地文件自动提交到仓库
从未、淡定
gitee服务端前端
背景将本地目录做一个存储仓库,将归档的文件放入其中。自动同步到远程仓库。仓库配置省略配置密钥用户可以gitpull\gitpush\gitcommit自动拉取、更新脚本文件名:autosave.sh#!/bin/zsh#设置变量LOCAL_DIR=$1#进入工作目录cd"$LOCAL_DIR"||{echo"无法进入目录$LOCAL_DIR";exit1;}#拉取代码pvsh(){gitrev-p
- 卡片区样式,按钮样式,运营模块
哎呦你好
CSS+HTML案例java前端javascriptcss3csshtml
最近写了一个卡片区的样式,效果如下,HBuilder编辑器,样式代码使用scss语法编写。在Vue组件的标签中添加lang="scss"属性后,Vue(以及构建工具如Webpack)会识别这个属性,并使用相应的预处理器(如sass-loader)将SCSS代码编译成普通的CSS代码,这样浏览器才能识别和执行它。页面中的其他样式如:flex,wrap,ustify-between是flex布局的
- OpenHarmony应用ServiceExtensionAbility的使用
全村最肉的人
OpenHarmony常用技巧OpenHarmony
文章目录概述环境一、创建ServiceExtensionAbility服务二、配置ServiceExtensionAbility服务三、应用特权配置1.提取当前设备系统中的特权配置文件install_list_capability.json,文件位于/etc/app/中2.在文档最下面添加应用的信息3.将特权配置文件install_list_capability.json推送回系统中,覆盖系统配置
- springboot使用@Transactional失效问题排查
1、排查数据库引擎是不是InnoDB2、启动类是否开启@EnableTransactionManagement3、重点在使用@Transactional(rollbackFor=Exception.class)这个注解的类或者方法中是否有trycatch如果有,要在catch中设置手动回滚//设置手动回滚TransactionAspectSupport.currentTransactionStat
- ARM CMSIS 资源文件下载介绍
马沛茂
ARMCMSIS资源文件下载介绍【下载地址】ARMCMSIS资源文件下载介绍ARMCMSIS资源库为开发者提供了ARMCortex-M处理器系列的标准化软件接口,助力嵌入式系统开发更加高效。该库包含ARMCMSIS5.5.0和5.6.0版本的打包资源,涵盖了核心的软件接口标准,帮助开发者简化代码设计,提升开发效率与代码可重用性。无论是初学者还是经验丰富的开发者,都能通过这些资源快速构建稳定、高效的
- CMSIS应用于研究指南图文教程
硬小二
《ST32从入门到就业》单片机stm32armKeil
欢迎点击浏览更多高清视频演示0,概述本文旨在帮助大家理解什么是CMSIS标准和CMSIS标准的基本内容,并为大家深入研究CMSIS提供途径。目录0,概述1,什么是CMSIS标准2,CMSIS文件获取方法3,总结1,什么是CMSIS标准CMSIS英文全程为:CortexMicrocontrollerSoftwareInterfaceStandard可翻译为“微控制器表层软件接口标准”。由于ARM是制
- 【ARM】CMSIS 软件标准接口
LuckiBit
嵌入式嵌入式CMSISARMCortexc语言c++
目录CMSIS:CortexMicrocontrollerSoftwareInterfaceStandard1.概述2.CMSIS-Core2.1概述2.2关键组件2.3示例代码2.4详细解释3.CMSIS-DSP3.1概述3.2关键组件3.3示例代码3.4详细解释4.CMSIS-RTOS4.1概述4.2关键组件4.3示例代码4.4详细解释5.CMSIS-Driver5.1概述5.2关键组件5.3
- 深入解析privacy.sexy项目的应用层架构与实现
郁蝶文Yvette
深入解析privacy.sexy项目的应用层架构与实现privacy.sexyOpen-sourcetooltoenforceprivacy&securitybest-practicesonWindows,macOSandLinux,becauseprivacyissexy项目地址:https://gitcode.com/gh_mirrors/pr/privacy.sexy项目概述privacy.
- 【SPIE出版|EI、Scopus双检索】2025年绿色能源与环境系统国际学术会议(GEES 2025)
科研小刘带你玩学术
能源全文检索人工智能
2025年绿色能源与环境系统国际学术会议(GEES2025)会议时间:2025年6月20-22日会议地点:中国-湖北最终截稿日期:2025年6月8日注册截止时间:2025年6月8日提交检索类型:EICompendex和Scopus签约出版商:SPIE-theInternationalSocietyforOpticsandPhotonics,被接受的论文全文将在SPIE-国际光学工程学会论文集(IS
- Attempt to invoke virtual method ‘void com.dawn.java.ui.widget.TopToolbar.setMainTitle(java.lang.Str
微信公众号:AI创造财富
python开发语言androidxandroid安卓android-studio
E/AndroidRuntime:FATALEXCEPTION:mainProcess:com.kte.uniformscan,PID:9198java.lang.RuntimeException:UnabletostartactivityComponentInfo{com.kte.uniformscan/com.dawn.java.ui.homePage.HomeActivity}:java.l
- Error: Waveform5.vwf.vt(30): near “1“: syntax error, unexpected INTEGER NUMBER, expecting ‘)‘ Erro
嘉陵妹妹
quartusquartus
Error:Waveform5.vwf.vt(30):near“1”:syntaxerror,unexpectedINTEGERNUMBER,expecting‘)’Error:e:/quartus/modelsim_ase/win32aloem/vlogfailed.ExecutingONERRORcommandatmacro./deng01.doline4解决方案:1:将输出端口output改
- ReadTimeoutError: HTTPSConnectionPool(host=‘files.pythonhosted.org‘, port=443): Read timed out.
微信公众号:AI创造财富
python开发语言
ERROR:Exception:Traceback(mostrecentcalllast):File"/home/powersys/work/miniconda/lib/python3.13/site-packages/pip/_vendor/urllib3/response.py",line438,in_error_catcheryieldFile"/home/powersys/work/min
- linux部署Java项目流程
呆萌IT少女
linux项目部署mysqllinuxjava服务器nginx
项目部署流程开始准备需要的包,我用的是openJDK8,Mysql8,nginx0.6.361.搭建Linux环境若操作系统为windows环境,首先安装虚拟机并搭建对应的linux操作系统。2.安装Openjdk1.81.创建jdk目录mkdir-p/usr/local/javacd/usr/local/java2.解压tar-zxvfjdk包3.配置环境变量vim/etc/profileexp
- YOLOV10的tensorrt C++部署
dddccc1234
YOLO
根据博客进行python版本安装YOLOv10最全使用教程(含ONNX和TensorRT推理)-CSDN博客并将pt转为onnx:yoloexportmodel=yolov10s.ptformat=onnxopset=13simplify然后采用:https://github.com/hamdiboukamcha/yolov10-tensorrt.git进行c++编译配置好cuda11.7tens
- Xilinx FPGA ICAP原语实现多重配置
whik1194
ISEVivadoMicroBlaze系列教程FPGAxilinxICAPMultiboot多重配置
文章目录1.FPGA可以运行几个固件2.XilinxICAP原语简介3.ICAP原语模板的使用4.ICAP在Spartan-6上的使用5.ICAP在Kintex-7上的使用工程下载1.FPGA可以运行几个固件众所周知,常见的FPGA通常为SRAM结构,固件程序一般存放在外置的串行Flash中,比如SPIFlash,M25P16或N25Q128等。FPGA启动时,一般先从SPI起始地址开始加载数据到
- JAX study notes[9]
身在此心在彼
计算综合python开发语言
文章目录usingfunctionfrommoudleimportthespecialfuntionapplythefunctionimportedfromthelibrarywriteintofileusingosmoduleusingsysmoduletogettheargumentsofsysreferencesnotation#单行注释variablex=10#整数y=3.14#浮点数na
- (PAT甲级)1019 General Palindromic Number 进制转换+回文数 (进制转换问题的实用技巧)
JaredYe
算法c++c语言pat考试
AnumberthatwillbethesamewhenitiswrittenforwardsorbackwardsisknownasaPalindromicNumber.Forexample,1234321isapalindromicnumber.Allsingledigitnumbersarepalindromicnumbers.Althoughpalindromicnumbersaremos
- day03 链表part01
hwt819
链表数据结构
203.移除链表元素使用dummy辅助,使用cur来遍历cur遍历到要操作节点的前一个节点。classSolution{publicListNoderemoveElements(ListNodehead,intval){ListNodedummy=newListNode(0);dummy.next=head;ListNodecur=dummy;//循环到链表结束while(cur.next!=nu
- day04 链表part02
24.两两交换链表中的节点想不明白的时候,画图会很直观。写好操作的伪代码,按照伪代码写。classSolution{publicListNodeswapPairs(ListNodehead){if(head==null||head.next==null){//0个或者1个,直接返回returnhead;}ListNodedummy=newListNode(0);dummy.next=head;Li
- 主线程,协程和互斥锁
aliven1
gogolang
packagemain//路径上加上包的唯一标识demo14,线程和协程,是go的核心import("fmt""time""sync")//需求:计算1-200之间所有数的阶乘,并且把各个数的阶乘放入map中。最后显示出来。使用协程完成。var(map1=make(map[int]int,10)//声明一个全局maplocksync.Mutex//互斥锁)funcmain(){fori:=1;i<
- 《凤凰架构》C7-分布式服务
Epi_HHH
阅读笔记java
目录一、服务发现二、网关路由三、负载均衡一、服务发现服务发现就是动态定位服务实例地址,解决分布式环境下服务实例IP和端口可能变化的问题1)基础概念远程服务调用精确坐标:全限定名+端口号+服务标识,如:order-service.default.svc.cluster.local:50051/com.example.order.OrderService/getOrderById服务标识:与具体的应用
- 用Pytorch训练手写签名模型并进行签名识别
TBM矩阵
#AI体系学习pytorch人工智能python
整体思路收集至少两个人的手写签名图片,每个人至少20张使用Pytorch进行模型训练使用Flask搭建Web服务使用Html/JavaScript实现前端调用进行签名识别项目结构signature-systemdatatrainuser001001.png...user002001.png...templatesindex.htmlapp.pymodel.pytrain.py建模:model.py
- Node.js特训专栏-实战进阶:7.Express模板引擎选型与使用
爱分享的程序员
Node.jsnode.js前端javascript
欢迎来到Node.js实战专栏!在这里,每一行代码都是解锁高性能应用的钥匙,让我们一起开启Node.js的奇妙开发之旅!Node.js特训专栏主页专栏内容规划详情Express模板引擎选型与使用全解析:打造动态Web页面的利器在基于Express构建Web应用时,模板引擎是生成动态页面的核心组件。它允许开发者将数据与HTML结构分离,通过简单的语法将后端数据动态填充到页面中。市面上存在多种模板引擎
- 多线程同步机制:深入解析互斥锁的原理与实践
码事漫谈
c++javajvm数据结构
文章目录1.多线程同步问题1.1数据竞争1.2未定义行为2.互斥锁(Mutex)的原理2.1加锁2.2解锁3.线程的运行、阻塞、等待状态3.1运行状态(Running)3.2阻塞状态(Blocked)3.3等待状态(Waiting)3.4状态转换流程图图的解释4.C++中的`std::mutex`4.1使用`std::mutex`4.2`std::lock_guard`5.总结在多线程编程中,同步
- React系统学习之路
莲华君
react.js学习前端
React系统学习之路学习目录第1章:React入门介绍React的基本概念和应用场景安装Node.js和npm创建第一个React应用React的JSX语法组件的基本结构和生命周期第2章:组件与状态管理函数组件与类组件的区别状态(State)和属性(Props)的使用受控组件与非受控组件高阶组件(HOC)的概念和实现使用ContextAPI进行跨层级状态传递第3章:ReactHooksuseSt
- Windows 比较Excel文件助手
阿富软件园
电脑开源软件windows
在日常工作中,Excel是处理数据的常用工具,软件下载地址安装包但面对两份相似的工作表,如何快速准确地找出它们之间的差异,常常让许多Excel新手感到头疼。不过,现在有一款专为Excel小白设计的辅助工具,能够轻松解决这一难题,堪称Excel小白的福音。这款工具的使用方法非常简单,用户只需直接导入两份需要对比的工作表,软件便会自动启动其强大的数据对比功能。它能够主动且精准地定位出两份工作表中不同数
- Node.js 后端开发:与前端的完美结合
Node.js后端开发:与前端的完美结合关键词:Node.js、后端开发、前后端分离、RESTfulAPI、Express、性能优化、全栈开发摘要:本文深入探讨Node.js在后端开发中的优势及其与前端的完美结合方式。我们将从Node.js的核心特性出发,分析其适合后端开发的原因,详细介绍如何构建高性能的RESTfulAPI服务,探讨前后端分离架构的最佳实践,并通过实际项目案例展示Node.js如
- React用户交互事件
在React中处理用户交互事件(如点击、输入、提交等)的方式与原生JavaScript类似,但有一些语法差异和最佳实践。以下是常见交互事件的处理方法及代码示例:一、基本事件处理(点击、输入等)1.点击事件(onClick)importReact,{useState}from'react';constButtonExample=()=>{const[count,setCount]=useState(
- 312个免费高速HTTP代理IP(能隐藏自己真实IP地址)
yangshangchuan
高速免费superwordHTTP代理
124.88.67.20:843
190.36.223.93:8080
117.147.221.38:8123
122.228.92.103:3128
183.247.211.159:8123
124.88.67.35:81
112.18.51.167:8123
218.28.96.39:3128
49.94.160.198:3128
183.20
- pull解析和json编码
百合不是茶
androidpull解析json
n.json文件:
[{name:java,lan:c++,age:17},{name:android,lan:java,age:8}]
pull.xml文件
<?xml version="1.0" encoding="utf-8"?>
<stu>
<name>java
- [能源与矿产]石油与地球生态系统
comsci
能源
按照苏联的科学界的说法,石油并非是远古的生物残骸的演变产物,而是一种可以由某些特殊地质结构和物理条件生产出来的东西,也就是说,石油是可以自增长的....
那么我们做一个猜想: 石油好像是地球的体液,我们地球具有自动产生石油的某种机制,只要我们不过量开采石油,并保护好
- 类与对象浅谈
沐刃青蛟
java基础
类,字面理解,便是同一种事物的总称,比如人类,是对世界上所有人的一个总称。而对象,便是类的具体化,实例化,是一个具体事物,比如张飞这个人,就是人类的一个对象。但要注意的是:张飞这个人是对象,而不是张飞,张飞只是他这个人的名字,是他的属性而已。而一个类中包含了属性和方法这两兄弟,他们分别用来描述对象的行为和性质(感觉应该是
- 新站开始被收录后,我们应该做什么?
IT独行者
PHPseo
新站开始被收录后,我们应该做什么?
百度终于开始收录自己的网站了,作为站长,你是不是觉得那一刻很有成就感呢,同时,你是不是又很茫然,不知道下一步该做什么了?至少我当初就是这样,在这里和大家一份分享一下新站收录后,我们要做哪些工作。
至于如何让百度快速收录自己的网站,可以参考我之前的帖子《新站让百
- oracle 连接碰到的问题
文强chu
oracle
Unable to find a java Virtual Machine--安装64位版Oracle11gR2后无法启动SQLDeveloper的解决方案
作者:草根IT网 来源:未知 人气:813标签:
导读:安装64位版Oracle11gR2后发现启动SQLDeveloper时弹出配置java.exe的路径,找到Oracle自带java.exe后产生的路径“C:\app\用户名\prod
- Swing中按ctrl键同时移动鼠标拖动组件(类中多借口共享同一数据)
小桔子
java继承swing接口监听
都知道java中类只能单继承,但可以实现多个接口,但我发现实现多个接口之后,多个接口却不能共享同一个数据,应用开发中想实现:当用户按着ctrl键时,可以用鼠标点击拖动组件,比如说文本框。
编写一个监听实现KeyListener,NouseListener,MouseMotionListener三个接口,重写方法。定义一个全局变量boolea
- linux常用的命令
aichenglong
linux常用命令
1 startx切换到图形化界面
2 man命令:查看帮助信息
man 需要查看的命令,man命令提供了大量的帮助信息,一般可以分成4个部分
name:对命令的简单说明
synopsis:命令的使用格式说明
description:命令的详细说明信息
options:命令的各项说明
3 date:显示时间
语法:date [OPTION]... [+FORMAT]
- eclipse内存优化
AILIKES
javaeclipsejvmjdk
一 基本说明 在JVM中,总体上分2块内存区,默认空余堆内存小于 40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。 1)堆内存(Heap memory):堆是运行时数据区域,所有类实例和数组的内存均从此处分配,是Java代码可及的内存,是留给开发人
- 关键字的使用探讨
百合不是茶
关键字
//关键字的使用探讨/*访问关键词private 只能在本类中访问public 只能在本工程中访问protected 只能在包中和子类中访问默认的 只能在包中访问*//*final 类 方法 变量 final 类 不能被继承 final 方法 不能被子类覆盖,但可以继承 final 变量 只能有一次赋值,赋值后不能改变 final 不能用来修饰构造方法*///this()
- JS中定义对象的几种方式
bijian1013
js
1. 基于已有对象扩充其对象和方法(只适合于临时的生成一个对象):
<html>
<head>
<title>基于已有对象扩充其对象和方法(只适合于临时的生成一个对象)</title>
</head>
<script>
var obj = new Object();
- 表驱动法实例
bijian1013
java表驱动法TDD
获得月的天数是典型的直接访问驱动表方式的实例,下面我们来展示一下:
MonthDaysTest.java
package com.study.test;
import org.junit.Assert;
import org.junit.Test;
import com.study.MonthDays;
public class MonthDaysTest {
@T
- LInux启停重启常用服务器的脚本
bit1129
linux
启动,停止和重启常用服务器的Bash脚本,对于每个服务器,需要根据实际的安装路径做相应的修改
#! /bin/bash
Servers=(Apache2, Nginx, Resin, Tomcat, Couchbase, SVN, ActiveMQ, Mongo);
Ops=(Start, Stop, Restart);
currentDir=$(pwd);
echo
- 【HBase六】REST操作HBase
bit1129
hbase
HBase提供了REST风格的服务方便查看HBase集群的信息,以及执行增删改查操作
1. 启动和停止HBase REST 服务 1.1 启动REST服务
前台启动(默认端口号8080)
[hadoop@hadoop bin]$ ./hbase rest start
后台启动
hbase-daemon.sh start rest
启动时指定
- 大话zabbix 3.0设计假设
ronin47
What’s new in Zabbix 2.0?
去年开始使用Zabbix的时候,是1.8.X的版本,今年Zabbix已经跨入了2.0的时代。看了2.0的release notes,和performance相关的有下面几个:
:: Performance improvements::Trigger related da
- http错误码大全
byalias
http协议javaweb
响应码由三位十进制数字组成,它们出现在由HTTP服务器发送的响应的第一行。
响应码分五种类型,由它们的第一位数字表示:
1)1xx:信息,请求收到,继续处理
2)2xx:成功,行为被成功地接受、理解和采纳
3)3xx:重定向,为了完成请求,必须进一步执行的动作
4)4xx:客户端错误,请求包含语法错误或者请求无法实现
5)5xx:服务器错误,服务器不能实现一种明显无效的请求
- J2EE设计模式-Intercepting Filter
bylijinnan
java设计模式数据结构
Intercepting Filter类似于职责链模式
有两种实现
其中一种是Filter之间没有联系,全部Filter都存放在FilterChain中,由FilterChain来有序或无序地把把所有Filter调用一遍。没有用到链表这种数据结构。示例如下:
package com.ljn.filter.custom;
import java.util.ArrayList;
- 修改jboss端口
chicony
jboss
修改jboss端口
%JBOSS_HOME%\server\{服务实例名}\conf\bindingservice.beans\META-INF\bindings-jboss-beans.xml
中找到
<!-- The ports-default bindings are obtained by taking the base bindin
- c++ 用类模版实现数组类
CrazyMizzz
C++
最近c++学到数组类,写了代码将他实现,基本具有vector类的功能
#include<iostream>
#include<string>
#include<cassert>
using namespace std;
template<class T>
class Array
{
public:
//构造函数
- hadoop dfs.datanode.du.reserved 预留空间配置方法
daizj
hadoop预留空间
对于datanode配置预留空间的方法 为:在hdfs-site.xml添加如下配置
<property>
<name>dfs.datanode.du.reserved</name>
<value>10737418240</value>
 
- mysql远程访问的设置
dcj3sjt126com
mysql防火墙
第一步: 激活网络设置 你需要编辑mysql配置文件my.cnf. 通常状况,my.cnf放置于在以下目录: /etc/mysql/my.cnf (Debian linux) /etc/my.cnf (Red Hat Linux/Fedora Linux) /var/db/mysql/my.cnf (FreeBSD) 然后用vi编辑my.cnf,修改内容从以下行: [mysqld] 你所需要: 1
- ios 使用特定的popToViewController返回到相应的Controller
dcj3sjt126com
controller
1、取navigationCtroller中的Controllers
NSArray * ctrlArray = self.navigationController.viewControllers;
2、取出后,执行,
[self.navigationController popToViewController:[ctrlArray objectAtIndex:0] animated:YES
- Linux正则表达式和通配符的区别
eksliang
正则表达式通配符和正则表达式的区别通配符
转载请出自出处:http://eksliang.iteye.com/blog/1976579
首先得明白二者是截然不同的
通配符只能用在shell命令中,用来处理字符串的的匹配。
判断一个命令是否为bash shell(linux 默认的shell)的内置命令
type -t commad
返回结果含义
file 表示为外部命令
alias 表示该
- Ubuntu Mysql Install and CONF
gengzg
Install
http://www.navicat.com.cn/download/navicat-for-mysql
Step1: 下载Navicat ,网址:http://www.navicat.com/en/download/download.html
Step2:进入下载目录,解压压缩包:tar -zxvf navicat11_mysql_en.tar.gz
- 批处理,删除文件bat
huqiji
windowsdos
@echo off
::演示:删除指定路径下指定天数之前(以文件名中包含的日期字符串为准)的文件。
::如果演示结果无误,把del前面的echo去掉,即可实现真正删除。
::本例假设文件名中包含的日期字符串(比如:bak-2009-12-25.log)
rem 指定待删除文件的存放路径
set SrcDir=C:/Test/BatHome
rem 指定天数
set DaysAgo=1
- 跨浏览器兼容的HTML5视频音频播放器
天梯梦
html5
HTML5的video和audio标签是用来在网页中加入视频和音频的标签,在支持html5的浏览器中不需要预先加载Adobe Flash浏览器插件就能轻松快速的播放视频和音频文件。而html5media.js可以在不支持html5的浏览器上使video和audio标签生效。 How to enable <video> and <audio> tags in
- Bundle自定义数据传递
hm4123660
androidSerializable自定义数据传递BundleParcelable
我们都知道Bundle可能过put****()方法添加各种基本类型的数据,Intent也可以通过putExtras(Bundle)将数据添加进去,然后通过startActivity()跳到下一下Activity的时候就把数据也传到下一个Activity了。如传递一个字符串到下一个Activity
把数据放到Intent
- C#:异步编程和线程的使用(.NET 4.5 )
powertoolsteam
.net线程C#异步编程
异步编程和线程处理是并发或并行编程非常重要的功能特征。为了实现异步编程,可使用线程也可以不用。将异步与线程同时讲,将有助于我们更好的理解它们的特征。
本文中涉及关键知识点
1. 异步编程
2. 线程的使用
3. 基于任务的异步模式
4. 并行编程
5. 总结
异步编程
什么是异步操作?异步操作是指某些操作能够独立运行,不依赖主流程或主其他处理流程。通常情况下,C#程序
- spark 查看 job history 日志
Stark_Summer
日志sparkhistoryjob
SPARK_HOME/conf 下:
spark-defaults.conf 增加如下内容
spark.eventLog.enabled true spark.eventLog.dir hdfs://master:8020/var/log/spark spark.eventLog.compress true
spark-env.sh 增加如下内容
export SP
- SSH框架搭建
wangxiukai2015eye
springHibernatestruts
MyEclipse搭建SSH框架 Struts Spring Hibernate
1、new一个web project。
2、右键项目,为项目添加Struts支持。
选择Struts2 Core Libraries -<MyEclipes-Library>
点击Finish。src目录下多了struts