
正文
Java开机自启动代码 java开机自启动代码怎么写
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
JAVA语句中怎么实现电脑开机时自动打开浏览器的网站?
我来梳理思路并给你讲下逻辑和流程
Java想要实现电脑开机自动打开浏览器网站需要借助的是开机自启的EXE,Java自身是不可能绕开系统这一关的,Windows下的话必须要借助注册表一类的,实现开机自启EXE,然后通过EXE执行打开浏览器访问指定地址的网站。
思路明确后,我们需要的是一个成品的EXE
代码上我就不过多解释了,直接用下面的代码
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler "+url);
(就是通过默认浏览器直接打开指定网页)
编写好代码后开始减小体积,也就是删除不使用的类以及不使用的字符集编码
确认瘦身后依旧运行正常后,开始进行压缩,建议是用pack200,效果贼好
然后把程序打成jar包,然后在上层目录编写启动批处理
编写完成后测试程序能否正常启动,如果不行就检查下是不是少类了
然后把批处理编成EXE,QBFC比较好用,如果做安装包的话记得挂G模式,InnoSetup这里也可以耍一下
这个时候我们就获取到了一个安装脚本,然后我们要做的就是修改安装脚本的代码
在脚本中加上下面的一段
[Registry]
Root: HKLM; Subkey: "SOFTWARE/Microsoft/Windows/CurrentVersion/Run"; ValueType: string; ValueName: "程序名"; ValueData: """{app}/main.exe"" ""{app}/jre/bin"""
直接使用这个时候的安装脚本和安装包就可以实现了
开机自动启动这个编写好的EXE,然后这个EXE就自动打开默认浏览器并访问指定网页了
相关问答
Q1: 我想让一个java程序(已打成jar包)开机自动启动,不启用命令行,该如何实现?
说下我之前的做法:
1.首先把jar解压到某个目录,全是class的那种。
2. 写一个bat ,cd 到jar目录, java 要运行的类,双击bat就能执行这段java程序。你懂的,不需要多解释。
3. 打开控制面板,任务计划,添加任务计划,选择写好的bat,运行周期为计算机启动时。
Q2: JAVA程序如何在win7系统中开机启动详解
以下是在win7系统中如何让我们自己写的java程序开机自启
1,首先我们需要把我们的java程序打成可以运行的jar,放到当前系统的 classpath 目录中。
2,新建 bat 文件。流程如下:
@echo off
java -jar 路径\xxxx.jar
@pause
然后点击文件-另存为(存放jar的目录下),文件名修改xxxx.bat(提议命名和jar名一致)。
3,windows+r输入regedit会出现注册表编辑器。
4,在注册表编辑器中找到Run目录,具体路径如下:
HKEY_LOCAL_MACHINE\SOFTWARE\Mecrosoft\Windows\CurrentVersion\Run
5,找到Run目录之后,在右边框中右击新建字符串值,新建唯一标示作为键名,然后右击新建名称-修改在数值数据中填写"路径\xxxx.bat"。
6,重启Java开机自启动代码你的机器,Java开机自启动代码你会看到你想要的效果。
Q3: 求用java写能在PC上开机自启动的程序。
具体代码是不会给了,因为是在项目中用Java开机自启动代码的,涉及到保密,而且也不会直接就能应用到Java开机自启动代码你的程序中。说一下思路吧,希望对你有帮助Java开机自启动代码:
1)可以把程序做成Windows的服务,然后可以开机的时候,做为Windows服务自动启动。这个可以使用wrapper第三方类库,有开源的版本。项目网站Java开机自启动代码:,可参考的文章Java开机自启动代码:,其实上网查找wrapper,有很多文章,配置的时候,主要是要注意路径的问题。
2)使用jregistrykey直接操作注册表,这也是一个第三方类库,提供了直接操作注册表的功能,上网查也有很多资料。
3)自己写DLL,通过JNI调用。其实上面两个类库,都是通过JNI方式提供的。
第一种,一般用作服务器程序,托盘方式或者无界面的,你的程序可能比较合适第二种方式。需要操作'HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run'
简单例子
//注册表位置
String regdir = "\\Software\\Microsoft\\Windows\\CurrentVersion\\Run";
//名字
String rname="myRun";
//执行程序,可以做成批处理,或者转成exe,总之能够运行你程序的路径
String rexe="c:\\run.bat";
RegistryKey r = new RegistryKey(RootKey.HKEY_LOCAL_MACHINE, regdir);
RegistryValue vlaue1=new RegistryValue(rname,ValueType.REG_SZ,rexe);
r.setValue(vlaue1);
Q4: 如何把自己写好的一个Java程序在windows上设置为开机启动运行
可以手动设置
开机启动项
Java开机自启动代码,把需要开机启动的程序勾选上就可以Java开机自启动代码了。第一步Java开机自启动代码:点击桌面左下角的“开始“;
第二步:在搜索框中输入”msconfig.exe“Java开机自启动代码,回车;
第三步:在打开的对话框中选择“启动”
;
第四步:把想开机启动的程序前面的勾勾选上Java开机自启动代码,之后点击“应用”即可。
Q5: java Web 启动时自动执行代码的几种方式
Web容器启动后执行代码的几种方式
其执行顺序为:
4===5===1===2===3
即指定init-method的Bean开始执行
接着实现spring的Bean后置处理器开始执行
然后是Servlet的监听器执行
再接下来是Servlet的过滤器执行
最后才是Servlet执行
1、实现Servlet监听器接口ServletContextListener
[java] view plain copy
public class InitListener implements ServletContextListener {
@Override
public void contextDestroyed(ServletContextEvent context) {
}
@Override
public void contextInitialized(ServletContextEvent context) {
// 上下文初始化执行
System.out.println("================[ServletContextListener]自动加载启动开始.");
SpringUtil.getInstance().setContext(
span style="white-space:pre" /spanWebApplicationContextUtils.getWebApplicationContext(arg0.getServletContext())
span style="white-space:pre" /span);
}
}
然后在web.xml文件配置该监听器
[html] view plain copy
listener
listener-classcom.test.init.InitListener/listener-class
/listener
2、实现Servlet的过滤器Filter
[html] view plain copy
public class InitFilter implements Filter {
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException,
ServletException {
}
@Override
public void init(FilterConfig config) throws ServletException {
System.out.println("================[Filter]自动加载启动开始.");
// 读取Spring容器中的Bean[此时Bean已加载,可以使用]
//写启动需要执行的代码
System.out.println("================[Filter]自动加载启动结束.");
}
}
然后在web.xml文件配置过滤器即可
[html] view plain copy
filter
filter-nameInitFilter/filter-name
filter-classcom.test.init.InitFilter/filter-class
/filter
filter-mapping
filter-nameInitFilter/filter-name
url-pattern//url-pattern
/filter-mapping
3、编写一个Servlet,在web.xml里面配置容器启动后执行即可
[html] view plain copy
public class InitServlet extends HttpServlet {
/**
*/
private static final long serialVersionUID = 1L;
@Override
public void init(ServletConfig config) {
try {
super.init();
} catch (ServletException e) {
e.printStackTrace();
}
System.out.println("================[Servlet]自动加载启动开始.");
// 读取Spring容器中的Bean[此时Bean已加载,可以使用]
//执行想要的代码
System.out.println("================[Servlet]自动加载启动结束.");
}
}
然后在web.xml文件配置该Servlet的启动方式为:容器启动后执行
servlet
servlet-nameInitServlet/servlet-name
servlet-classcom.test.init.InitServlet/servlet-class
init-param
param-nameusername/param-name
param-valuetest/param-value
/init-param
!-- 此处指定加载顺序为2,表明还有优先级更高的Servlet要先执行 --
load-on-startup2/load-on-startup
/servlet
servlet-mapping
servlet-nameInitServlet/servlet-name
url-pattern//url-pattern
/servlet-mapping
关于启动后执行,由load-on-startup指定:
(1)当值为0或者大于0时,表示容器在应用启动时就加载这个servlet。值越小,启动优先级越高;
(2)当是一个负数时或者没有指定时,表示该servlet被调用时才加载。
4、如果你使用Spring IOC作为Bean管理容器,那么可以指定init-method其中init-method表示bean加载成功后,立即执行某个方法。配置如下:start为要执行的方法名称
[html] view plain copy
!-- service --
bean id="shopService" class="com.test.teach.service.ShopService" span style="color:#33ffff;"init-method="start"/span
property name="shopDao" ref="shopDao" /
/bean
关于Java开机自启动代码和java开机自启动代码怎么写的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







