0 0

Jetty No LoginService 异常5

我启动jetty,报下面异常:

2011-08-24 10:34:22.799:INFO::jetty-7.2.2.v20101205
2011-08-24 10:34:28.665:WARN::FAILED org.eclipse.jetty.security.ConstraintSecurityHandler@17ec9f7: java.lang.IllegalStateException: No LoginService for org.eclipse.jetty.security.authentication.BasicAuthenticator@3b1f38 in org.eclipse.jetty.security.ConstraintSecurityHandler@17ec9f7
2011-08-24 10:34:28.665:WARN::FAILED org.eclipse.jetty.server.session.SessionHandler@fd918a: java.lang.IllegalStateException: No LoginService for org.eclipse.jetty.security.authentication.BasicAuthenticator@3b1f38 in org.eclipse.jetty.security.ConstraintSecurityHandler@17ec9f7
2011-08-24 10:34:28.665:WARN::Failed startup of context o.e.j.w.WebAppContext{/,file:/E:/workspace/sms/WebRoot/}
java.lang.IllegalStateException: No LoginService for org.eclipse.jetty.security.authentication.BasicAuthenticator@3b1f38 in org.eclipse.jetty.security.ConstraintSecurityHandler@17ec9f7
at org.eclipse.jetty.security.authentication.LoginAuthenticator.setConfiguration(LoginAuthenticator.java:45)
at org.eclipse.jetty.security.SecurityHandler.doStart(SecurityHandler.java:335)
at org.eclipse.jetty.security.ConstraintSecurityHandler.doStart(ConstraintSecurityHandler.java:228)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:93)
at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97)
at org.eclipse.jetty.server.session.SessionHandler.doStart(SessionHandler.java:114)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:93)
at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97)
at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:630)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:228)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1181)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:584)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:496)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:93)
at org.eclipse.jetty.server.Server.doStart(Server.java:243)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at util.OneWebAppUnassembled.main(OneWebAppUnassembled.java:21)


结果我将下面这两行代码加上在执行便没有问题了:
       HashLoginService dummyLoginService = new HashLoginService("TEST-SECURITY-REALM");  
      webAppCtx.getSecurityHandler().setLoginService(dummyLoginService);

有些web应用在我当前jetty下是可以正常运行的,但我部署另一个web应用就会出现上面的异常,我现在没搞清楚是什么原因导致的,还有这两句代码都做了什么事情实现了什么功能,妄解答!谢谢

问题补充:对于一个web容器,为什么会出现有些web应用可以正常运行,有些则不可以,对于jetty嵌入到应用中,需要实现哪些方面功能,才能得以支持所有的web应用!


问题补充:
Wind_ZhongGang 写道
<?xml version="1.0"  encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">

<Configure class="org.eclipse.jetty.webapp.WebAppContext">

  <Set name="contextPath">/template</Set>
  <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/Template.war</Set>

  <Set name="extractWAR">true</Set>
  <Set name="copyWebDir">false</Set>
  <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set>

  <Get name="securityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.security.HashLoginService">
    <Set name="name">Test Realm</Set>
    <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set>
      </New>
    </Set>
    <Set name="checkWelcomeFiles">true</Set>
  </Get>

</Configure>

不知道楼主是否对jetty安装文件下的context文件里的配置文件有所研究,如果想要在jetty中部署你的web应用程序,需要增加这样的配置文件,如果不想使用配置文件而想嵌入应用程序中,也应该实现配置文件中所需要的最少步骤。从配置文件中可以看出,在jetty中启动一个web应用程序是从WebAppContext类开始的,其中需要配置它的属性,如启动时的地址,启动时的war包的位置,还有就是配置securityHandler中的loginService。这些配置相应的也就能够体现在你的java程序中了。


谢谢兄台!我对jetty就研究了几天还不甚了解,一直在看些资料。如你所讲的话:Configure标签下这么的set子标签和属性,都要一一实现,应用程序中嵌入的jetty容器功能才全面的话这样的工作力度貌似还是很大的。
期待更多的答案!










问题补充:
myali88 写道
我刚才测试了一下,如果你在web.xml里增加了下面的配置,那么jetty启动的时候就会报No LoginService的错误:
<security-constraint>
	    <web-resource-collection>
	      <web-resource-name>A Protected Page</web-resource-name>
	      <url-pattern>/*</url-pattern>
	    </web-resource-collection>
	    <auth-constraint>
	      <role-name>admin</role-name>
	      <role-name>user</role-name>
	      <role-name>moderator</role-name>
	    </auth-constraint>
  </security-constraint>

  <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>MyRealm</realm-name>
  </login-config>

不知道你的web应用里面是否也有这些配置。



我的web.xml配置了 
<login-config>
<auth-method>BASIC</auth-method>
</login-config>

应该就是这个问题。
但是我想问问:嵌入到应用中的jetty容器,是不是在代码中需要对应的代码功能jetty.xml中的相应的配置内容的功能呢?那这么的属性应该如何完成呢?



问题补充:
Wind_ZhongGang 写道
并不像你想像中的那么大,主要使用的就是配置文件中提及的几个类,至于set get都是这些类中的方法而已,只要你设置了正确的属性,那么启动就没有问题。jetty本身就很小,想要使用配置文件或是在应用程序中编程实现都是很容易的事情。这还要取决于你的需求有多大。了解了配置文件中怎么启动的服务器,你就会相应了解在应用程序中应该怎么编程实现了。



非常感谢,好像兄台对Jetty比较了解。不知道有没有使用过JNDI和jetty绑定来开发,如果有的话,请将代码分享,小弟不才,妄指点一二!

问题补充:
myali88 写道
引用

但是我想问问:嵌入到应用中的jetty容器,是不是在代码中需要对应的代码功能jetty.xml中的相应的配置内容的功能呢?那这么的属性应该如何完成呢?

如果是嵌入式的可以直接在代码中增加:
HashUserRealm myrealm = new HashUserRealm("MyRealm",System.getProperty("jetty.home")+"/etc/realm.properties");
server.setUserRealms(new UserRealm[]{myrealm});

这个是jetty 6的写法,jetty 7的写法你上面已经有了。
如果是在jetty.xml里面配置的话,可以这样:
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
  <Set name="contextPath">/test</Set>
  <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/test</Set>
 
  <Get name="securityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.security.HashLoginService">
            <Set name="name">Test Realm</Set>
            <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set>
      </New>
    </Set>
  </Get>
 
</Configure>

参考:http://wiki.eclipse.org/Jetty/Tutorial/Realms



问题补充:我看web.xml中,
   <login-config>
        <auth-method> BASIC | DIGEST | CLIENT-CERT|FORM
        </auth-method>
    </login-config>
BASIC,DIGEST ...四种安全认证类型。如果web.xml可能配置的是其中一种,测试都通过了。谢谢了!您知道嵌入的jetty的web容器(就是之前我写的代码),在启动运行或者关闭,日志可以写到我指定log文件中呢?就有如tomcat中生成到log文件夹的log文件,jetty有什么样的机制去做这些事情呢?再次感谢!您帮了我不少忙!





问题补充:
myali88 写道
Server server = new Server(8080);
		
		HandlerCollection collection = new HandlerCollection();
		
		collection.addHandler(handler);
		
		RequestLogHandler logHandler = new RequestLogHandler();
		NCSARequestLog log = new NCSARequestLog();
		log.setFilename("target/request.log");
//		log.setAppend(true);
		logHandler.setRequestLog(log);
		
		collection.addHandler(logHandler);
		
		server.setHandler(collection);
		
		server.start();

楼上的做法是对的,不过这样只能记录请求的日志,至于jetty服务器启动本身的日志输出,这个还是通过外部日志系统完成的,就如果我们webapp里面要输出日志,需要配置log4j一样,内置的jetty也是一个app,做法类似。




可不可以通过对etc/jetty-logging.xml用java代码来实现,便可实现犹如tomcat一样在log目录下生产相应的log文件呢?也就是说这是属于jetty web容器本身的log日志信息。


Jetty-logging.xml文件的内容如下:

<?xml version="1.0"?> 
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd"> 
<!-- =============================================================== -->
<!-- Configure stderr and stdout to a Jetty rollover log file        -->
<!-- this configuration file should be used in combination with      -->
<!-- other configuration files.  e.g.                                -->
<!--    java -jar start.jar etc/jetty-logging.xml                    -->
<!-- ======================================== -->
<Configure id="Server" class="org.eclipse.jetty.server.Server"> 
    <New id="ServerLog" class="java.io.PrintStream"> 
      <Arg> 
         <New class="org.eclipse.jetty.util.RolloverFileOutputStream"> 
         <Arg><Property name="jetty.logs" default="/var/log/jetty"/>/yyyy_mm_dd.stderrout.log</Arg> 
          <Arg type="boolean">false</Arg> 
       <Arg type="int">30</Arg> 
          <Arg><Call class="java.util.TimeZone" name="getTimeZone"><Arg>GMT</Arg></Call></Arg> 
          <Get id="ServerLogName" name="datedFilename"/> 
        </New> 
     </Arg> 
    </New> 
    <Call class="org.eclipse.jetty.util.log.Log" name="info"><Arg>Redirecting stderr/stdout to <Ref id="ServerLogName"/></Arg></Call> 
   <Call class="java.lang.System" name="setErr"><Arg><Ref id="ServerLog"/></Arg></Call> 
   <Call class="java.lang.System" name="setOut"><Arg><Ref id="ServerLog"/></Arg></Call> 
</Configure>

因为嵌入一个jetty web容器没有了xml配置文件,但是我想实现一个jetty web容器本身的log信息的生产和维护,目前还是比较没有思绪,待解!








问题补充:
myali88 写道
<Configure id="Server" class="org.eclipse.jetty.server.Server"> 
    <New id="ServerLog" class="java.io.PrintStream"> 
      <Arg> 
         <New class="org.eclipse.jetty.util.RolloverFileOutputStream"> 
         <Arg><Property name="jetty.logs" default="/var/log/jetty"/>/yyyy_mm_dd.stderrout.log</Arg> 
          <Arg type="boolean">false</Arg> 
       <Arg type="int">30</Arg> 
          <Arg><Call class="java.util.TimeZone" name="getTimeZone"><Arg>GMT</Arg></Call></Arg> 
          <Get id="ServerLogName" name="datedFilename"/> 
        </New> 
     </Arg> 
    </New> 
    <Call class="org.eclipse.jetty.util.log.Log" name="info"><Arg>Redirecting stderr/stdout to <Ref id="ServerLogName"/></Arg></Call> 
   <Call class="java.lang.System" name="setErr"><Arg><Ref id="ServerLog"/></Arg></Call> 
   <Call class="java.lang.System" name="setOut"><Arg><Ref id="ServerLog"/></Arg></Call> 
</Configure>

你将这段配置,转成java代码的方式应该就可以了。比如上面的
<Configure id="Server" class="org.eclipse.jetty.server.Server"> 
相当于new Server()
<New id="ServerLog" class="java.io.PrintStream"> 
相当于new PrintStream,<Arg>部分就是构造函数的参数。
其他的都是类似,你可以这样把xml翻译成java代码。


谢谢myali88 和 Wind_ZhongGang你们两位的帮助,我正尝试着写这个!这样的交流让我学到很多东西。
2011年8月25日 13:55

10个答案 按时间排序 按投票排序

0 0

采纳的答案

<Configure id="Server" class="org.eclipse.jetty.server.Server"> 
    <New id="ServerLog" class="java.io.PrintStream"> 
      <Arg> 
         <New class="org.eclipse.jetty.util.RolloverFileOutputStream"> 
         <Arg><Property name="jetty.logs" default="/var/log/jetty"/>/yyyy_mm_dd.stderrout.log</Arg> 
          <Arg type="boolean">false</Arg> 
       <Arg type="int">30</Arg> 
          <Arg><Call class="java.util.TimeZone" name="getTimeZone"><Arg>GMT</Arg></Call></Arg> 
          <Get id="ServerLogName" name="datedFilename"/> 
        </New> 
     </Arg> 
    </New> 
    <Call class="org.eclipse.jetty.util.log.Log" name="info"><Arg>Redirecting stderr/stdout to <Ref id="ServerLogName"/></Arg></Call> 
   <Call class="java.lang.System" name="setErr"><Arg><Ref id="ServerLog"/></Arg></Call> 
   <Call class="java.lang.System" name="setOut"><Arg><Ref id="ServerLog"/></Arg></Call> 
</Configure>

你将这段配置,转成java代码的方式应该就可以了。比如上面的
<Configure id="Server" class="org.eclipse.jetty.server.Server"> 
相当于new Server()
<New id="ServerLog" class="java.io.PrintStream"> 
相当于new PrintStream,<Arg>部分就是构造函数的参数。
其他的都是类似,你可以这样把xml翻译成java代码。

2011年8月26日 15:21
0 0

正确,将配置文件中的信息转换成java代码。

2011年8月26日 15:15
0 0

Server server = new Server(8080);
		
		HandlerCollection collection = new HandlerCollection();
		
		collection.addHandler(handler);
		
		RequestLogHandler logHandler = new RequestLogHandler();
		NCSARequestLog log = new NCSARequestLog();
		log.setFilename("target/request.log");
//		log.setAppend(true);
		logHandler.setRequestLog(log);
		
		collection.addHandler(logHandler);
		
		server.setHandler(collection);
		
		server.start();

楼上的做法是对的,不过这样只能记录请求的日志,至于jetty服务器启动本身的日志输出,这个还是通过外部日志系统完成的,就如果我们webapp里面要输出日志,需要配置log4j一样,内置的jetty也是一个app,做法类似。

2011年8月25日 20:55
0 0

<Set name="handler">
    <New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler">
      <Set name="requestLog">
<New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog">
  <Set name="filename"><Property name="jetty.logs" default="./logs"/>/test-yyyy_mm_dd.request.log</Set>
  <Set name="filenameDateFormat">yyyy_MM_dd</Set>
  <Set name="append">true</Set>
  <Set name="LogTimeZone">GMT</Set>
</New>
      </Set>
    </New>
  </Set>

在你的配置文件中添加这样的配置,或都以应用程序的形式实现
NCSARequestLog log=new NCSARequestLog();
log.setFilename();
log.setFilenameDateFormat();
log.setAppend();
log.setLogTimeZone();
RequestLogHandler logHandler=new RequestLogHandler();
logHandler.setRequestLog(log);

2011年8月25日 18:05
0 0

引用

但是我想问问:嵌入到应用中的jetty容器,是不是在代码中需要对应的代码功能jetty.xml中的相应的配置内容的功能呢?那这么的属性应该如何完成呢?

如果是嵌入式的可以直接在代码中增加:
HashUserRealm myrealm = new HashUserRealm("MyRealm",System.getProperty("jetty.home")+"/etc/realm.properties");
server.setUserRealms(new UserRealm[]{myrealm});

这个是jetty 6的写法,jetty 7的写法你上面已经有了。
如果是在jetty.xml里面配置的话,可以这样:
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
  <Set name="contextPath">/test</Set>
  <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/test</Set>
 
  <Get name="securityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.security.HashLoginService">
            <Set name="name">Test Realm</Set>
            <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set>
      </New>
    </Set>
  </Get>
 
</Configure>

参考:http://wiki.eclipse.org/Jetty/Tutorial/Realms

2011年8月25日 16:48
0 0

不熟悉,不过给你推荐一篇文章 http://blog.csdn.net/lovingprince/article/details/6364767

2011年8月25日 16:18
0 0

看看jetty安装文件夹下的etc文件中的realm.properties文件。
jetty: MD5:164c88b302622e17050af52c89945d44,user
admin: CRYPT:adpexzg3FUZAk,server-administrator,content-administrator,admin
other: OBF:1xmk1w261u9r1w1c1xmq,user
plain: plain,user
user: password,user
digest: MD5:6e120743ad67abfbc385bc2bb754e297,user

2011年8月25日 16:09
0 0

并不像你想像中的那么大,主要使用的就是配置文件中提及的几个类,至于set get都是这些类中的方法而已,只要你设置了正确的属性,那么启动就没有问题。jetty本身就很小,想要使用配置文件或是在应用程序中编程实现都是很容易的事情。这还要取决于你的需求有多大。了解了配置文件中怎么启动的服务器,你就会相应了解在应用程序中应该怎么编程实现了。

2011年8月25日 15:55
0 0

我刚才测试了一下,如果你在web.xml里增加了下面的配置,那么jetty启动的时候就会报No LoginService的错误:

<security-constraint>
	    <web-resource-collection>
	      <web-resource-name>A Protected Page</web-resource-name>
	      <url-pattern>/*</url-pattern>
	    </web-resource-collection>
	    <auth-constraint>
	      <role-name>admin</role-name>
	      <role-name>user</role-name>
	      <role-name>moderator</role-name>
	    </auth-constraint>
  </security-constraint>

  <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>MyRealm</realm-name>
  </login-config>

不知道你的web应用里面是否也有这些配置。

2011年8月25日 15:31
0 0

<?xml version="1.0"  encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">

<Configure class="org.eclipse.jetty.webapp.WebAppContext">

  <Set name="contextPath">/template</Set>
  <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/Template.war</Set>

  <Set name="extractWAR">true</Set>
  <Set name="copyWebDir">false</Set>
  <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set>

  <Get name="securityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.security.HashLoginService">
    <Set name="name">Test Realm</Set>
    <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set>
      </New>
    </Set>
    <Set name="checkWelcomeFiles">true</Set>
  </Get>

</Configure>

不知道楼主是否对jetty安装文件下的context文件里的配置文件有所研究,如果想要在jetty中部署你的web应用程序,需要增加这样的配置文件,如果不想使用配置文件而想嵌入应用程序中,也应该实现配置文件中所需要的最少步骤。从配置文件中可以看出,在jetty中启动一个web应用程序是从WebAppContext类开始的,其中需要配置它的属性,如启动时的地址,启动时的war包的位置,还有就是配置securityHandler中的loginService。这些配置相应的也就能够体现在你的java程序中了。

2011年8月25日 15:09

相关推荐

    网易招聘的scrapy spider

    网易招聘的scrapy spider

    ACM计算两整数相加的多语言代码示例与注解

    内容概要:提供了基于不同编程语言的一个简单的 ACN(以计算两个整数的和为例)源代码,涉及三种语言:C++, Java 和 Python。每个示例都包含了详细的步骤来演示用户输入是如何接收和进行运算以及结果显示出来的。 适用人群:编程初学者、有一定编程经验希望熟悉多种语言实现方式的技术爱好者。 使用场景及目标:帮助理解不同编程语言基本操作方法,包括输入获取、数据处理、输出结果展示及其语法差异等知识点的运用。 其他补充:由于例子较为简易,便于作为教学案例或是新手练习之用,亦可用于快速对比几种主流编程语言的基础应用形式和技术特点。

    java-ssm+vue健身房管理系统实现源码(项目源码-说明文档)

    会员管理页面提供给管理员的功能有:对会员信息的一个管理,不同会员看到的页面是不一样的,会员信息也是不同 健身房信息管理页面提供给管理员的功能有:查看已发布的健身房区域数据,修改健身房区域信息或更换健身房区域内容,健身房区域信息作废,即可删除。 项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7+ 后端技术:ssm 前端技术:Vue 关键技术:springboot、SSM、vue、MYSQL、MAVEN 数据库工具:Navicat、SQLyog

    51Proteus仿真LCD1602+定时计数器实现可调电子时钟的编程

    51Proteus仿真LCD1602+定时计数器实现可调电子时钟的编程

    【高创新】基于侏儒猫鼬优化算法DMO-Transformer-BiLSTM实现故障识别Matlab实现.rar

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

    Linux安装python3_脚本_linux_install_py3.zip

    Linux安装python3_脚本_linux_install_py3

    BWO-Catboost白鲸算法优化Catboost分类预测,优化前后对比(Matlab完整源码和数据)

    1.Matlab实现BWO-Catboost白鲸算法优化Catboost分类预测,优化前后对比,Matlab调用Python的Catboost库(完整源码和数据)。 2.输出对比图、混淆矩阵图、预测准确率,运行环境Matlab2023及以上,配置Python的Catboost库。兼容测试链接:https://ww2.mathworks.cn/support/requirements/python-compatibility.html 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 5.作者介绍:机器学习之心,博客专家认证,机器学习领域创作者,2023博客之星TOP50,主做机器学习和深度学习时序、回归、分类、聚类和降维等程序设计和案例分析,文章底部有博主联系方式。从事Matlab、Python算法仿真工作8年,更多仿真源码、数据集定制私信

    4-3_Business_GREEN_2017_02-CL-20180524MTAX.potx

    微软演示材料

    【高创新】基于龙格库塔优化算法RUN-Transformer-BiLSTM实现故障识别Matlab实现.rar

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

    【高创新】基于人工蜂鸟优化算法AHA-Transformer-BiLSTM实现故障识别Matlab实现.rar

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

    java基于ssm+vue小说阅读平台系统源码

    1、开发环境:ssm框架;内含Mysql数据库;VUE技术 2、需要项目部署的可以私信 3、项目代码都经过严格调试,代码没有任何bug! 4、该资源包括项目的全部源码,下载可以直接使用! 5、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 6、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。

    人工智能产品经理最佳实践__第三部分系统架构篇_aipm-1.zip

    人工智能产品经理最佳实践__第三部分系统架构篇_aipm-1

    【高创新】基于能量谷优化算法EVO-Transformer-BiLSTM实现故障识别Matlab实现.rar

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

    Mentor Graphics EDA介绍(九)--Zuken Interconnect Solutions.docx

    Mentor Graphics EDA介绍(九)--Zuken Interconnect Solutions

    VB+ACCESS班级管理系统(源代码+可执行程序+论文+开题报告+外文翻译+答辩ppt).zip

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READmE.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。

    4-3_Business_GREEN_2017_03.potx

    微软演示材料

    VB+sql学生管理系统(源代码+系统).zip

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。

    java-ssm+vue大学生心理健康系统实现源码(项目源码-说明文档)

    在技术实现部分采用了Java作为开发后台的编程语言,客户端使用html技术,数据库选择MySQL。最后进行了代码的编写,并说明了实现流程。最终,通过软件测试来验证大学生心理健康平台的功能要求。 项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7+ 后端技术:ssm 前端技术:Vue 关键技术:springboot、SSM、vue、MYSQL、MAVEN 数据库工具:Navicat、SQLyog

    windowTFTP工具

    windowTFTP工具

    一键安装+开防火墙+改连接数+自启动守护_矿池代理,支持TCP和SSL协议,支持自

    一键安装+开防火墙+改连接数+自启动守护_矿池代理,支持TCP和SSL协议,支持自定义抽水,高性能高_MinerProxy303

Global site tag (gtag.js) - Google Analytics